From af1901dfff962995d83fafab29a0250f1d030c53 Mon Sep 17 00:00:00 2001 From: herrkaefer Date: Thu, 21 Jul 2016 16:19:47 +0800 Subject: [PATCH 1/9] update to Swift 3 syntax --- MotionKit.xcodeproj/project.pbxproj | 19 +++- .../UserInterfaceState.xcuserstate | Bin 0 -> 12254 bytes .../xcschemes/MotionKit.xcscheme | 99 ++++++++++++++++++ .../xcschemes/xcschememanagement.plist | 27 +++++ MotionKit/Info.plist | 2 +- MotionKit/MotionKit.swift | 98 ++++++++--------- MotionKitTests/Info.plist | 2 +- 7 files changed, 195 insertions(+), 52 deletions(-) create mode 100644 MotionKit.xcodeproj/project.xcworkspace/xcuserdata/herrk.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/MotionKit.xcscheme create mode 100644 MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/xcschememanagement.plist diff --git a/MotionKit.xcodeproj/project.pbxproj b/MotionKit.xcodeproj/project.pbxproj index f9980c2..a6736bb 100644 --- a/MotionKit.xcodeproj/project.pbxproj +++ b/MotionKit.xcodeproj/project.pbxproj @@ -161,14 +161,16 @@ 75FDED4C1A9541F800283A97 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0610; + LastUpgradeCheck = 0800; ORGANIZATIONNAME = MotionKit; TargetAttributes = { 75FDED541A9541F800283A97 = { CreatedOnToolsVersion = 6.1.1; + LastSwiftMigration = 0800; }; 75FDED5F1A9541F800283A97 = { CreatedOnToolsVersion = 6.1.1; + LastSwiftMigration = 0800; }; }; }; @@ -256,8 +258,10 @@ COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", @@ -304,6 +308,7 @@ ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; @@ -330,8 +335,10 @@ INFOPLIST_FILE = MotionKit/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.motionkit.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; + SWIFT_VERSION = 3.0; }; name = Debug; }; @@ -345,8 +352,11 @@ INFOPLIST_FILE = MotionKit/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.motionkit.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 3.0; }; name = Release; }; @@ -363,7 +373,9 @@ ); INFOPLIST_FILE = MotionKitTests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.motionkit.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 3.0; }; name = Debug; }; @@ -376,7 +388,10 @@ ); INFOPLIST_FILE = MotionKitTests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "com.motionkit.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 3.0; }; name = Release; }; @@ -399,6 +414,7 @@ 75FDED6D1A9541F800283A97 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; 75FDED6E1A9541F800283A97 /* Build configuration list for PBXNativeTarget "MotionKitTests" */ = { isa = XCConfigurationList; @@ -407,6 +423,7 @@ 75FDED701A9541F800283A97 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/MotionKit.xcodeproj/project.xcworkspace/xcuserdata/herrk.xcuserdatad/UserInterfaceState.xcuserstate b/MotionKit.xcodeproj/project.xcworkspace/xcuserdata/herrk.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..62482cc195984e238f6c5360e516db76043abc55 GIT binary patch literal 12254 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 literal 0 HcmV?d00001 diff --git a/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/MotionKit.xcscheme b/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/MotionKit.xcscheme new file mode 100644 index 0000000..36348d9 --- /dev/null +++ b/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/MotionKit.xcscheme @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/xcschememanagement.plist b/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..d78602b --- /dev/null +++ b/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,27 @@ + + + + + SchemeUserState + + MotionKit.xcscheme + + orderHint + 0 + + + SuppressBuildableAutocreation + + 75FDED541A9541F800283A97 + + primary + + + 75FDED5F1A9541F800283A97 + + primary + + + + + diff --git a/MotionKit/Info.plist b/MotionKit/Info.plist index c328732..d3de8ee 100644 --- a/MotionKit/Info.plist +++ b/MotionKit/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier - com.motionkit.$(PRODUCT_NAME:rfc1034identifier) + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/MotionKit/MotionKit.swift b/MotionKit/MotionKit.swift index eb0860c..a992e29 100644 --- a/MotionKit/MotionKit.swift +++ b/MotionKit/MotionKit.swift @@ -15,16 +15,16 @@ import CoreMotion //_______________________________________________________________________________________________________________ // this helps retrieve values from the sensors. @objc protocol MotionKitDelegate { - optional func retrieveAccelerometerValues (x: Double, y:Double, z:Double, absoluteValue: Double) - optional func retrieveGyroscopeValues (x: Double, y:Double, z:Double, absoluteValue: Double) - optional func retrieveDeviceMotionObject (deviceMotion: CMDeviceMotion) - optional func retrieveMagnetometerValues (x: Double, y:Double, z:Double, absoluteValue: Double) - - optional func getAccelerationValFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getGravityAccelerationValFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getRotationRateFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getMagneticFieldFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getAttitudeFromDeviceMotion (attitude: CMAttitude) + @objc optional func retrieveAccelerometerValues (_ x: Double, y:Double, z:Double, absoluteValue: Double) + @objc optional func retrieveGyroscopeValues (_ x: Double, y:Double, z:Double, absoluteValue: Double) + @objc optional func retrieveDeviceMotionObject (_ deviceMotion: CMDeviceMotion) + @objc optional func retrieveMagnetometerValues (_ x: Double, y:Double, z:Double, absoluteValue: Double) + + @objc optional func getAccelerationValFromDeviceMotion (_ x: Double, y:Double, z:Double) + @objc optional func getGravityAccelerationValFromDeviceMotion (_ x: Double, y:Double, z:Double) + @objc optional func getRotationRateFromDeviceMotion (_ x: Double, y:Double, z:Double) + @objc optional func getMagneticFieldFromDeviceMotion (_ x: Double, y:Double, z:Double) + @objc optional func getAttitudeFromDeviceMotion (_ attitude: CMAttitude) } @@ -52,13 +52,13 @@ import CoreMotion * given NSOperationQueue will be cancelled. You can access the retrieved values either by a * Trailing Closure or through a Delgate. */ - public func getAccelerometerValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y: Double, z: Double) -> ())? ){ + public func getAccelerometerValues (_ interval: TimeInterval = 0.1, values: ((x: Double, y: Double, z: Double) -> ())? ){ var valX: Double! var valY: Double! var valZ: Double! - if manager.accelerometerAvailable { + if manager.isAccelerometerAvailable { manager.accelerometerUpdateInterval = interval - manager.startAccelerometerUpdatesToQueue(NSOperationQueue(), withHandler: { + manager.startAccelerometerUpdates(to: OperationQueue(), withHandler: { (data, error) in if let isError = error { @@ -71,7 +71,7 @@ import CoreMotion if values != nil{ values!(x: valX,y: valY,z: valZ) } - let absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) + let absoluteVal = sqrt(Double(valX * valX + valY * valY) + valZ * valZ) self.delegate?.retrieveAccelerometerValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) }) } else { @@ -88,14 +88,14 @@ import CoreMotion * given NSOperationQueue will be cancelled. You can access the retrieved values either by a * Trailing Closure or through a Delegate. */ - public func getGyroValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y: Double, z:Double) -> ())? ) { + public func getGyroValues (_ interval: TimeInterval = 0.1, values: ((x: Double, y: Double, z:Double) -> ())? ) { var valX: Double! var valY: Double! var valZ: Double! - if manager.gyroAvailable{ + if manager.isGyroAvailable{ manager.gyroUpdateInterval = interval - manager.startGyroUpdatesToQueue(NSOperationQueue(), withHandler: { + manager.startGyroUpdates(to: OperationQueue(), withHandler: { (data, error) in if let isError = error{ @@ -108,7 +108,7 @@ import CoreMotion if values != nil{ values!(x: valX, y: valY, z: valZ) } - let absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) + let absoluteVal = sqrt(Double(valX * valX + valY * valY) + valZ * valZ) self.delegate?.retrieveGyroscopeValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) }) @@ -124,15 +124,15 @@ import CoreMotion * Starts magnetometer updates, providing data to the given handler through the given queue. * You can access the retrieved values either by a Trailing Closure or through a Delegate. */ - @available(iOS, introduced=5.0) - public func getMagnetometerValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y:Double, z:Double) -> ())? ){ + @available(iOS, introduced: 5.0) + public func getMagnetometerValues (_ interval: TimeInterval = 0.1, values: ((x: Double, y:Double, z:Double) -> ())? ){ var valX: Double! var valY: Double! var valZ: Double! - if manager.magnetometerAvailable { + if manager.isMagnetometerAvailable { manager.magnetometerUpdateInterval = interval - manager.startMagnetometerUpdatesToQueue(NSOperationQueue()){ + manager.startMagnetometerUpdates(to: OperationQueue()){ (data, error) in if let isError = error{ @@ -145,7 +145,7 @@ import CoreMotion if values != nil{ values!(x: valX, y: valY, z: valZ) } - let absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) + let absoluteVal = sqrt(Double(valX * valX + valY * valY) + valZ * valZ) self.delegate?.retrieveMagnetometerValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) } @@ -165,11 +165,11 @@ import CoreMotion * attitudeReferenceFrame to determine this. You can access the retrieved values either by a * Trailing Closure or through a Delegate. */ - public func getDeviceMotionObject (interval: NSTimeInterval = 0.1, values: ((deviceMotion: CMDeviceMotion) -> ())? ) { + public func getDeviceMotionObject (_ interval: TimeInterval = 0.1, values: ((deviceMotion: CMDeviceMotion) -> ())? ) { - if manager.deviceMotionAvailable{ + if manager.isDeviceMotionAvailable{ manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ + manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in if let isError = error{ @@ -191,14 +191,14 @@ import CoreMotion * getAccelerationFromDeviceMotion:interval:values: * You can retrieve the processed user accelaration data from the device motion from this method. */ - public func getAccelerationFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { + public func getAccelerationFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { var valX: Double! var valY: Double! var valZ: Double! - if manager.deviceMotionAvailable{ + if manager.isDeviceMotionAvailable{ manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ + manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in if let isError = error{ @@ -225,14 +225,14 @@ import CoreMotion * You can retrieve the processed gravitational accelaration data from the device motion from this * method. */ - public func getGravityAccelerationFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { + public func getGravityAccelerationFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { var valX: Double! var valY: Double! var valZ: Double! - if manager.deviceMotionAvailable{ + if manager.isDeviceMotionAvailable{ manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ + manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in if let isError = error{ @@ -246,7 +246,7 @@ import CoreMotion values!(x: valX, y: valY, z: valZ) } - let absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) +// let absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) self.delegate?.getGravityAccelerationValFromDeviceMotion!(valX, y: valY, z: valZ) } @@ -261,11 +261,11 @@ import CoreMotion * You can retrieve the processed attitude data from the device motion from this * method. */ - public func getAttitudeFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((attitude: CMAttitude) -> ())? ) { + public func getAttitudeFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((attitude: CMAttitude) -> ())? ) { - if manager.deviceMotionAvailable{ + if manager.isDeviceMotionAvailable{ manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ + manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in if let isError = error{ @@ -288,14 +288,14 @@ import CoreMotion * You can retrieve the processed rotation data from the device motion from this * method. */ - public func getRotationRateFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { + public func getRotationRateFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { var valX: Double! var valY: Double! var valZ: Double! - if manager.deviceMotionAvailable{ + if manager.isDeviceMotionAvailable{ manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ + manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in if let isError = error{ @@ -309,7 +309,7 @@ import CoreMotion values!(x: valX, y: valY, z: valZ) } - let absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) +// let absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) self.delegate?.getRotationRateFromDeviceMotion!(valX, y: valY, z: valZ) } @@ -324,15 +324,15 @@ import CoreMotion * You can retrieve the processed magnetic field data from the device motion from this * method. */ - public func getMagneticFieldFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double, accuracy: Int32) -> ())? ) { + public func getMagneticFieldFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((x:Double, y:Double, z:Double, accuracy: Int32) -> ())? ) { var valX: Double! var valY: Double! var valZ: Double! var valAccuracy: Int32! - if manager.deviceMotionAvailable{ + if manager.isDeviceMotionAvailable{ manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ + manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in if let isError = error{ @@ -365,21 +365,21 @@ import CoreMotion /* MARK :- INSTANTANIOUS METHODS START HERE */ - public func getAccelerationAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ + public func getAccelerationAtCurrentInstant (_ values: (x:Double, y:Double, z:Double) -> ()){ self.getAccelerationFromDeviceMotion(0.5) { (x, y, z) -> () in values(x: x,y: y,z: z) self.stopDeviceMotionUpdates() } } - public func getGravitationalAccelerationAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ + public func getGravitationalAccelerationAtCurrentInstant (_ values: (x:Double, y:Double, z:Double) -> ()){ self.getGravityAccelerationFromDeviceMotion(0.5) { (x, y, z) -> () in values(x: x,y: y,z: z) self.stopDeviceMotionUpdates() } } - public func getAttitudeAtCurrentInstant (values: (attitude: CMAttitude) -> ()){ + public func getAttitudeAtCurrentInstant (_ values: (attitude: CMAttitude) -> ()){ self.getAttitudeFromDeviceMotion(0.5) { (attitude) -> () in values(attitude: attitude) self.stopDeviceMotionUpdates() @@ -387,14 +387,14 @@ import CoreMotion } - public func getMageticFieldAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ + public func getMageticFieldAtCurrentInstant (_ values: (x:Double, y:Double, z:Double) -> ()){ self.getMagneticFieldFromDeviceMotion(0.5) { (x, y, z, accuracy) -> () in values(x: x,y: y,z: z) self.stopDeviceMotionUpdates() } } - public func getGyroValuesAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ + public func getGyroValuesAtCurrentInstant (_ values: (x:Double, y:Double, z:Double) -> ()){ self.getRotationRateFromDeviceMotion(0.5) { (x, y, z) -> () in values(x: x,y: y,z: z) self.stopDeviceMotionUpdates() @@ -444,7 +444,7 @@ import CoreMotion * Discussion: * Stops magnetometer updates. */ - @available(iOS, introduced=5.0) + @available(iOS, introduced: 5.0) public func stopmagnetometerUpdates() { self.manager.stopMagnetometerUpdates() NSLog("Magnetometer Updates Status - Stopped") diff --git a/MotionKitTests/Info.plist b/MotionKitTests/Info.plist index 0e76198..ba72822 100644 --- a/MotionKitTests/Info.plist +++ b/MotionKitTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier - com.motionkit.$(PRODUCT_NAME:rfc1034identifier) + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName From d0ad7bc9a6181eac3d737a17d2d7675e53a23398 Mon Sep 17 00:00:00 2001 From: herrkaefer Date: Wed, 21 Sep 2016 10:15:11 +0800 Subject: [PATCH 2/9] update to Swift 3 (Xcode 8) --- .DS_Store | Bin 0 -> 6148 bytes .../UserInterfaceState.xcuserstate | Bin 12254 -> 12586 bytes MotionKit/MotionKit.swift | 285 +++++++++--------- MotionKitTests/MotionKitTests.swift | 2 +- 4 files changed, 144 insertions(+), 143 deletions(-) create mode 100644 .DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..32f157c70a98c5e615d90551d961ef5bd59daa4d GIT binary patch literal 6148 zcmeHK!AiqG5Pe%Kw0J3a@wi_g^x!>|coI+f0U?p9G}%y6@fh%*{0Oi9kZ*RD(h`N@ zLB!6$%-hV)%QkOew*$Z}Hq{)M0hrJQM^lC`OyNWBYT(b_<51H-5&aZVoE^5IPFa=D3qfkIjcG~1j(V{6}3YY?01>}72bipiP zuNaRGhS&lS$4p1#Sb7QJ_=H))UXe32r&OX+U1~9$(wXU_VC<#3szMN_~O*jM00A7^s^Uw_~K@00Aw6fgz;l>%;@7x{vpl34K7 osp}QD6b|B5%v!mMFX+*j_c9=63429mX!b`S%3#41_*Dfy0ZMg6CIA2c literal 0 HcmV?d00001 diff --git a/MotionKit.xcodeproj/project.xcworkspace/xcuserdata/herrk.xcuserdatad/UserInterfaceState.xcuserstate b/MotionKit.xcodeproj/project.xcworkspace/xcuserdata/herrk.xcuserdatad/UserInterfaceState.xcuserstate index 62482cc195984e238f6c5360e516db76043abc55..77ff50750df69109afff6a9699f3fb794de4b47a 100644 GIT binary patch delta 7699 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 XBBm--Bq9|0XIh5-0T72CV%Gd0-x~(J delta 7476 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 diff --git a/MotionKit/MotionKit.swift b/MotionKit/MotionKit.swift index a992e29..3879d15 100644 --- a/MotionKit/MotionKit.swift +++ b/MotionKit/MotionKit.swift @@ -3,11 +3,13 @@ // MotionKit // // Created by Haroon on 14/02/2015. -// Launched under the Creative Commons License. You're free to use MotionKit. +// Launched under the Creative Commons License. You're free to use MotionKit. // // The original Github repository is https://github.com/MHaroonBaig/MotionKit // The official blog post and documentation is https://medium.com/@PyBaig/motionkit-the-missing-ios-coremotion-wrapper-written-in-swift-99fcb83355d0 // +// Modified by Yang Liu on 21/09/2016 +// import Foundation import CoreMotion @@ -19,7 +21,7 @@ import CoreMotion @objc optional func retrieveGyroscopeValues (_ x: Double, y:Double, z:Double, absoluteValue: Double) @objc optional func retrieveDeviceMotionObject (_ deviceMotion: CMDeviceMotion) @objc optional func retrieveMagnetometerValues (_ x: Double, y:Double, z:Double, absoluteValue: Double) - + @objc optional func getAccelerationValFromDeviceMotion (_ x: Double, y:Double, z:Double) @objc optional func getGravityAccelerationValFromDeviceMotion (_ x: Double, y:Double, z:Double) @objc optional func getRotationRateFromDeviceMotion (_ x: Double, y:Double, z:Double) @@ -29,20 +31,20 @@ import CoreMotion @objc(MotionKit) public class MotionKit :NSObject{ - + let manager = CMMotionManager() var delegate: MotionKitDelegate? - + /* - * init:void: + * init:void: * * Discussion: * Initialises the MotionKit class and throw a Log with a timestamp. */ public override init(){ - NSLog("MotionKit has been initialised successfully") + print("MotionKit has been initialised successfully") } - + /* * getAccelerometerValues:interval:values: * @@ -52,7 +54,7 @@ import CoreMotion * given NSOperationQueue will be cancelled. You can access the retrieved values either by a * Trailing Closure or through a Delgate. */ - public func getAccelerometerValues (_ interval: TimeInterval = 0.1, values: ((x: Double, y: Double, z: Double) -> ())? ){ + public func getAccelerometerValues (_ interval: TimeInterval = 0.1, values: ((_ x: Double, _ y: Double, _ z: Double) -> ())? ){ var valX: Double! var valY: Double! var valZ: Double! @@ -60,25 +62,25 @@ import CoreMotion manager.accelerometerUpdateInterval = interval manager.startAccelerometerUpdates(to: OperationQueue(), withHandler: { (data, error) in - - if let isError = error { - NSLog("Error: %@", isError) + + if error != nil { + print("Error: %@", error) } valX = data!.acceleration.x valY = data!.acceleration.y valZ = data!.acceleration.z - - if values != nil{ - values!(x: valX,y: valY,z: valZ) + + if values != nil { + values!(valX, valY, valZ) } let absoluteVal = sqrt(Double(valX * valX + valY * valY) + valZ * valZ) self.delegate?.retrieveAccelerometerValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) }) } else { - NSLog("The Accelerometer is not available") + print("The Accelerometer is not available") } } - + /* * getGyroValues:interval:values: * @@ -88,8 +90,8 @@ import CoreMotion * given NSOperationQueue will be cancelled. You can access the retrieved values either by a * Trailing Closure or through a Delegate. */ - public func getGyroValues (_ interval: TimeInterval = 0.1, values: ((x: Double, y: Double, z:Double) -> ())? ) { - + public func getGyroValues (_ interval: TimeInterval = 0.1, values: ((_ x: Double, _ y: Double, _ z:Double) -> ())? ) { + var valX: Double! var valY: Double! var valZ: Double! @@ -97,26 +99,26 @@ import CoreMotion manager.gyroUpdateInterval = interval manager.startGyroUpdates(to: OperationQueue(), withHandler: { (data, error) in - - if let isError = error{ - NSLog("Error: %@", isError) + + if error != nil { + print("Error: %@", error) } valX = data!.rotationRate.x valY = data!.rotationRate.y valZ = data!.rotationRate.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) + + if values != nil { + values!(valX, valY, valZ) } let absoluteVal = sqrt(Double(valX * valX + valY * valY) + valZ * valZ) self.delegate?.retrieveGyroscopeValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) }) - + } else { - NSLog("The Gyroscope is not available") + print("The Gyroscope is not available") } } - + /* * getMagnetometerValues:interval:values: * @@ -125,8 +127,8 @@ import CoreMotion * You can access the retrieved values either by a Trailing Closure or through a Delegate. */ @available(iOS, introduced: 5.0) - public func getMagnetometerValues (_ interval: TimeInterval = 0.1, values: ((x: Double, y:Double, z:Double) -> ())? ){ - + public func getMagnetometerValues (_ interval: TimeInterval = 0.1, values: ((_ x: Double, _ y:Double, _ z:Double) -> ())? ){ + var valX: Double! var valY: Double! var valZ: Double! @@ -134,28 +136,28 @@ import CoreMotion manager.magnetometerUpdateInterval = interval manager.startMagnetometerUpdates(to: OperationQueue()){ (data, error) in - - if let isError = error{ - NSLog("Error: %@", isError) + + if error != nil { + print("Error: %@", error) } valX = data!.magneticField.x valY = data!.magneticField.y valZ = data!.magneticField.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) + + if values != nil { + values!(valX, valY, valZ) } let absoluteVal = sqrt(Double(valX * valX + valY * valY) + valZ * valZ) self.delegate?.retrieveMagnetometerValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) } - + } else { - NSLog("Magnetometer is not available") + print("Magnetometer is not available") } } - + /* MARK :- DEVICE MOTION APPROACH STARTS HERE */ - + /* * getDeviceMotionValues:interval:values: * @@ -165,34 +167,34 @@ import CoreMotion * attitudeReferenceFrame to determine this. You can access the retrieved values either by a * Trailing Closure or through a Delegate. */ - public func getDeviceMotionObject (_ interval: TimeInterval = 0.1, values: ((deviceMotion: CMDeviceMotion) -> ())? ) { - + public func getDeviceMotionObject (_ interval: TimeInterval = 0.1, values: ((_ deviceMotion: CMDeviceMotion) -> ())? ) { + if manager.isDeviceMotionAvailable{ manager.deviceMotionUpdateInterval = interval manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in - - if let isError = error{ - NSLog("Error: %@", isError) + + if error != nil { + print("Error: %@", error) } - if values != nil{ - values!(deviceMotion: data!) + if values != nil { + values!(data!) } self.delegate?.retrieveDeviceMotionObject!(data!) } - + } else { - NSLog("Device Motion is not available") + print("Device Motion is not available") } } - - + + /* * getAccelerationFromDeviceMotion:interval:values: * You can retrieve the processed user accelaration data from the device motion from this method. */ - public func getAccelerationFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - + public func getAccelerationFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double) -> ())? ) { + var valX: Double! var valY: Double! var valZ: Double! @@ -200,33 +202,33 @@ import CoreMotion manager.deviceMotionUpdateInterval = interval manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in - - if let isError = error{ - NSLog("Error: %@", isError) + + if error != nil { + print("Error: %@", error) } valX = data!.userAcceleration.x valY = data!.userAcceleration.y valZ = data!.userAcceleration.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) + + if values != nil { + values!(valX, valY, valZ) } - + self.delegate?.getAccelerationValFromDeviceMotion!(valX, y: valY, z: valZ) } - + } else { - NSLog("Device Motion is unavailable") + print("Device Motion is unavailable") } } - + /* * getGravityAccelerationFromDeviceMotion:interval:values: * You can retrieve the processed gravitational accelaration data from the device motion from this * method. */ - public func getGravityAccelerationFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - + public func getGravityAccelerationFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double) -> ())? ) { + var valX: Double! var valY: Double! var valZ: Double! @@ -234,62 +236,62 @@ import CoreMotion manager.deviceMotionUpdateInterval = interval manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in - - if let isError = error{ - NSLog("Error: %@", isError) + + if error != nil { + print("Error: %@", error) } valX = data!.gravity.x valY = data!.gravity.y valZ = data!.gravity.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) + + if values != nil { + values!(valX, valY, valZ) } - + // let absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) self.delegate?.getGravityAccelerationValFromDeviceMotion!(valX, y: valY, z: valZ) } - + } else { - NSLog("Device Motion is not available") + print("Device Motion is not available") } } - - + + /* * getAttitudeFromDeviceMotion:interval:values: * You can retrieve the processed attitude data from the device motion from this * method. */ - public func getAttitudeFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((attitude: CMAttitude) -> ())? ) { - + public func getAttitudeFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ attitude: CMAttitude) -> ())? ) { + if manager.isDeviceMotionAvailable{ manager.deviceMotionUpdateInterval = interval manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in - - if let isError = error{ - NSLog("Error: %@", isError) + + if error != nil { + print("Error: %@", error) } - if values != nil{ - values!(attitude: data!.attitude) + if values != nil { + values!(data!.attitude) } - + self.delegate?.getAttitudeFromDeviceMotion!(data!.attitude) } - + } else { - NSLog("Device Motion is not available") + print("Device Motion is not available") } } - + /* * getRotationRateFromDeviceMotion:interval:values: * You can retrieve the processed rotation data from the device motion from this * method. */ - public func getRotationRateFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - + public func getRotationRateFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double) -> ())? ) { + var valX: Double! var valY: Double! var valZ: Double! @@ -297,35 +299,35 @@ import CoreMotion manager.deviceMotionUpdateInterval = interval manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in - - if let isError = error{ - NSLog("Error: %@", isError) + + if error != nil { + print("Error: %@", error) } valX = data!.rotationRate.x valY = data!.rotationRate.y valZ = data!.rotationRate.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) + + if values != nil { + values!(valX, valY, valZ) } - + // let absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) self.delegate?.getRotationRateFromDeviceMotion!(valX, y: valY, z: valZ) } - + } else { - NSLog("Device Motion is not available") + print("Device Motion is not available") } } - - + + /* * getMagneticFieldFromDeviceMotion:interval:values: * You can retrieve the processed magnetic field data from the device motion from this * method. */ - public func getMagneticFieldFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((x:Double, y:Double, z:Double, accuracy: Int32) -> ())? ) { - + public func getMagneticFieldFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double, _ accuracy: Int32) -> ())? ) { + var valX: Double! var valY: Double! var valZ: Double! @@ -334,77 +336,76 @@ import CoreMotion manager.deviceMotionUpdateInterval = interval manager.startDeviceMotionUpdates(to: OperationQueue()){ (data, error) in - - if let isError = error{ - NSLog("Error: %@", isError) + + if error != nil { + print("Error: %@", error) } valX = data!.magneticField.field.x valY = data!.magneticField.field.y valZ = data!.magneticField.field.z valAccuracy = data!.magneticField.accuracy.rawValue - - if values != nil{ - values!(x: valX, y: valY, z: valZ, accuracy: valAccuracy) + + if values != nil { + values!(valX, valY, valZ, valAccuracy) } - + self.delegate?.getMagneticFieldFromDeviceMotion!(valX, y: valY, z: valZ) } - + } else { - NSLog("Device Motion is not available") + print("Device Motion is not available") } } - + /* MARK :- DEVICE MOTION APPROACH ENDS HERE */ - - + + /* * From the methods hereafter, the sensor values could be retrieved at * a particular instant, whenever needed, through a trailing closure. */ - + /* MARK :- INSTANTANIOUS METHODS START HERE */ - - public func getAccelerationAtCurrentInstant (_ values: (x:Double, y:Double, z:Double) -> ()){ + + public func getAccelerationAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ self.getAccelerationFromDeviceMotion(0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) + values(x, y, z) self.stopDeviceMotionUpdates() } } - - public func getGravitationalAccelerationAtCurrentInstant (_ values: (x:Double, y:Double, z:Double) -> ()){ + + public func getGravitationalAccelerationAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ self.getGravityAccelerationFromDeviceMotion(0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) + values(x, y, z) self.stopDeviceMotionUpdates() } } - - public func getAttitudeAtCurrentInstant (_ values: (attitude: CMAttitude) -> ()){ + + public func getAttitudeAtCurrentInstant (_ values: @escaping (_ attitude: CMAttitude) -> ()){ self.getAttitudeFromDeviceMotion(0.5) { (attitude) -> () in - values(attitude: attitude) + values(attitude) self.stopDeviceMotionUpdates() } - } - - public func getMageticFieldAtCurrentInstant (_ values: (x:Double, y:Double, z:Double) -> ()){ + + public func getMageticFieldAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ self.getMagneticFieldFromDeviceMotion(0.5) { (x, y, z, accuracy) -> () in - values(x: x,y: y,z: z) + values(x, y, z) self.stopDeviceMotionUpdates() } } - - public func getGyroValuesAtCurrentInstant (_ values: (x:Double, y:Double, z:Double) -> ()){ + + public func getGyroValuesAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ self.getRotationRateFromDeviceMotion(0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) + values(x, y, z) self.stopDeviceMotionUpdates() } } - + /* MARK :- INSTANTANIOUS METHODS END HERE */ - - - + + + /* * stopAccelerometerUpdates * @@ -413,9 +414,9 @@ import CoreMotion */ public func stopAccelerometerUpdates(){ self.manager.stopAccelerometerUpdates() - NSLog("Accelaration Updates Status - Stopped") + print("Accelaration Updates Status - Stopped") } - + /* * stopGyroUpdates * @@ -424,9 +425,9 @@ import CoreMotion */ public func stopGyroUpdates(){ self.manager.stopGyroUpdates() - NSLog("Gyroscope Updates Status - Stopped") + print("Gyroscope Updates Status - Stopped") } - + /* * stopDeviceMotionUpdates * @@ -435,9 +436,9 @@ import CoreMotion */ public func stopDeviceMotionUpdates() { self.manager.stopDeviceMotionUpdates() - NSLog("Device Motion Updates Status - Stopped") + print("Device Motion Updates Status - Stopped") } - + /* * stopMagnetometerUpdates * @@ -447,7 +448,7 @@ import CoreMotion @available(iOS, introduced: 5.0) public func stopmagnetometerUpdates() { self.manager.stopMagnetometerUpdates() - NSLog("Magnetometer Updates Status - Stopped") + print("Magnetometer Updates Status - Stopped") } - + } diff --git a/MotionKitTests/MotionKitTests.swift b/MotionKitTests/MotionKitTests.swift index d78e1e7..0d36021 100644 --- a/MotionKitTests/MotionKitTests.swift +++ b/MotionKitTests/MotionKitTests.swift @@ -28,7 +28,7 @@ class MotionKitTests: XCTestCase { func testPerformanceExample() { // This is an example of a performance test case. - self.measureBlock() { + self.measure() { // Put the code you want to measure the time of here. } } From 7e06b4ab9e8742b31816edf819f1221b514d99e4 Mon Sep 17 00:00:00 2001 From: Pawel Kania Date: Sat, 1 Oct 2016 11:55:51 +0200 Subject: [PATCH 3/9] Changed SWIFT_VERSION flag to 3.0 for the .xcodeproj Added git ignore --- .DS_Store | Bin 6148 -> 0 bytes .gitignore | 79 ++++++++++++++++++++++++++++ MotionKit.xcodeproj/project.pbxproj | 2 + 3 files changed, 81 insertions(+) delete mode 100644 .DS_Store create mode 100644 .gitignore diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 32f157c70a98c5e615d90551d961ef5bd59daa4d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHK!AiqG5Pe%Kw0J3a@wi_g^x!>|coI+f0U?p9G}%y6@fh%*{0Oi9kZ*RD(h`N@ zLB!6$%-hV)%QkOew*$Z}Hq{)M0hrJQM^lC`OyNWBYT(b_<51H-5&aZVoE^5IPFa=D3qfkIjcG~1j(V{6}3YY?01>}72bipiP zuNaRGhS&lS$4p1#Sb7QJ_=H))UXe32r&OX+U1~9$(wXU_VC<#3szMN_~O*jM00A7^s^Uw_~K@00Aw6fgz;l>%;@7x{vpl34K7 osp}QD6b|B5%v!mMFX+*j_c9=63429mX!b`S%3#41_*Dfy0ZMg6CIA2c diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5a249b6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,79 @@ +## https://github.com/github/gitignore +  +## OS X +.DS_Store +  +## Build generated +build/ +DerivedData +  +## Various Xcode settings +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata +  +## Xcode other +*.xccheckout +*.moved-aside +*.xcuserstate +*.xcscmblueprint +  +  +## Obj-C/Swift specific +*.hmap +*.ipa +  +  +# CocoaPods +# +# We recommend against adding the Pods directory to your .gitignore. However +# you should judge for yourself, the pros and cons are mentioned at: +# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control +# +Pods/ +  +  +# Carthage +# +# Add this line if you want to avoid checking in source code from Carthage dependencies. +Carthage/Checkouts +Carthage/Build +  +  +# fastlane +# +# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the +# screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://github.com/fastlane/fastlane/blob/master/docs/Gitignore.md +fastlane/report.xml +fastlane/screenshots +  +  +# Other temporary files +*.o +*.lo +*.la +*.al +#*# +.*.rej +*.rej +.*~ +*~ +.#* +*~.nib +.xvpics +.libs +*.so +*.so.[0-9]* +*.pyc +*.pyo +*.tmp +*.save +.*.swp \ No newline at end of file diff --git a/MotionKit.xcodeproj/project.pbxproj b/MotionKit.xcodeproj/project.pbxproj index a6736bb..452286b 100644 --- a/MotionKit.xcodeproj/project.pbxproj +++ b/MotionKit.xcodeproj/project.pbxproj @@ -279,6 +279,7 @@ ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -318,6 +319,7 @@ IPHONEOS_DEPLOYMENT_TARGET = 8.1; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; + SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; From 156350bbc57d968ccb454e6c3de34d8fd8459d9b Mon Sep 17 00:00:00 2001 From: Pawel Kania Date: Sat, 1 Oct 2016 11:58:58 +0200 Subject: [PATCH 4/9] Added .swift-version file --- .swift-version | 1 + 1 file changed, 1 insertion(+) create mode 100644 .swift-version diff --git a/.swift-version b/.swift-version new file mode 100644 index 0000000..f398a20 --- /dev/null +++ b/.swift-version @@ -0,0 +1 @@ +3.0 \ No newline at end of file From c072b74a1716f1974d11714e49f24d130b6a8938 Mon Sep 17 00:00:00 2001 From: Pawel Kania Date: Sat, 1 Oct 2016 12:03:47 +0200 Subject: [PATCH 5/9] Conversion to Swift 3.0 (umh?...) --- MotionKit/MotionKit.swift | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/MotionKit/MotionKit.swift b/MotionKit/MotionKit.swift index 3879d15..33a33e7 100644 --- a/MotionKit/MotionKit.swift +++ b/MotionKit/MotionKit.swift @@ -30,7 +30,7 @@ import CoreMotion } -@objc(MotionKit) public class MotionKit :NSObject{ +@objc(MotionKit) open class MotionKit :NSObject{ let manager = CMMotionManager() var delegate: MotionKitDelegate? @@ -54,7 +54,7 @@ import CoreMotion * given NSOperationQueue will be cancelled. You can access the retrieved values either by a * Trailing Closure or through a Delgate. */ - public func getAccelerometerValues (_ interval: TimeInterval = 0.1, values: ((_ x: Double, _ y: Double, _ z: Double) -> ())? ){ + open func getAccelerometerValues (_ interval: TimeInterval = 0.1, values: ((_ x: Double, _ y: Double, _ z: Double) -> ())? ){ var valX: Double! var valY: Double! var valZ: Double! @@ -90,7 +90,7 @@ import CoreMotion * given NSOperationQueue will be cancelled. You can access the retrieved values either by a * Trailing Closure or through a Delegate. */ - public func getGyroValues (_ interval: TimeInterval = 0.1, values: ((_ x: Double, _ y: Double, _ z:Double) -> ())? ) { + open func getGyroValues (_ interval: TimeInterval = 0.1, values: ((_ x: Double, _ y: Double, _ z:Double) -> ())? ) { var valX: Double! var valY: Double! @@ -127,7 +127,7 @@ import CoreMotion * You can access the retrieved values either by a Trailing Closure or through a Delegate. */ @available(iOS, introduced: 5.0) - public func getMagnetometerValues (_ interval: TimeInterval = 0.1, values: ((_ x: Double, _ y:Double, _ z:Double) -> ())? ){ + open func getMagnetometerValues (_ interval: TimeInterval = 0.1, values: ((_ x: Double, _ y:Double, _ z:Double) -> ())? ){ var valX: Double! var valY: Double! @@ -167,7 +167,7 @@ import CoreMotion * attitudeReferenceFrame to determine this. You can access the retrieved values either by a * Trailing Closure or through a Delegate. */ - public func getDeviceMotionObject (_ interval: TimeInterval = 0.1, values: ((_ deviceMotion: CMDeviceMotion) -> ())? ) { + open func getDeviceMotionObject (_ interval: TimeInterval = 0.1, values: ((_ deviceMotion: CMDeviceMotion) -> ())? ) { if manager.isDeviceMotionAvailable{ manager.deviceMotionUpdateInterval = interval @@ -193,7 +193,7 @@ import CoreMotion * getAccelerationFromDeviceMotion:interval:values: * You can retrieve the processed user accelaration data from the device motion from this method. */ - public func getAccelerationFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double) -> ())? ) { + open func getAccelerationFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double) -> ())? ) { var valX: Double! var valY: Double! @@ -227,7 +227,7 @@ import CoreMotion * You can retrieve the processed gravitational accelaration data from the device motion from this * method. */ - public func getGravityAccelerationFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double) -> ())? ) { + open func getGravityAccelerationFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double) -> ())? ) { var valX: Double! var valY: Double! @@ -263,7 +263,7 @@ import CoreMotion * You can retrieve the processed attitude data from the device motion from this * method. */ - public func getAttitudeFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ attitude: CMAttitude) -> ())? ) { + open func getAttitudeFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ attitude: CMAttitude) -> ())? ) { if manager.isDeviceMotionAvailable{ manager.deviceMotionUpdateInterval = interval @@ -290,7 +290,7 @@ import CoreMotion * You can retrieve the processed rotation data from the device motion from this * method. */ - public func getRotationRateFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double) -> ())? ) { + open func getRotationRateFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double) -> ())? ) { var valX: Double! var valY: Double! @@ -326,7 +326,7 @@ import CoreMotion * You can retrieve the processed magnetic field data from the device motion from this * method. */ - public func getMagneticFieldFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double, _ accuracy: Int32) -> ())? ) { + open func getMagneticFieldFromDeviceMotion (_ interval: TimeInterval = 0.1, values: ((_ x:Double, _ y:Double, _ z:Double, _ accuracy: Int32) -> ())? ) { var valX: Double! var valY: Double! @@ -367,35 +367,35 @@ import CoreMotion /* MARK :- INSTANTANIOUS METHODS START HERE */ - public func getAccelerationAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ + open func getAccelerationAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ self.getAccelerationFromDeviceMotion(0.5) { (x, y, z) -> () in values(x, y, z) self.stopDeviceMotionUpdates() } } - public func getGravitationalAccelerationAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ + open func getGravitationalAccelerationAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ self.getGravityAccelerationFromDeviceMotion(0.5) { (x, y, z) -> () in values(x, y, z) self.stopDeviceMotionUpdates() } } - public func getAttitudeAtCurrentInstant (_ values: @escaping (_ attitude: CMAttitude) -> ()){ + open func getAttitudeAtCurrentInstant (_ values: @escaping (_ attitude: CMAttitude) -> ()){ self.getAttitudeFromDeviceMotion(0.5) { (attitude) -> () in values(attitude) self.stopDeviceMotionUpdates() } } - public func getMageticFieldAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ + open func getMageticFieldAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ self.getMagneticFieldFromDeviceMotion(0.5) { (x, y, z, accuracy) -> () in values(x, y, z) self.stopDeviceMotionUpdates() } } - public func getGyroValuesAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ + open func getGyroValuesAtCurrentInstant (_ values: @escaping (_ x:Double, _ y:Double, _ z:Double) -> ()){ self.getRotationRateFromDeviceMotion(0.5) { (x, y, z) -> () in values(x, y, z) self.stopDeviceMotionUpdates() @@ -412,7 +412,7 @@ import CoreMotion * Discussion: * Stop accelerometer updates. */ - public func stopAccelerometerUpdates(){ + open func stopAccelerometerUpdates(){ self.manager.stopAccelerometerUpdates() print("Accelaration Updates Status - Stopped") } @@ -423,7 +423,7 @@ import CoreMotion * Discussion: * Stops gyro updates. */ - public func stopGyroUpdates(){ + open func stopGyroUpdates(){ self.manager.stopGyroUpdates() print("Gyroscope Updates Status - Stopped") } @@ -434,7 +434,7 @@ import CoreMotion * Discussion: * Stops device motion updates. */ - public func stopDeviceMotionUpdates() { + open func stopDeviceMotionUpdates() { self.manager.stopDeviceMotionUpdates() print("Device Motion Updates Status - Stopped") } @@ -446,7 +446,7 @@ import CoreMotion * Stops magnetometer updates. */ @available(iOS, introduced: 5.0) - public func stopmagnetometerUpdates() { + open func stopmagnetometerUpdates() { self.manager.stopMagnetometerUpdates() print("Magnetometer Updates Status - Stopped") } From 095cb8335554e992bfd98a4da073ddf4bd703eb9 Mon Sep 17 00:00:00 2001 From: Pawel Kania Date: Sat, 1 Oct 2016 12:15:35 +0200 Subject: [PATCH 6/9] Clean up --- MotionKit.swift | 456 ------------------------------------------------ 1 file changed, 456 deletions(-) delete mode 100644 MotionKit.swift diff --git a/MotionKit.swift b/MotionKit.swift deleted file mode 100644 index 06b7443..0000000 --- a/MotionKit.swift +++ /dev/null @@ -1,456 +0,0 @@ -// -// MotionKit.swift -// MotionKit -// -// Created by Haroon on 14/02/2015. -// Launched under the Creative Commons License. You're free to use MotionKit. -// -// The original Github repository is https://github.com/MHaroonBaig/MotionKit -// The official blog post and documentation is https://medium.com/@PyBaig/motionkit-the-missing-ios-coremotion-wrapper-written-in-swift-99fcb83355d0 -// - -import Foundation -import CoreMotion - -//_______________________________________________________________________________________________________________ -// this helps retrieve values from the sensors. -@objc protocol MotionKitDelegate { - optional func retrieveAccelerometerValues (x: Double, y:Double, z:Double, absoluteValue: Double) - optional func retrieveGyroscopeValues (x: Double, y:Double, z:Double, absoluteValue: Double) - optional func retrieveDeviceMotionObject (deviceMotion: CMDeviceMotion) - optional func retrieveMagnetometerValues (x: Double, y:Double, z:Double, absoluteValue: Double) - - optional func getAccelerationValFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getGravityAccelerationValFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getRotationRateFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getMagneticFieldFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getAttitudeFromDeviceMotion (attitude: CMAttitude) -} - - -class MotionKit { - - let manager = CMMotionManager() - var delegate: MotionKitDelegate? - - /* - * init:void: - * - * Discussion: - * Initialises the MotionKit class and throw a Log with a timestamp. - */ - init(){ - NSLog("MotionKit has been initialised successfully") - } - - /* - * getAccelerometerValues:interval:values: - * - * Discussion: - * Starts accelerometer updates, providing data to the given handler through the given queue. - * Note that when the updates are stopped, all operations in the - * given NSOperationQueue will be cancelled. You can access the retrieved values either by a - * Trailing Closure or through a Delgate. - */ - func getAccelerometerValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y: Double, z: Double) -> ())? ){ - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.accelerometerAvailable { - manager.accelerometerUpdateInterval = interval - manager.startAccelerometerUpdatesToQueue(NSOperationQueue()) { - (data: CMAccelerometerData!, error: NSError!) in - - if let isError = error { - NSLog("Error: %@", isError) - } - valX = data.acceleration.x - valY = data.acceleration.y - valZ = data.acceleration.z - - if values != nil{ - values!(x: valX,y: valY,z: valZ) - } - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.retrieveAccelerometerValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) - } - - } else { - NSLog("The Accelerometer is not available") - } - } - - /* - * getGyroValues:interval:values: - * - * Discussion: - * Starts gyro updates, providing data to the given handler through the given queue. - * Note that when the updates are stopped, all operations in the - * given NSOperationQueue will be cancelled. You can access the retrieved values either by a - * Trailing Closure or through a Delegate. - */ - func getGyroValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y: Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.gyroAvailable{ - manager.gyroUpdateInterval = interval - manager.startGyroUpdatesToQueue(NSOperationQueue()) { - (data: CMGyroData!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.rotationRate.x - valY = data.rotationRate.y - valZ = data.rotationRate.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.retrieveGyroscopeValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) - } - - } else { - NSLog("The Gyroscope is not available") - } - } - - /* - * getMagnetometerValues:interval:values: - * - * Discussion: - * Starts magnetometer updates, providing data to the given handler through the given queue. - * You can access the retrieved values either by a Trailing Closure or through a Delegate. - */ - @availability(iOS, introduced=5.0) - func getMagnetometerValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y:Double, z:Double) -> ())? ){ - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.magnetometerAvailable { - manager.magnetometerUpdateInterval = interval - manager.startMagnetometerUpdatesToQueue(NSOperationQueue()){ - (data: CMMagnetometerData!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.magneticField.x - valY = data.magneticField.y - valZ = data.magneticField.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.retrieveMagnetometerValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) - } - - } else { - NSLog("Magnetometer is not available") - } - } - - /* MARK :- DEVICE MOTION APPROACH STARTS HERE */ - - /* - * getDeviceMotionValues:interval:values: - * - * Discussion: - * Starts device motion updates, providing data to the given handler through the given queue. - * Uses the default reference frame for the device. Examine CMMotionManager's - * attitudeReferenceFrame to determine this. You can access the retrieved values either by a - * Trailing Closure or through a Delegate. - */ - func getDeviceMotionObject (interval: NSTimeInterval = 0.1, values: ((deviceMotion: CMDeviceMotion) -> ())? ) { - - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - if values != nil{ - values!(deviceMotion: data) - } - self.delegate?.retrieveDeviceMotionObject!(data) - } - - } else { - NSLog("Device Motion is not available") - } - } - - - /* - * getAccelerationFromDeviceMotion:interval:values: - * You can retrieve the processed user accelaration data from the device motion from this method. - */ - func getAccelerationFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.userAcceleration.x - valY = data.userAcceleration.y - valZ = data.userAcceleration.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - - self.delegate?.getAccelerationValFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is unavailable") - } - } - - /* - * getGravityAccelerationFromDeviceMotion:interval:values: - * You can retrieve the processed gravitational accelaration data from the device motion from this - * method. - */ - func getGravityAccelerationFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.gravity.x - valY = data.gravity.y - valZ = data.gravity.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.getGravityAccelerationValFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is not available") - } - } - - - /* - * getAttitudeFromDeviceMotion:interval:values: - * You can retrieve the processed attitude data from the device motion from this - * method. - */ - func getAttitudeFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((attitude: CMAttitude) -> ())? ) { - - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - if values != nil{ - values!(attitude: data.attitude) - } - - self.delegate?.getAttitudeFromDeviceMotion!(data.attitude) - } - - } else { - NSLog("Device Motion is not available") - } - } - - /* - * getRotationRateFromDeviceMotion:interval:values: - * You can retrieve the processed rotation data from the device motion from this - * method. - */ - func getRotationRateFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.rotationRate.x - valY = data.rotationRate.y - valZ = data.rotationRate.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.getRotationRateFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is not available") - } - } - - - /* - * getMagneticFieldFromDeviceMotion:interval:values: - * You can retrieve the processed magnetic field data from the device motion from this - * method. - */ - func getMagneticFieldFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double, accuracy: Int32) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - var valAccuracy: Int32! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.magneticField.field.x - valY = data.magneticField.field.y - valZ = data.magneticField.field.z - valAccuracy = data.magneticField.accuracy.value - - - if values != nil{ - values!(x: valX, y: valY, z: valZ, accuracy: valAccuracy) - } - - self.delegate?.getMagneticFieldFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is not available") - } - } - - /* MARK :- DEVICE MOTION APPROACH ENDS HERE */ - - - /* - * From the methods hereafter, the sensor values could be retrieved at - * a particular instant, whenever needed, through a trailing closure. - */ - - /* MARK :- INSTANTANIOUS METHODS START HERE */ - - func getAccelerationAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getAccelerationFromDeviceMotion(interval: 0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - func getGravitationalAccelerationAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getGravityAccelerationFromDeviceMotion(interval: 0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - func getAttitudeAtCurrentInstant (values: (attitude: CMAttitude) -> ()){ - self.getAttitudeFromDeviceMotion(interval: 0.5) { (attitude) -> () in - values(attitude: attitude) - self.stopDeviceMotionUpdates() - } - - } - - func getMageticFieldAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getMagneticFieldFromDeviceMotion(interval: 0.5) { (x, y, z, accuracy) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - func getGyroValuesAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getRotationRateFromDeviceMotion(interval: 0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - /* MARK :- INSTANTANIOUS METHODS END HERE */ - - - - /* - * stopAccelerometerUpdates - * - * Discussion: - * Stop accelerometer updates. - */ - func stopAccelerometerUpdates(){ - self.manager.stopAccelerometerUpdates() - NSLog("Accelaration Updates Status - Stopped") - } - - /* - * stopGyroUpdates - * - * Discussion: - * Stops gyro updates. - */ - func stopGyroUpdates(){ - self.manager.stopGyroUpdates() - NSLog("Gyroscope Updates Status - Stopped") - } - - /* - * stopDeviceMotionUpdates - * - * Discussion: - * Stops device motion updates. - */ - func stopDeviceMotionUpdates() { - self.manager.stopDeviceMotionUpdates() - NSLog("Device Motion Updates Status - Stopped") - } - - /* - * stopMagnetometerUpdates - * - * Discussion: - * Stops magnetometer updates. - */ - @availability(iOS, introduced=5.0) - func stopmagnetometerUpdates() { - self.manager.stopMagnetometerUpdates() - NSLog("Magnetometer Updates Status - Stopped") - } - -} \ No newline at end of file From f8940985dc93058dc1e9ce7c5189608c37058e1f Mon Sep 17 00:00:00 2001 From: Pawel Kania Date: Sat, 1 Oct 2016 12:20:01 +0200 Subject: [PATCH 7/9] Bulk clean up --- Example/Example.xcodeproj/project.pbxproj | 524 -------- .../contents.xcworkspacedata | 7 - .../xcshareddata/Example.xccheckout | 41 - .../UserInterfaceState.xcuserstate | Bin 14506 -> 0 bytes .../xcshareddata/xcschemes/Example.xcscheme | 110 -- .../xcschemes/xcschememanagement.plist | 27 - Example/Example/AppDelegate.swift | 111 -- Example/Example/Base.lproj/LaunchScreen.xib | 41 - Example/Example/Base.lproj/Main.storyboard | 25 - .../Example.xcdatamodeld/.xccurrentversion | 8 - .../Example.xcdatamodel/contents | 4 - .../AppIcon.appiconset/Contents.json | 68 - Example/Example/Info.plist | 47 - Example/Example/ViewController.swift | 31 - Example/ExampleTests/ExampleTests.swift | 36 - Example/ExampleTests/Info.plist | 24 - Example/MotionKit.xcodeproj/project.pbxproj | 414 ------ .../contents.xcworkspacedata | 7 - .../xcshareddata/MotionKit.xccheckout | 41 - .../UserInterfaceState.xcuserstate | Bin 12474 -> 0 bytes .../xcshareddata/xcschemes/MotionKit.xcscheme | 110 -- .../xcschemes/xcschememanagement.plist | 27 - Example/MotionKit/Info.plist | 26 - Example/MotionKit/MotionKit.h | 19 - Example/MotionKit/MotionKit.swift | 456 ------- Example/MotionKitTests/Info.plist | 24 - Example/MotionKitTests/MotionKitTests.swift | 36 - MotionKit.xcodeproj/project.pbxproj | 319 ++--- .../xcshareddata/MotionKit.xccheckout | 41 - .../UserInterfaceState.xcuserstate | Bin 12586 -> 0 bytes .../UserInterfaceState.xcuserstate | Bin 13793 -> 0 bytes .../xcschemes/MotionKit.xcscheme | 99 -- .../xcschemes/xcschememanagement.plist | 27 - .../xcschemes/MotionKit.xcscheme | 110 -- .../xcschemes/xcschememanagement.plist | 27 - MotionKit/Info.plist | 2 - MotionKit/MotionKit.h | 4 +- MotionKitTests/Info.plist | 24 - MotionKitTests/MotionKitTests.swift | 36 - Objective-C example/test/Podfile.lock | 19 - .../Local Podspecs/MotionKit.podspec.json | 20 - Objective-C example/test/Pods/Manifest.lock | 19 - .../test/Pods/MotionKit/LICENSE | 19 - .../Pods/MotionKit/MotionKit/MotionKit.swift | 456 ------- .../test/Pods/MotionKit/README.md | 288 ----- .../test/Pods/Pods.xcodeproj/project.pbxproj | 1131 ----------------- .../xcschemes/Pods-MotionKit.xcscheme | 59 - .../xcschemes/Pods.xcscheme | 59 - .../xcschemes/xcschememanagement.plist | 32 - .../Pods-MotionKit/Info.plist | 26 - .../Pods-MotionKit-Private.xcconfig | 9 - .../Pods-MotionKit/Pods-MotionKit-dummy.m | 5 - .../Pods-MotionKit/Pods-MotionKit-prefix.pch | 5 - .../Pods-MotionKit/Pods-MotionKit-umbrella.h | 6 - .../Pods-MotionKit/Pods-MotionKit.modulemap | 6 - .../Pods-MotionKit/Pods-MotionKit.xcconfig | 0 .../Pods/Target Support Files/Pods/Info.plist | 26 - .../Pods/Pods-acknowledgements.markdown | 26 - .../Pods/Pods-acknowledgements.plist | 56 - .../Target Support Files/Pods/Pods-dummy.m | 5 - .../Pods/Pods-environment.h | 14 - .../Pods/Pods-frameworks.sh | 55 - .../Pods/Pods-resources.sh | 74 -- .../Target Support Files/Pods/Pods-umbrella.h | 6 - .../Pods/Pods.debug.xcconfig | 9 - .../Target Support Files/Pods/Pods.modulemap | 6 - .../Pods/Pods.release.xcconfig | 9 - Objective-C example/test/podfile | 1 - .../test/test.xcodeproj/project.pbxproj | 1024 --------------- .../contents.xcworkspacedata | 7 - .../UserInterfaceState.xcuserstate | Bin 8396 -> 0 bytes .../xcschemes/test.xcscheme | 110 -- .../xcschemes/xcschememanagement.plist | 27 - .../test.xcworkspace/contents.xcworkspacedata | 10 - .../UserInterfaceState.xcuserstate | Bin 10988 -> 0 bytes Objective-C example/test/test/AppDelegate.h | 25 - Objective-C example/test/test/AppDelegate.m | 127 -- .../test/test/Base.lproj/LaunchScreen.xib | 41 - .../test/test/Base.lproj/Main.storyboard | 25 - .../AppIcon.appiconset/Contents.json | 68 - Objective-C example/test/test/Info.plist | 47 - .../test/test/ViewController.h | 16 - .../test/test/ViewController.m | 42 - Objective-C example/test/test/main.m | 16 - .../test/test.xcdatamodeld/.xccurrentversion | 8 - .../test.xcdatamodel/contents | 4 - Objective-C example/test/testTests/Info.plist | 24 - .../test/testTests/testTests.m | 40 - 88 files changed, 96 insertions(+), 6964 deletions(-) delete mode 100644 Example/Example.xcodeproj/project.pbxproj delete mode 100644 Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata delete mode 100644 Example/Example.xcodeproj/project.xcworkspace/xcshareddata/Example.xccheckout delete mode 100644 Example/Example.xcodeproj/project.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate delete mode 100644 Example/Example.xcodeproj/xcshareddata/xcschemes/Example.xcscheme delete mode 100644 Example/Example.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist delete mode 100644 Example/Example/AppDelegate.swift delete mode 100644 Example/Example/Base.lproj/LaunchScreen.xib delete mode 100644 Example/Example/Base.lproj/Main.storyboard delete mode 100644 Example/Example/Example.xcdatamodeld/.xccurrentversion delete mode 100644 Example/Example/Example.xcdatamodeld/Example.xcdatamodel/contents delete mode 100644 Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 Example/Example/Info.plist delete mode 100644 Example/Example/ViewController.swift delete mode 100644 Example/ExampleTests/ExampleTests.swift delete mode 100644 Example/ExampleTests/Info.plist delete mode 100644 Example/MotionKit.xcodeproj/project.pbxproj delete mode 100644 Example/MotionKit.xcodeproj/project.xcworkspace/contents.xcworkspacedata delete mode 100644 Example/MotionKit.xcodeproj/project.xcworkspace/xcshareddata/MotionKit.xccheckout delete mode 100644 Example/MotionKit.xcodeproj/project.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate delete mode 100644 Example/MotionKit.xcodeproj/xcshareddata/xcschemes/MotionKit.xcscheme delete mode 100644 Example/MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist delete mode 100644 Example/MotionKit/Info.plist delete mode 100644 Example/MotionKit/MotionKit.h delete mode 100644 Example/MotionKit/MotionKit.swift delete mode 100644 Example/MotionKitTests/Info.plist delete mode 100644 Example/MotionKitTests/MotionKitTests.swift delete mode 100644 MotionKit.xcodeproj/project.xcworkspace/xcshareddata/MotionKit.xccheckout delete mode 100644 MotionKit.xcodeproj/project.xcworkspace/xcuserdata/herrk.xcuserdatad/UserInterfaceState.xcuserstate delete mode 100644 MotionKit.xcodeproj/project.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate delete mode 100644 MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/MotionKit.xcscheme delete mode 100644 MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/xcschememanagement.plist delete mode 100644 MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/MotionKit.xcscheme delete mode 100644 MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist delete mode 100644 MotionKitTests/Info.plist delete mode 100644 MotionKitTests/MotionKitTests.swift delete mode 100644 Objective-C example/test/Podfile.lock delete mode 100644 Objective-C example/test/Pods/Local Podspecs/MotionKit.podspec.json delete mode 100644 Objective-C example/test/Pods/Manifest.lock delete mode 100644 Objective-C example/test/Pods/MotionKit/LICENSE delete mode 100644 Objective-C example/test/Pods/MotionKit/MotionKit/MotionKit.swift delete mode 100644 Objective-C example/test/Pods/MotionKit/README.md delete mode 100644 Objective-C example/test/Pods/Pods.xcodeproj/project.pbxproj delete mode 100644 Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/Pods-MotionKit.xcscheme delete mode 100644 Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/Pods.xcscheme delete mode 100644 Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Info.plist delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-Private.xcconfig delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-dummy.m delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-prefix.pch delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-umbrella.h delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit.modulemap delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit.xcconfig delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods/Info.plist delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods/Pods-acknowledgements.plist delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods/Pods-dummy.m delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods/Pods-environment.h delete mode 100755 Objective-C example/test/Pods/Target Support Files/Pods/Pods-frameworks.sh delete mode 100755 Objective-C example/test/Pods/Target Support Files/Pods/Pods-resources.sh delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods/Pods-umbrella.h delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods/Pods.debug.xcconfig delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods/Pods.modulemap delete mode 100644 Objective-C example/test/Pods/Target Support Files/Pods/Pods.release.xcconfig delete mode 100644 Objective-C example/test/podfile delete mode 100644 Objective-C example/test/test.xcodeproj/project.pbxproj delete mode 100644 Objective-C example/test/test.xcodeproj/project.xcworkspace/contents.xcworkspacedata delete mode 100644 Objective-C example/test/test.xcodeproj/project.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate delete mode 100644 Objective-C example/test/test.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/test.xcscheme delete mode 100644 Objective-C example/test/test.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist delete mode 100644 Objective-C example/test/test.xcworkspace/contents.xcworkspacedata delete mode 100644 Objective-C example/test/test.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate delete mode 100644 Objective-C example/test/test/AppDelegate.h delete mode 100644 Objective-C example/test/test/AppDelegate.m delete mode 100644 Objective-C example/test/test/Base.lproj/LaunchScreen.xib delete mode 100644 Objective-C example/test/test/Base.lproj/Main.storyboard delete mode 100644 Objective-C example/test/test/Images.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 Objective-C example/test/test/Info.plist delete mode 100644 Objective-C example/test/test/ViewController.h delete mode 100644 Objective-C example/test/test/ViewController.m delete mode 100644 Objective-C example/test/test/main.m delete mode 100644 Objective-C example/test/test/test.xcdatamodeld/.xccurrentversion delete mode 100644 Objective-C example/test/test/test.xcdatamodeld/test.xcdatamodel/contents delete mode 100644 Objective-C example/test/testTests/Info.plist delete mode 100644 Objective-C example/test/testTests/testTests.m diff --git a/Example/Example.xcodeproj/project.pbxproj b/Example/Example.xcodeproj/project.pbxproj deleted file mode 100644 index 87052d7..0000000 --- a/Example/Example.xcodeproj/project.pbxproj +++ /dev/null @@ -1,524 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 754ACA9C1A954C5700E567DC /* MotionKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 754ACA991A954C4F00E567DC /* MotionKit.framework */; }; - 754ACA9D1A954C5A00E567DC /* MotionKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 754ACA991A954C4F00E567DC /* MotionKit.framework */; }; - 754ACA9E1A954C5A00E567DC /* MotionKit.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 754ACA991A954C4F00E567DC /* MotionKit.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 75FDEDB81A95476B00283A97 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75FDEDB71A95476B00283A97 /* AppDelegate.swift */; }; - 75FDEDBB1A95476B00283A97 /* Example.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 75FDEDB91A95476B00283A97 /* Example.xcdatamodeld */; }; - 75FDEDBD1A95476B00283A97 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75FDEDBC1A95476B00283A97 /* ViewController.swift */; }; - 75FDEDC01A95476B00283A97 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 75FDEDBE1A95476B00283A97 /* Main.storyboard */; }; - 75FDEDC21A95476B00283A97 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 75FDEDC11A95476B00283A97 /* Images.xcassets */; }; - 75FDEDC51A95476B00283A97 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 75FDEDC31A95476B00283A97 /* LaunchScreen.xib */; }; - 75FDEDD11A95476B00283A97 /* ExampleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75FDEDD01A95476B00283A97 /* ExampleTests.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 754ACA981A954C4F00E567DC /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 754ACA931A954C4F00E567DC /* MotionKit.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 75FDED551A9541F800283A97; - remoteInfo = MotionKit; - }; - 754ACA9A1A954C4F00E567DC /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 754ACA931A954C4F00E567DC /* MotionKit.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 75FDED601A9541F800283A97; - remoteInfo = MotionKitTests; - }; - 754ACA9F1A954C5A00E567DC /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 754ACA931A954C4F00E567DC /* MotionKit.xcodeproj */; - proxyType = 1; - remoteGlobalIDString = 75FDED541A9541F800283A97; - remoteInfo = MotionKit; - }; - 75FDEDCB1A95476B00283A97 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 75FDEDAA1A95476B00283A97 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 75FDEDB11A95476B00283A97; - remoteInfo = Example; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 754ACAA11A954C5A00E567DC /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - 754ACA9E1A954C5A00E567DC /* MotionKit.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 754ACA931A954C4F00E567DC /* MotionKit.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = MotionKit.xcodeproj; sourceTree = ""; }; - 75FDEDB21A95476B00283A97 /* Example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Example.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 75FDEDB61A95476B00283A97 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 75FDEDB71A95476B00283A97 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 75FDEDBA1A95476B00283A97 /* Example.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = Example.xcdatamodel; sourceTree = ""; }; - 75FDEDBC1A95476B00283A97 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; - 75FDEDBF1A95476B00283A97 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 75FDEDC11A95476B00283A97 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - 75FDEDC41A95476B00283A97 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; - 75FDEDCA1A95476B00283A97 /* ExampleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ExampleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 75FDEDCF1A95476B00283A97 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 75FDEDD01A95476B00283A97 /* ExampleTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExampleTests.swift; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 75FDEDAF1A95476B00283A97 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 754ACA9C1A954C5700E567DC /* MotionKit.framework in Frameworks */, - 754ACA9D1A954C5A00E567DC /* MotionKit.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 75FDEDC71A95476B00283A97 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 754ACA941A954C4F00E567DC /* Products */ = { - isa = PBXGroup; - children = ( - 754ACA991A954C4F00E567DC /* MotionKit.framework */, - 754ACA9B1A954C4F00E567DC /* MotionKitTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - 75FDEDA91A95476B00283A97 = { - isa = PBXGroup; - children = ( - 754ACA931A954C4F00E567DC /* MotionKit.xcodeproj */, - 75FDEDB41A95476B00283A97 /* Example */, - 75FDEDCD1A95476B00283A97 /* ExampleTests */, - 75FDEDB31A95476B00283A97 /* Products */, - ); - sourceTree = ""; - }; - 75FDEDB31A95476B00283A97 /* Products */ = { - isa = PBXGroup; - children = ( - 75FDEDB21A95476B00283A97 /* Example.app */, - 75FDEDCA1A95476B00283A97 /* ExampleTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - 75FDEDB41A95476B00283A97 /* Example */ = { - isa = PBXGroup; - children = ( - 75FDEDB71A95476B00283A97 /* AppDelegate.swift */, - 75FDEDBC1A95476B00283A97 /* ViewController.swift */, - 75FDEDBE1A95476B00283A97 /* Main.storyboard */, - 75FDEDC11A95476B00283A97 /* Images.xcassets */, - 75FDEDC31A95476B00283A97 /* LaunchScreen.xib */, - 75FDEDB91A95476B00283A97 /* Example.xcdatamodeld */, - 75FDEDB51A95476B00283A97 /* Supporting Files */, - ); - path = Example; - sourceTree = ""; - }; - 75FDEDB51A95476B00283A97 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 75FDEDB61A95476B00283A97 /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; - 75FDEDCD1A95476B00283A97 /* ExampleTests */ = { - isa = PBXGroup; - children = ( - 75FDEDD01A95476B00283A97 /* ExampleTests.swift */, - 75FDEDCE1A95476B00283A97 /* Supporting Files */, - ); - path = ExampleTests; - sourceTree = ""; - }; - 75FDEDCE1A95476B00283A97 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 75FDEDCF1A95476B00283A97 /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 75FDEDB11A95476B00283A97 /* Example */ = { - isa = PBXNativeTarget; - buildConfigurationList = 75FDEDD41A95476B00283A97 /* Build configuration list for PBXNativeTarget "Example" */; - buildPhases = ( - 75FDEDAE1A95476B00283A97 /* Sources */, - 75FDEDAF1A95476B00283A97 /* Frameworks */, - 75FDEDB01A95476B00283A97 /* Resources */, - 754ACAA11A954C5A00E567DC /* Embed Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 754ACAA01A954C5A00E567DC /* PBXTargetDependency */, - ); - name = Example; - productName = Example; - productReference = 75FDEDB21A95476B00283A97 /* Example.app */; - productType = "com.apple.product-type.application"; - }; - 75FDEDC91A95476B00283A97 /* ExampleTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 75FDEDD71A95476B00283A97 /* Build configuration list for PBXNativeTarget "ExampleTests" */; - buildPhases = ( - 75FDEDC61A95476B00283A97 /* Sources */, - 75FDEDC71A95476B00283A97 /* Frameworks */, - 75FDEDC81A95476B00283A97 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 75FDEDCC1A95476B00283A97 /* PBXTargetDependency */, - ); - name = ExampleTests; - productName = ExampleTests; - productReference = 75FDEDCA1A95476B00283A97 /* ExampleTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 75FDEDAA1A95476B00283A97 /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 0610; - ORGANIZATIONNAME = MotionKit; - TargetAttributes = { - 75FDEDB11A95476B00283A97 = { - CreatedOnToolsVersion = 6.1.1; - }; - 75FDEDC91A95476B00283A97 = { - CreatedOnToolsVersion = 6.1.1; - TestTargetID = 75FDEDB11A95476B00283A97; - }; - }; - }; - buildConfigurationList = 75FDEDAD1A95476B00283A97 /* Build configuration list for PBXProject "Example" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 75FDEDA91A95476B00283A97; - productRefGroup = 75FDEDB31A95476B00283A97 /* Products */; - projectDirPath = ""; - projectReferences = ( - { - ProductGroup = 754ACA941A954C4F00E567DC /* Products */; - ProjectRef = 754ACA931A954C4F00E567DC /* MotionKit.xcodeproj */; - }, - ); - projectRoot = ""; - targets = ( - 75FDEDB11A95476B00283A97 /* Example */, - 75FDEDC91A95476B00283A97 /* ExampleTests */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXReferenceProxy section */ - 754ACA991A954C4F00E567DC /* MotionKit.framework */ = { - isa = PBXReferenceProxy; - fileType = wrapper.framework; - path = MotionKit.framework; - remoteRef = 754ACA981A954C4F00E567DC /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 754ACA9B1A954C4F00E567DC /* MotionKitTests.xctest */ = { - isa = PBXReferenceProxy; - fileType = wrapper.cfbundle; - path = MotionKitTests.xctest; - remoteRef = 754ACA9A1A954C4F00E567DC /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; -/* End PBXReferenceProxy section */ - -/* Begin PBXResourcesBuildPhase section */ - 75FDEDB01A95476B00283A97 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 75FDEDC01A95476B00283A97 /* Main.storyboard in Resources */, - 75FDEDC51A95476B00283A97 /* LaunchScreen.xib in Resources */, - 75FDEDC21A95476B00283A97 /* Images.xcassets in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 75FDEDC81A95476B00283A97 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 75FDEDAE1A95476B00283A97 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 75FDEDBD1A95476B00283A97 /* ViewController.swift in Sources */, - 75FDEDBB1A95476B00283A97 /* Example.xcdatamodeld in Sources */, - 75FDEDB81A95476B00283A97 /* AppDelegate.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 75FDEDC61A95476B00283A97 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 75FDEDD11A95476B00283A97 /* ExampleTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 754ACAA01A954C5A00E567DC /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = MotionKit; - targetProxy = 754ACA9F1A954C5A00E567DC /* PBXContainerItemProxy */; - }; - 75FDEDCC1A95476B00283A97 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 75FDEDB11A95476B00283A97 /* Example */; - targetProxy = 75FDEDCB1A95476B00283A97 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 75FDEDBE1A95476B00283A97 /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 75FDEDBF1A95476B00283A97 /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 75FDEDC31A95476B00283A97 /* LaunchScreen.xib */ = { - isa = PBXVariantGroup; - children = ( - 75FDEDC41A95476B00283A97 /* Base */, - ); - name = LaunchScreen.xib; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 75FDEDD21A95476B00283A97 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.1; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 75FDEDD31A95476B00283A97 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = YES; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.1; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 75FDEDD51A95476B00283A97 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; - INFOPLIST_FILE = Example/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 75FDEDD61A95476B00283A97 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; - INFOPLIST_FILE = Example/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - 75FDEDD81A95476B00283A97 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = ExampleTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Example.app/Example"; - }; - name = Debug; - }; - 75FDEDD91A95476B00283A97 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - INFOPLIST_FILE = ExampleTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Example.app/Example"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 75FDEDAD1A95476B00283A97 /* Build configuration list for PBXProject "Example" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 75FDEDD21A95476B00283A97 /* Debug */, - 75FDEDD31A95476B00283A97 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 75FDEDD41A95476B00283A97 /* Build configuration list for PBXNativeTarget "Example" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 75FDEDD51A95476B00283A97 /* Debug */, - 75FDEDD61A95476B00283A97 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 75FDEDD71A95476B00283A97 /* Build configuration list for PBXNativeTarget "ExampleTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 75FDEDD81A95476B00283A97 /* Debug */, - 75FDEDD91A95476B00283A97 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - -/* Begin XCVersionGroup section */ - 75FDEDB91A95476B00283A97 /* Example.xcdatamodeld */ = { - isa = XCVersionGroup; - children = ( - 75FDEDBA1A95476B00283A97 /* Example.xcdatamodel */, - ); - currentVersion = 75FDEDBA1A95476B00283A97 /* Example.xcdatamodel */; - path = Example.xcdatamodeld; - sourceTree = ""; - versionGroupType = wrapper.xcdatamodel; - }; -/* End XCVersionGroup section */ - }; - rootObject = 75FDEDAA1A95476B00283A97 /* Project object */; -} diff --git a/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 6d2a51b..0000000 --- a/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/Example/Example.xcodeproj/project.xcworkspace/xcshareddata/Example.xccheckout b/Example/Example.xcodeproj/project.xcworkspace/xcshareddata/Example.xccheckout deleted file mode 100644 index 4fe8c58..0000000 --- a/Example/Example.xcodeproj/project.xcworkspace/xcshareddata/Example.xccheckout +++ /dev/null @@ -1,41 +0,0 @@ - - - - - IDESourceControlProjectFavoriteDictionaryKey - - IDESourceControlProjectIdentifier - BB1DB258-1B54-46F4-AB50-5526B71C1257 - IDESourceControlProjectName - Example - IDESourceControlProjectOriginsDictionary - - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - https://github.com/MHaroonBaig/MotionKit.git - - IDESourceControlProjectPath - Example/Example.xcodeproj - IDESourceControlProjectRelativeInstallPathDictionary - - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - ../../.. - - IDESourceControlProjectURL - https://github.com/MHaroonBaig/MotionKit.git - IDESourceControlProjectVersion - 111 - IDESourceControlProjectWCCIdentifier - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - IDESourceControlProjectWCConfigurations - - - IDESourceControlRepositoryExtensionIdentifierKey - public.vcs.git - IDESourceControlWCCIdentifierKey - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - IDESourceControlWCCName - MotionKit - - - - diff --git a/Example/Example.xcodeproj/project.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate b/Example/Example.xcodeproj/project.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index a4dc02795def07aa5247bae0a3a6fcab60d178bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14506 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 diff --git a/Example/Example.xcodeproj/xcshareddata/xcschemes/Example.xcscheme b/Example/Example.xcodeproj/xcshareddata/xcschemes/Example.xcscheme deleted file mode 100644 index c81a0ae..0000000 --- a/Example/Example.xcodeproj/xcshareddata/xcschemes/Example.xcscheme +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Example/Example.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist b/Example/Example.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index c37ac7a..0000000 --- a/Example/Example.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,27 +0,0 @@ - - - - - SchemeUserState - - Example.xcscheme_^#shared#^_ - - orderHint - 0 - - - SuppressBuildableAutocreation - - 75FDEDB11A95476B00283A97 - - primary - - - 75FDEDC91A95476B00283A97 - - primary - - - - - diff --git a/Example/Example/AppDelegate.swift b/Example/Example/AppDelegate.swift deleted file mode 100644 index 5fc873e..0000000 --- a/Example/Example/AppDelegate.swift +++ /dev/null @@ -1,111 +0,0 @@ -// -// AppDelegate.swift -// Example -// -// Created by Haroon on 19/02/2015. -// Copyright (c) 2015 MotionKit. All rights reserved. -// - -import UIKit -import CoreData - -@UIApplicationMain -class AppDelegate: UIResponder, UIApplicationDelegate { - - var window: UIWindow? - - - func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { - // Override point for customization after application launch. - return true - } - - func applicationWillResignActive(application: UIApplication) { - // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. - // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. - } - - func applicationDidEnterBackground(application: UIApplication) { - // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. - // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. - } - - func applicationWillEnterForeground(application: UIApplication) { - // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. - } - - func applicationDidBecomeActive(application: UIApplication) { - // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. - } - - func applicationWillTerminate(application: UIApplication) { - // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. - // Saves changes in the application's managed object context before the application terminates. - self.saveContext() - } - - // MARK: - Core Data stack - - lazy var applicationDocumentsDirectory: NSURL = { - // The directory the application uses to store the Core Data store file. This code uses a directory named "com.motionkit.Example" in the application's documents Application Support directory. - let urls = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask) - return urls[urls.count-1] as NSURL - }() - - lazy var managedObjectModel: NSManagedObjectModel = { - // The managed object model for the application. This property is not optional. It is a fatal error for the application not to be able to find and load its model. - let modelURL = NSBundle.mainBundle().URLForResource("Example", withExtension: "momd")! - return NSManagedObjectModel(contentsOfURL: modelURL)! - }() - - lazy var persistentStoreCoordinator: NSPersistentStoreCoordinator? = { - // The persistent store coordinator for the application. This implementation creates and return a coordinator, having added the store for the application to it. This property is optional since there are legitimate error conditions that could cause the creation of the store to fail. - // Create the coordinator and store - var coordinator: NSPersistentStoreCoordinator? = NSPersistentStoreCoordinator(managedObjectModel: self.managedObjectModel) - let url = self.applicationDocumentsDirectory.URLByAppendingPathComponent("Example.sqlite") - var error: NSError? = nil - var failureReason = "There was an error creating or loading the application's saved data." - if coordinator!.addPersistentStoreWithType(NSSQLiteStoreType, configuration: nil, URL: url, options: nil, error: &error) == nil { - coordinator = nil - // Report any error we got. - let dict = NSMutableDictionary() - dict[NSLocalizedDescriptionKey] = "Failed to initialize the application's saved data" - dict[NSLocalizedFailureReasonErrorKey] = failureReason - dict[NSUnderlyingErrorKey] = error - error = NSError(domain: "YOUR_ERROR_DOMAIN", code: 9999, userInfo: dict) - // Replace this 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. - NSLog("Unresolved error \(error), \(error!.userInfo)") - abort() - } - - return coordinator - }() - - lazy var managedObjectContext: NSManagedObjectContext? = { - // Returns the managed object context for the application (which is already bound to the persistent store coordinator for the application.) This property is optional since there are legitimate error conditions that could cause the creation of the context to fail. - let coordinator = self.persistentStoreCoordinator - if coordinator == nil { - return nil - } - var managedObjectContext = NSManagedObjectContext() - managedObjectContext.persistentStoreCoordinator = coordinator - return managedObjectContext - }() - - // MARK: - Core Data Saving support - - func saveContext () { - if let moc = self.managedObjectContext { - var error: NSError? = nil - if moc.hasChanges && !moc.save(&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. - NSLog("Unresolved error \(error), \(error!.userInfo)") - abort() - } - } - } - -} - diff --git a/Example/Example/Base.lproj/LaunchScreen.xib b/Example/Example/Base.lproj/LaunchScreen.xib deleted file mode 100644 index e17e7b6..0000000 --- a/Example/Example/Base.lproj/LaunchScreen.xib +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Example/Example/Base.lproj/Main.storyboard b/Example/Example/Base.lproj/Main.storyboard deleted file mode 100644 index 3a2a49b..0000000 --- a/Example/Example/Base.lproj/Main.storyboard +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Example/Example/Example.xcdatamodeld/.xccurrentversion b/Example/Example/Example.xcdatamodeld/.xccurrentversion deleted file mode 100644 index 74c5c1b..0000000 --- a/Example/Example/Example.xcdatamodeld/.xccurrentversion +++ /dev/null @@ -1,8 +0,0 @@ - - - - - _XCCurrentVersionName - Example.xcdatamodel - - diff --git a/Example/Example/Example.xcdatamodeld/Example.xcdatamodel/contents b/Example/Example/Example.xcdatamodeld/Example.xcdatamodel/contents deleted file mode 100644 index 193f33c..0000000 --- a/Example/Example/Example.xcdatamodeld/Example.xcdatamodel/contents +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json b/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index 36d2c80..0000000 --- a/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "images" : [ - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "3x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "2x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Example/Example/Info.plist b/Example/Example/Info.plist deleted file mode 100644 index 9019bb3..0000000 --- a/Example/Example/Info.plist +++ /dev/null @@ -1,47 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - com.motionkit.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - LSRequiresIPhoneOS - - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - - diff --git a/Example/Example/ViewController.swift b/Example/Example/ViewController.swift deleted file mode 100644 index 1a226cd..0000000 --- a/Example/Example/ViewController.swift +++ /dev/null @@ -1,31 +0,0 @@ -// -// ViewController.swift -// Example -// -// Created by Haroon on 19/02/2015. -// Copyright (c) 2015 MotionKit. All rights reserved. -// - -import UIKit -import MotionKit - -class ViewController: UIViewController { - - let motionKit = MotionKit() - - override func viewDidLoad() { - super.viewDidLoad() - motionKit.getAccelerometerValues(interval: 1.0) { (x, y, z) -> () in - println(x) - } - // Do any additional setup after loading the view, typically from a nib. - } - - override func didReceiveMemoryWarning() { - super.didReceiveMemoryWarning() - // Dispose of any resources that can be recreated. - } - - -} - diff --git a/Example/ExampleTests/ExampleTests.swift b/Example/ExampleTests/ExampleTests.swift deleted file mode 100644 index 79d9dd8..0000000 --- a/Example/ExampleTests/ExampleTests.swift +++ /dev/null @@ -1,36 +0,0 @@ -// -// ExampleTests.swift -// ExampleTests -// -// Created by Haroon on 19/02/2015. -// Copyright (c) 2015 MotionKit. All rights reserved. -// - -import UIKit -import XCTest - -class ExampleTests: XCTestCase { - - override func setUp() { - super.setUp() - // Put setup code here. This method is called before the invocation of each test method in the class. - } - - override func tearDown() { - // Put teardown code here. This method is called after the invocation of each test method in the class. - super.tearDown() - } - - func testExample() { - // This is an example of a functional test case. - XCTAssert(true, "Pass") - } - - func testPerformanceExample() { - // This is an example of a performance test case. - self.measureBlock() { - // Put the code you want to measure the time of here. - } - } - -} diff --git a/Example/ExampleTests/Info.plist b/Example/ExampleTests/Info.plist deleted file mode 100644 index 0e76198..0000000 --- a/Example/ExampleTests/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - com.motionkit.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - - diff --git a/Example/MotionKit.xcodeproj/project.pbxproj b/Example/MotionKit.xcodeproj/project.pbxproj deleted file mode 100644 index f9980c2..0000000 --- a/Example/MotionKit.xcodeproj/project.pbxproj +++ /dev/null @@ -1,414 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 75FDED5B1A9541F800283A97 /* MotionKit.h in Headers */ = {isa = PBXBuildFile; fileRef = 75FDED5A1A9541F800283A97 /* MotionKit.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 75FDED611A9541F800283A97 /* MotionKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 75FDED551A9541F800283A97 /* MotionKit.framework */; }; - 75FDED681A9541F800283A97 /* MotionKitTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75FDED671A9541F800283A97 /* MotionKitTests.swift */; }; - 75FDED721A95422200283A97 /* MotionKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75FDED711A95422200283A97 /* MotionKit.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 75FDED621A9541F800283A97 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 75FDED4C1A9541F800283A97 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 75FDED541A9541F800283A97; - remoteInfo = MotionKit; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXFileReference section */ - 75FDED551A9541F800283A97 /* MotionKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MotionKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 75FDED591A9541F800283A97 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 75FDED5A1A9541F800283A97 /* MotionKit.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MotionKit.h; sourceTree = ""; }; - 75FDED601A9541F800283A97 /* MotionKitTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MotionKitTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 75FDED661A9541F800283A97 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 75FDED671A9541F800283A97 /* MotionKitTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MotionKitTests.swift; sourceTree = ""; }; - 75FDED711A95422200283A97 /* MotionKit.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MotionKit.swift; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 75FDED511A9541F800283A97 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 75FDED5D1A9541F800283A97 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 75FDED611A9541F800283A97 /* MotionKit.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 75FDED4B1A9541F800283A97 = { - isa = PBXGroup; - children = ( - 75FDED571A9541F800283A97 /* MotionKit */, - 75FDED641A9541F800283A97 /* MotionKitTests */, - 75FDED561A9541F800283A97 /* Products */, - ); - sourceTree = ""; - }; - 75FDED561A9541F800283A97 /* Products */ = { - isa = PBXGroup; - children = ( - 75FDED551A9541F800283A97 /* MotionKit.framework */, - 75FDED601A9541F800283A97 /* MotionKitTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - 75FDED571A9541F800283A97 /* MotionKit */ = { - isa = PBXGroup; - children = ( - 75FDED5A1A9541F800283A97 /* MotionKit.h */, - 75FDED711A95422200283A97 /* MotionKit.swift */, - 75FDED581A9541F800283A97 /* Supporting Files */, - ); - path = MotionKit; - sourceTree = ""; - }; - 75FDED581A9541F800283A97 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 75FDED591A9541F800283A97 /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; - 75FDED641A9541F800283A97 /* MotionKitTests */ = { - isa = PBXGroup; - children = ( - 75FDED671A9541F800283A97 /* MotionKitTests.swift */, - 75FDED651A9541F800283A97 /* Supporting Files */, - ); - path = MotionKitTests; - sourceTree = ""; - }; - 75FDED651A9541F800283A97 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 75FDED661A9541F800283A97 /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 75FDED521A9541F800283A97 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 75FDED5B1A9541F800283A97 /* MotionKit.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 75FDED541A9541F800283A97 /* MotionKit */ = { - isa = PBXNativeTarget; - buildConfigurationList = 75FDED6B1A9541F800283A97 /* Build configuration list for PBXNativeTarget "MotionKit" */; - buildPhases = ( - 75FDED501A9541F800283A97 /* Sources */, - 75FDED511A9541F800283A97 /* Frameworks */, - 75FDED521A9541F800283A97 /* Headers */, - 75FDED531A9541F800283A97 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = MotionKit; - productName = MotionKit; - productReference = 75FDED551A9541F800283A97 /* MotionKit.framework */; - productType = "com.apple.product-type.framework"; - }; - 75FDED5F1A9541F800283A97 /* MotionKitTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 75FDED6E1A9541F800283A97 /* Build configuration list for PBXNativeTarget "MotionKitTests" */; - buildPhases = ( - 75FDED5C1A9541F800283A97 /* Sources */, - 75FDED5D1A9541F800283A97 /* Frameworks */, - 75FDED5E1A9541F800283A97 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 75FDED631A9541F800283A97 /* PBXTargetDependency */, - ); - name = MotionKitTests; - productName = MotionKitTests; - productReference = 75FDED601A9541F800283A97 /* MotionKitTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 75FDED4C1A9541F800283A97 /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 0610; - ORGANIZATIONNAME = MotionKit; - TargetAttributes = { - 75FDED541A9541F800283A97 = { - CreatedOnToolsVersion = 6.1.1; - }; - 75FDED5F1A9541F800283A97 = { - CreatedOnToolsVersion = 6.1.1; - }; - }; - }; - buildConfigurationList = 75FDED4F1A9541F800283A97 /* Build configuration list for PBXProject "MotionKit" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - en, - ); - mainGroup = 75FDED4B1A9541F800283A97; - productRefGroup = 75FDED561A9541F800283A97 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 75FDED541A9541F800283A97 /* MotionKit */, - 75FDED5F1A9541F800283A97 /* MotionKitTests */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 75FDED531A9541F800283A97 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 75FDED5E1A9541F800283A97 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 75FDED501A9541F800283A97 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 75FDED721A95422200283A97 /* MotionKit.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 75FDED5C1A9541F800283A97 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 75FDED681A9541F800283A97 /* MotionKitTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 75FDED631A9541F800283A97 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 75FDED541A9541F800283A97 /* MotionKit */; - targetProxy = 75FDED621A9541F800283A97 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin XCBuildConfiguration section */ - 75FDED691A9541F800283A97 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.1; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 75FDED6A1A9541F800283A97 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = YES; - CURRENT_PROJECT_VERSION = 1; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.1; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 75FDED6C1A9541F800283A97 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = MotionKit/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - }; - name = Debug; - }; - 75FDED6D1A9541F800283A97 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = MotionKit/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - }; - name = Release; - }; - 75FDED6F1A9541F800283A97 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = MotionKitTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 75FDED701A9541F800283A97 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - INFOPLIST_FILE = MotionKitTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 75FDED4F1A9541F800283A97 /* Build configuration list for PBXProject "MotionKit" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 75FDED691A9541F800283A97 /* Debug */, - 75FDED6A1A9541F800283A97 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 75FDED6B1A9541F800283A97 /* Build configuration list for PBXNativeTarget "MotionKit" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 75FDED6C1A9541F800283A97 /* Debug */, - 75FDED6D1A9541F800283A97 /* Release */, - ); - defaultConfigurationIsVisible = 0; - }; - 75FDED6E1A9541F800283A97 /* Build configuration list for PBXNativeTarget "MotionKitTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 75FDED6F1A9541F800283A97 /* Debug */, - 75FDED701A9541F800283A97 /* Release */, - ); - defaultConfigurationIsVisible = 0; - }; -/* End XCConfigurationList section */ - }; - rootObject = 75FDED4C1A9541F800283A97 /* Project object */; -} diff --git a/Example/MotionKit.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Example/MotionKit.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 9488daa..0000000 --- a/Example/MotionKit.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/Example/MotionKit.xcodeproj/project.xcworkspace/xcshareddata/MotionKit.xccheckout b/Example/MotionKit.xcodeproj/project.xcworkspace/xcshareddata/MotionKit.xccheckout deleted file mode 100644 index bda6749..0000000 --- a/Example/MotionKit.xcodeproj/project.xcworkspace/xcshareddata/MotionKit.xccheckout +++ /dev/null @@ -1,41 +0,0 @@ - - - - - IDESourceControlProjectFavoriteDictionaryKey - - IDESourceControlProjectIdentifier - B2C25DDE-3EBB-4B73-A6E7-0C6873FBEC2C - IDESourceControlProjectName - MotionKit - IDESourceControlProjectOriginsDictionary - - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - https://github.com/MHaroonBaig/MotionKit.git - - IDESourceControlProjectPath - MotionKit.xcodeproj - IDESourceControlProjectRelativeInstallPathDictionary - - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - ../.. - - IDESourceControlProjectURL - https://github.com/MHaroonBaig/MotionKit.git - IDESourceControlProjectVersion - 111 - IDESourceControlProjectWCCIdentifier - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - IDESourceControlProjectWCConfigurations - - - IDESourceControlRepositoryExtensionIdentifierKey - public.vcs.git - IDESourceControlWCCIdentifierKey - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - IDESourceControlWCCName - MotionKit - - - - diff --git a/Example/MotionKit.xcodeproj/project.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate b/Example/MotionKit.xcodeproj/project.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index 4320fc19d925e779baf537bd9aa4c5637ca5df78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12474 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 diff --git a/Example/MotionKit.xcodeproj/xcshareddata/xcschemes/MotionKit.xcscheme b/Example/MotionKit.xcodeproj/xcshareddata/xcschemes/MotionKit.xcscheme deleted file mode 100644 index 09efd47..0000000 --- a/Example/MotionKit.xcodeproj/xcshareddata/xcschemes/MotionKit.xcscheme +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Example/MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist b/Example/MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index 04037a4..0000000 --- a/Example/MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,27 +0,0 @@ - - - - - SchemeUserState - - MotionKit.xcscheme_^#shared#^_ - - orderHint - 0 - - - SuppressBuildableAutocreation - - 75FDED541A9541F800283A97 - - primary - - - 75FDED5F1A9541F800283A97 - - primary - - - - - diff --git a/Example/MotionKit/Info.plist b/Example/MotionKit/Info.plist deleted file mode 100644 index c328732..0000000 --- a/Example/MotionKit/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - com.motionkit.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - NSPrincipalClass - - - diff --git a/Example/MotionKit/MotionKit.h b/Example/MotionKit/MotionKit.h deleted file mode 100644 index 3feca5b..0000000 --- a/Example/MotionKit/MotionKit.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// MotionKit.h -// MotionKit -// -// Created by Haroon on 19/02/2015. -// Copyright (c) 2015 MotionKit. All rights reserved. -// - -#import - -//! Project version number for MotionKit. -FOUNDATION_EXPORT double MotionKitVersionNumber; - -//! Project version string for MotionKit. -FOUNDATION_EXPORT const unsigned char MotionKitVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/Example/MotionKit/MotionKit.swift b/Example/MotionKit/MotionKit.swift deleted file mode 100644 index 38fb9da..0000000 --- a/Example/MotionKit/MotionKit.swift +++ /dev/null @@ -1,456 +0,0 @@ -// -// MotionKit.swift -// MotionKit -// -// Created by Haroon on 14/02/2015. -// Launched under the Creative Commons License. You're free to use MotionKit. -// -// The original Github repository is https://github.com/MHaroonBaig/MotionKit -// The official blog post and documentation is https://medium.com/@PyBaig/motionkit-the-missing-ios-coremotion-wrapper-written-in-swift-99fcb83355d0 -// - -import Foundation -import CoreMotion - -//_______________________________________________________________________________________________________________ -// this helps retrieve values from the sensors. -@objc protocol MotionKitDelegate { - optional func retrieveAccelerometerValues (x: Double, y:Double, z:Double, absoluteValue: Double) - optional func retrieveGyroscopeValues (x: Double, y:Double, z:Double, absoluteValue: Double) - optional func retrieveDeviceMotionObject (deviceMotion: CMDeviceMotion) - optional func retrieveMagnetometerValues (x: Double, y:Double, z:Double, absoluteValue: Double) - - optional func getAccelerationValFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getGravityAccelerationValFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getRotationRateFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getMagneticFieldFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getAttitudeFromDeviceMotion (attitude: CMAttitude) -} - - -public class MotionKit { - - let manager = CMMotionManager() - var delegate: MotionKitDelegate? - - /* - * init:void: - * - * Discussion: - * Initialises the MotionKit class and throw a Log with a timestamp. - */ - public init(){ - NSLog("MotionKit has been initialised successfully") - } - - /* - * getAccelerometerValues:interval:values: - * - * Discussion: - * Starts accelerometer updates, providing data to the given handler through the given queue. - * Note that when the updates are stopped, all operations in the - * given NSOperationQueue will be cancelled. You can access the retrieved values either by a - * Trailing Closure or through a Delgate. - */ - public func getAccelerometerValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y: Double, z: Double) -> ())? ){ - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.accelerometerAvailable { - manager.accelerometerUpdateInterval = interval - manager.startAccelerometerUpdatesToQueue(NSOperationQueue()) { - (data: CMAccelerometerData!, error: NSError!) in - - if let isError = error { - NSLog("Error: %@", isError) - } - valX = data.acceleration.x - valY = data.acceleration.y - valZ = data.acceleration.z - - if values != nil{ - values!(x: valX,y: valY,z: valZ) - } - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.retrieveAccelerometerValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) - } - - } else { - NSLog("The Accelerometer is not available") - } - } - - /* - * getGyroValues:interval:values: - * - * Discussion: - * Starts gyro updates, providing data to the given handler through the given queue. - * Note that when the updates are stopped, all operations in the - * given NSOperationQueue will be cancelled. You can access the retrieved values either by a - * Trailing Closure or through a Delegate. - */ - public func getGyroValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y: Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.gyroAvailable{ - manager.gyroUpdateInterval = interval - manager.startGyroUpdatesToQueue(NSOperationQueue()) { - (data: CMGyroData!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.rotationRate.x - valY = data.rotationRate.y - valZ = data.rotationRate.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.retrieveGyroscopeValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) - } - - } else { - NSLog("The Gyroscope is not available") - } - } - - /* - * getMagnetometerValues:interval:values: - * - * Discussion: - * Starts magnetometer updates, providing data to the given handler through the given queue. - * You can access the retrieved values either by a Trailing Closure or through a Delegate. - */ - @availability(iOS, introduced=5.0) - public func getMagnetometerValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y:Double, z:Double) -> ())? ){ - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.magnetometerAvailable { - manager.magnetometerUpdateInterval = interval - manager.startMagnetometerUpdatesToQueue(NSOperationQueue()){ - (data: CMMagnetometerData!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.magneticField.x - valY = data.magneticField.y - valZ = data.magneticField.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.retrieveMagnetometerValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) - } - - } else { - NSLog("Magnetometer is not available") - } - } - - /* MARK :- DEVICE MOTION APPROACH STARTS HERE */ - - /* - * getDeviceMotionValues:interval:values: - * - * Discussion: - * Starts device motion updates, providing data to the given handler through the given queue. - * Uses the default reference frame for the device. Examine CMMotionManager's - * attitudeReferenceFrame to determine this. You can access the retrieved values either by a - * Trailing Closure or through a Delegate. - */ - public func getDeviceMotionObject (interval: NSTimeInterval = 0.1, values: ((deviceMotion: CMDeviceMotion) -> ())? ) { - - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - if values != nil{ - values!(deviceMotion: data) - } - self.delegate?.retrieveDeviceMotionObject!(data) - } - - } else { - NSLog("Device Motion is not available") - } - } - - - /* - * getAccelerationFromDeviceMotion:interval:values: - * You can retrieve the processed user accelaration data from the device motion from this method. - */ - public func getAccelerationFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.userAcceleration.x - valY = data.userAcceleration.y - valZ = data.userAcceleration.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - - self.delegate?.getAccelerationValFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is unavailable") - } - } - - /* - * getGravityAccelerationFromDeviceMotion:interval:values: - * You can retrieve the processed gravitational accelaration data from the device motion from this - * method. - */ - public func getGravityAccelerationFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.gravity.x - valY = data.gravity.y - valZ = data.gravity.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.getGravityAccelerationValFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is not available") - } - } - - - /* - * getAttitudeFromDeviceMotion:interval:values: - * You can retrieve the processed attitude data from the device motion from this - * method. - */ - public func getAttitudeFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((attitude: CMAttitude) -> ())? ) { - - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - if values != nil{ - values!(attitude: data.attitude) - } - - self.delegate?.getAttitudeFromDeviceMotion!(data.attitude) - } - - } else { - NSLog("Device Motion is not available") - } - } - - /* - * getRotationRateFromDeviceMotion:interval:values: - * You can retrieve the processed rotation data from the device motion from this - * method. - */ - public func getRotationRateFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.rotationRate.x - valY = data.rotationRate.y - valZ = data.rotationRate.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.getRotationRateFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is not available") - } - } - - - /* - * getMagneticFieldFromDeviceMotion:interval:values: - * You can retrieve the processed magnetic field data from the device motion from this - * method. - */ - public func getMagneticFieldFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double, accuracy: Int32) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - var valAccuracy: Int32! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.magneticField.field.x - valY = data.magneticField.field.y - valZ = data.magneticField.field.z - valAccuracy = data.magneticField.accuracy.value - - - if values != nil{ - values!(x: valX, y: valY, z: valZ, accuracy: valAccuracy) - } - - self.delegate?.getMagneticFieldFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is not available") - } - } - - /* MARK :- DEVICE MOTION APPROACH ENDS HERE */ - - - /* - * From the methods hereafter, the sensor values could be retrieved at - * a particular instant, whenever needed, through a trailing closure. - */ - - /* MARK :- INSTANTANIOUS METHODS START HERE */ - - public func getAccelerationAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getAccelerationFromDeviceMotion(interval: 0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - public func getGravitationalAccelerationAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getGravityAccelerationFromDeviceMotion(interval: 0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - public func getAttitudeAtCurrentInstant (values: (attitude: CMAttitude) -> ()){ - self.getAttitudeFromDeviceMotion(interval: 0.5) { (attitude) -> () in - values(attitude: attitude) - self.stopDeviceMotionUpdates() - } - - } - - public func getMageticFieldAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getMagneticFieldFromDeviceMotion(interval: 0.5) { (x, y, z, accuracy) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - public func getGyroValuesAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getRotationRateFromDeviceMotion(interval: 0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - /* MARK :- INSTANTANIOUS METHODS END HERE */ - - - - /* - * stopAccelerometerUpdates - * - * Discussion: - * Stop accelerometer updates. - */ - public func stopAccelerometerUpdates(){ - self.manager.stopAccelerometerUpdates() - NSLog("Accelaration Updates Status - Stopped") - } - - /* - * stopGyroUpdates - * - * Discussion: - * Stops gyro updates. - */ - public func stopGyroUpdates(){ - self.manager.stopGyroUpdates() - NSLog("Gyroscope Updates Status - Stopped") - } - - /* - * stopDeviceMotionUpdates - * - * Discussion: - * Stops device motion updates. - */ - public func stopDeviceMotionUpdates() { - self.manager.stopDeviceMotionUpdates() - NSLog("Device Motion Updates Status - Stopped") - } - - /* - * stopMagnetometerUpdates - * - * Discussion: - * Stops magnetometer updates. - */ - @availability(iOS, introduced=5.0) - public func stopmagnetometerUpdates() { - self.manager.stopMagnetometerUpdates() - NSLog("Magnetometer Updates Status - Stopped") - } - -} \ No newline at end of file diff --git a/Example/MotionKitTests/Info.plist b/Example/MotionKitTests/Info.plist deleted file mode 100644 index 0e76198..0000000 --- a/Example/MotionKitTests/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - com.motionkit.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - - diff --git a/Example/MotionKitTests/MotionKitTests.swift b/Example/MotionKitTests/MotionKitTests.swift deleted file mode 100644 index d78e1e7..0000000 --- a/Example/MotionKitTests/MotionKitTests.swift +++ /dev/null @@ -1,36 +0,0 @@ -// -// MotionKitTests.swift -// MotionKitTests -// -// Created by Haroon on 19/02/2015. -// Copyright (c) 2015 MotionKit. All rights reserved. -// - -import UIKit -import XCTest - -class MotionKitTests: XCTestCase { - - override func setUp() { - super.setUp() - // Put setup code here. This method is called before the invocation of each test method in the class. - } - - override func tearDown() { - // Put teardown code here. This method is called after the invocation of each test method in the class. - super.tearDown() - } - - func testExample() { - // This is an example of a functional test case. - XCTAssert(true, "Pass") - } - - func testPerformanceExample() { - // This is an example of a performance test case. - self.measureBlock() { - // Put the code you want to measure the time of here. - } - } - -} diff --git a/MotionKit.xcodeproj/project.pbxproj b/MotionKit.xcodeproj/project.pbxproj index 452286b..5ac8a7d 100644 --- a/MotionKit.xcodeproj/project.pbxproj +++ b/MotionKit.xcodeproj/project.pbxproj @@ -7,126 +7,76 @@ objects = { /* Begin PBXBuildFile section */ - 75FDED5B1A9541F800283A97 /* MotionKit.h in Headers */ = {isa = PBXBuildFile; fileRef = 75FDED5A1A9541F800283A97 /* MotionKit.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 75FDED611A9541F800283A97 /* MotionKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 75FDED551A9541F800283A97 /* MotionKit.framework */; }; - 75FDED681A9541F800283A97 /* MotionKitTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75FDED671A9541F800283A97 /* MotionKitTests.swift */; }; - 75FDED721A95422200283A97 /* MotionKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75FDED711A95422200283A97 /* MotionKit.swift */; }; + 4829612B1D9FC4B000199FC3 /* MotionKit.h in Headers */ = {isa = PBXBuildFile; fileRef = 482961291D9FC4B000199FC3 /* MotionKit.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 482961301D9FC4E000199FC3 /* MotionKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4829612F1D9FC4E000199FC3 /* MotionKit.swift */; }; /* End PBXBuildFile section */ -/* Begin PBXContainerItemProxy section */ - 75FDED621A9541F800283A97 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 75FDED4C1A9541F800283A97 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 75FDED541A9541F800283A97; - remoteInfo = MotionKit; - }; -/* End PBXContainerItemProxy section */ - /* Begin PBXFileReference section */ - 75FDED551A9541F800283A97 /* MotionKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MotionKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 75FDED591A9541F800283A97 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 75FDED5A1A9541F800283A97 /* MotionKit.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MotionKit.h; sourceTree = ""; }; - 75FDED601A9541F800283A97 /* MotionKitTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MotionKitTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 75FDED661A9541F800283A97 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 75FDED671A9541F800283A97 /* MotionKitTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MotionKitTests.swift; sourceTree = ""; }; - 75FDED711A95422200283A97 /* MotionKit.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MotionKit.swift; sourceTree = ""; }; + 482961261D9FC4B000199FC3 /* MotionKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MotionKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 482961291D9FC4B000199FC3 /* MotionKit.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MotionKit.h; sourceTree = ""; }; + 4829612A1D9FC4B000199FC3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 4829612F1D9FC4E000199FC3 /* MotionKit.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MotionKit.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 75FDED511A9541F800283A97 /* Frameworks */ = { + 482961221D9FC4B000199FC3 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 75FDED5D1A9541F800283A97 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 75FDED611A9541F800283A97 /* MotionKit.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 75FDED4B1A9541F800283A97 = { + 4829611A1D9FC3C800199FC3 = { isa = PBXGroup; children = ( - 75FDED571A9541F800283A97 /* MotionKit */, - 75FDED641A9541F800283A97 /* MotionKitTests */, - 75FDED561A9541F800283A97 /* Products */, + 482961281D9FC4B000199FC3 /* MotionKit */, + 482961271D9FC4B000199FC3 /* Products */, ); sourceTree = ""; }; - 75FDED561A9541F800283A97 /* Products */ = { + 482961271D9FC4B000199FC3 /* Products */ = { isa = PBXGroup; children = ( - 75FDED551A9541F800283A97 /* MotionKit.framework */, - 75FDED601A9541F800283A97 /* MotionKitTests.xctest */, + 482961261D9FC4B000199FC3 /* MotionKit.framework */, ); name = Products; sourceTree = ""; }; - 75FDED571A9541F800283A97 /* MotionKit */ = { + 482961281D9FC4B000199FC3 /* MotionKit */ = { isa = PBXGroup; children = ( - 75FDED5A1A9541F800283A97 /* MotionKit.h */, - 75FDED711A95422200283A97 /* MotionKit.swift */, - 75FDED581A9541F800283A97 /* Supporting Files */, + 482961291D9FC4B000199FC3 /* MotionKit.h */, + 4829612A1D9FC4B000199FC3 /* Info.plist */, + 4829612F1D9FC4E000199FC3 /* MotionKit.swift */, ); path = MotionKit; sourceTree = ""; }; - 75FDED581A9541F800283A97 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 75FDED591A9541F800283A97 /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; - 75FDED641A9541F800283A97 /* MotionKitTests */ = { - isa = PBXGroup; - children = ( - 75FDED671A9541F800283A97 /* MotionKitTests.swift */, - 75FDED651A9541F800283A97 /* Supporting Files */, - ); - path = MotionKitTests; - sourceTree = ""; - }; - 75FDED651A9541F800283A97 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 75FDED661A9541F800283A97 /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 75FDED521A9541F800283A97 /* Headers */ = { + 482961231D9FC4B000199FC3 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 75FDED5B1A9541F800283A97 /* MotionKit.h in Headers */, + 4829612B1D9FC4B000199FC3 /* MotionKit.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 75FDED541A9541F800283A97 /* MotionKit */ = { + 482961251D9FC4B000199FC3 /* MotionKit */ = { isa = PBXNativeTarget; - buildConfigurationList = 75FDED6B1A9541F800283A97 /* Build configuration list for PBXNativeTarget "MotionKit" */; + buildConfigurationList = 4829612C1D9FC4B000199FC3 /* Build configuration list for PBXNativeTarget "MotionKit" */; buildPhases = ( - 75FDED501A9541F800283A97 /* Sources */, - 75FDED511A9541F800283A97 /* Frameworks */, - 75FDED521A9541F800283A97 /* Headers */, - 75FDED531A9541F800283A97 /* Resources */, + 482961211D9FC4B000199FC3 /* Sources */, + 482961221D9FC4B000199FC3 /* Frameworks */, + 482961231D9FC4B000199FC3 /* Headers */, + 482961241D9FC4B000199FC3 /* Resources */, ); buildRules = ( ); @@ -134,73 +84,43 @@ ); name = MotionKit; productName = MotionKit; - productReference = 75FDED551A9541F800283A97 /* MotionKit.framework */; + productReference = 482961261D9FC4B000199FC3 /* MotionKit.framework */; productType = "com.apple.product-type.framework"; }; - 75FDED5F1A9541F800283A97 /* MotionKitTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 75FDED6E1A9541F800283A97 /* Build configuration list for PBXNativeTarget "MotionKitTests" */; - buildPhases = ( - 75FDED5C1A9541F800283A97 /* Sources */, - 75FDED5D1A9541F800283A97 /* Frameworks */, - 75FDED5E1A9541F800283A97 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 75FDED631A9541F800283A97 /* PBXTargetDependency */, - ); - name = MotionKitTests; - productName = MotionKitTests; - productReference = 75FDED601A9541F800283A97 /* MotionKitTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - 75FDED4C1A9541F800283A97 /* Project object */ = { + 4829611B1D9FC3C800199FC3 /* Project object */ = { isa = PBXProject; attributes = { LastUpgradeCheck = 0800; - ORGANIZATIONNAME = MotionKit; TargetAttributes = { - 75FDED541A9541F800283A97 = { - CreatedOnToolsVersion = 6.1.1; - LastSwiftMigration = 0800; - }; - 75FDED5F1A9541F800283A97 = { - CreatedOnToolsVersion = 6.1.1; + 482961251D9FC4B000199FC3 = { + CreatedOnToolsVersion = 8.0; LastSwiftMigration = 0800; + ProvisioningStyle = Automatic; }; }; }; - buildConfigurationList = 75FDED4F1A9541F800283A97 /* Build configuration list for PBXProject "MotionKit" */; + buildConfigurationList = 4829611E1D9FC3C800199FC3 /* Build configuration list for PBXProject "MotionKit" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( en, ); - mainGroup = 75FDED4B1A9541F800283A97; - productRefGroup = 75FDED561A9541F800283A97 /* Products */; + mainGroup = 4829611A1D9FC3C800199FC3; + productRefGroup = 482961271D9FC4B000199FC3 /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - 75FDED541A9541F800283A97 /* MotionKit */, - 75FDED5F1A9541F800283A97 /* MotionKitTests */, + 482961251D9FC4B000199FC3 /* MotionKit */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - 75FDED531A9541F800283A97 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 75FDED5E1A9541F800283A97 /* Resources */ = { + 482961241D9FC4B000199FC3 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -210,37 +130,34 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 75FDED501A9541F800283A97 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 75FDED721A95422200283A97 /* MotionKit.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 75FDED5C1A9541F800283A97 /* Sources */ = { + 482961211D9FC4B000199FC3 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 75FDED681A9541F800283A97 /* MotionKitTests.swift in Sources */, + 482961301D9FC4E000199FC3 /* MotionKit.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ -/* Begin PBXTargetDependency section */ - 75FDED631A9541F800283A97 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 75FDED541A9541F800283A97 /* MotionKit */; - targetProxy = 75FDED621A9541F800283A97 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - /* Begin XCBuildConfiguration section */ - 75FDED691A9541F800283A97 /* Debug */ = { + 4829611F1D9FC3C800199FC3 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + }; + name = Debug; + }; + 482961201D9FC3C800199FC3 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + }; + name = Release; + }; + 4829612D1D9FC4B000199FC3 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; @@ -248,15 +165,24 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_SUSPICIOUS_MOVES = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -267,17 +193,23 @@ "DEBUG=1", "$(inherited)", ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.1; + INFOPLIST_FILE = MotionKit/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; + PRODUCT_BUNDLE_IDENTIFIER = com.MotionKit; + PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -286,10 +218,11 @@ }; name = Debug; }; - 75FDED6A1A9541F800283A97 /* Release */ = { + 4829612E1D9FC4B000199FC3 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; @@ -297,15 +230,24 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_SUSPICIOUS_MOVES = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = YES; + COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -316,118 +258,45 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.1; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SWIFT_VERSION = 3.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 75FDED6C1A9541F800283A97 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = MotionKit/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.motionkit.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - SWIFT_VERSION = 3.0; - }; - name = Debug; - }; - 75FDED6D1A9541F800283A97 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = MotionKit/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.motionkit.$(PRODUCT_NAME:rfc1034identifier)"; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = com.MotionKit; PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; SWIFT_VERSION = 3.0; - }; - name = Release; - }; - 75FDED6F1A9541F800283A97 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = MotionKitTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.motionkit.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; - }; - name = Debug; - }; - 75FDED701A9541F800283A97 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - INFOPLIST_FILE = MotionKitTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "com.motionkit.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 3.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; }; name = Release; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 75FDED4F1A9541F800283A97 /* Build configuration list for PBXProject "MotionKit" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 75FDED691A9541F800283A97 /* Debug */, - 75FDED6A1A9541F800283A97 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 75FDED6B1A9541F800283A97 /* Build configuration list for PBXNativeTarget "MotionKit" */ = { + 4829611E1D9FC3C800199FC3 /* Build configuration list for PBXProject "MotionKit" */ = { isa = XCConfigurationList; buildConfigurations = ( - 75FDED6C1A9541F800283A97 /* Debug */, - 75FDED6D1A9541F800283A97 /* Release */, + 4829611F1D9FC3C800199FC3 /* Debug */, + 482961201D9FC3C800199FC3 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 75FDED6E1A9541F800283A97 /* Build configuration list for PBXNativeTarget "MotionKitTests" */ = { + 4829612C1D9FC4B000199FC3 /* Build configuration list for PBXNativeTarget "MotionKit" */ = { isa = XCConfigurationList; buildConfigurations = ( - 75FDED6F1A9541F800283A97 /* Debug */, - 75FDED701A9541F800283A97 /* Release */, + 4829612D1D9FC4B000199FC3 /* Debug */, + 4829612E1D9FC4B000199FC3 /* Release */, ); defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; - rootObject = 75FDED4C1A9541F800283A97 /* Project object */; + rootObject = 4829611B1D9FC3C800199FC3 /* Project object */; } diff --git a/MotionKit.xcodeproj/project.xcworkspace/xcshareddata/MotionKit.xccheckout b/MotionKit.xcodeproj/project.xcworkspace/xcshareddata/MotionKit.xccheckout deleted file mode 100644 index bda6749..0000000 --- a/MotionKit.xcodeproj/project.xcworkspace/xcshareddata/MotionKit.xccheckout +++ /dev/null @@ -1,41 +0,0 @@ - - - - - IDESourceControlProjectFavoriteDictionaryKey - - IDESourceControlProjectIdentifier - B2C25DDE-3EBB-4B73-A6E7-0C6873FBEC2C - IDESourceControlProjectName - MotionKit - IDESourceControlProjectOriginsDictionary - - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - https://github.com/MHaroonBaig/MotionKit.git - - IDESourceControlProjectPath - MotionKit.xcodeproj - IDESourceControlProjectRelativeInstallPathDictionary - - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - ../.. - - IDESourceControlProjectURL - https://github.com/MHaroonBaig/MotionKit.git - IDESourceControlProjectVersion - 111 - IDESourceControlProjectWCCIdentifier - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - IDESourceControlProjectWCConfigurations - - - IDESourceControlRepositoryExtensionIdentifierKey - public.vcs.git - IDESourceControlWCCIdentifierKey - 0AD0CF4CC579879FDDE65582CCF9532E9A9D1D6E - IDESourceControlWCCName - MotionKit - - - - diff --git a/MotionKit.xcodeproj/project.xcworkspace/xcuserdata/herrk.xcuserdatad/UserInterfaceState.xcuserstate b/MotionKit.xcodeproj/project.xcworkspace/xcuserdata/herrk.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index 77ff50750df69109afff6a9699f3fb794de4b47a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12586 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 E4?3kshX4Qo diff --git a/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/MotionKit.xcscheme b/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/MotionKit.xcscheme deleted file mode 100644 index 36348d9..0000000 --- a/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/MotionKit.xcscheme +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/xcschememanagement.plist b/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index d78602b..0000000 --- a/MotionKit.xcodeproj/xcuserdata/herrk.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,27 +0,0 @@ - - - - - SchemeUserState - - MotionKit.xcscheme - - orderHint - 0 - - - SuppressBuildableAutocreation - - 75FDED541A9541F800283A97 - - primary - - - 75FDED5F1A9541F800283A97 - - primary - - - - - diff --git a/MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/MotionKit.xcscheme b/MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/MotionKit.xcscheme deleted file mode 100644 index 09efd47..0000000 --- a/MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/MotionKit.xcscheme +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist b/MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index d78602b..0000000 --- a/MotionKit.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,27 +0,0 @@ - - - - - SchemeUserState - - MotionKit.xcscheme - - orderHint - 0 - - - SuppressBuildableAutocreation - - 75FDED541A9541F800283A97 - - primary - - - 75FDED5F1A9541F800283A97 - - primary - - - - - diff --git a/MotionKit/Info.plist b/MotionKit/Info.plist index d3de8ee..fbe1e6b 100644 --- a/MotionKit/Info.plist +++ b/MotionKit/Info.plist @@ -16,8 +16,6 @@ FMWK CFBundleShortVersionString 1.0 - CFBundleSignature - ???? CFBundleVersion $(CURRENT_PROJECT_VERSION) NSPrincipalClass diff --git a/MotionKit/MotionKit.h b/MotionKit/MotionKit.h index 3feca5b..e6256ec 100644 --- a/MotionKit/MotionKit.h +++ b/MotionKit/MotionKit.h @@ -2,8 +2,8 @@ // MotionKit.h // MotionKit // -// Created by Haroon on 19/02/2015. -// Copyright (c) 2015 MotionKit. All rights reserved. +// Created by Pawel Kania on 01/10/2016. +// // #import diff --git a/MotionKitTests/Info.plist b/MotionKitTests/Info.plist deleted file mode 100644 index ba72822..0000000 --- a/MotionKitTests/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - - diff --git a/MotionKitTests/MotionKitTests.swift b/MotionKitTests/MotionKitTests.swift deleted file mode 100644 index 0d36021..0000000 --- a/MotionKitTests/MotionKitTests.swift +++ /dev/null @@ -1,36 +0,0 @@ -// -// MotionKitTests.swift -// MotionKitTests -// -// Created by Haroon on 19/02/2015. -// Copyright (c) 2015 MotionKit. All rights reserved. -// - -import UIKit -import XCTest - -class MotionKitTests: XCTestCase { - - override func setUp() { - super.setUp() - // Put setup code here. This method is called before the invocation of each test method in the class. - } - - override func tearDown() { - // Put teardown code here. This method is called after the invocation of each test method in the class. - super.tearDown() - } - - func testExample() { - // This is an example of a functional test case. - XCTAssert(true, "Pass") - } - - func testPerformanceExample() { - // This is an example of a performance test case. - self.measure() { - // Put the code you want to measure the time of here. - } - } - -} diff --git a/Objective-C example/test/Podfile.lock b/Objective-C example/test/Podfile.lock deleted file mode 100644 index a1cc0ed..0000000 --- a/Objective-C example/test/Podfile.lock +++ /dev/null @@ -1,19 +0,0 @@ -PODS: - - MotionKit (0.7) - -DEPENDENCIES: - - MotionKit (from `https://github.com/MHaroonBaig/MotionKit.git`) - -EXTERNAL SOURCES: - MotionKit: - :git: https://github.com/MHaroonBaig/MotionKit.git - -CHECKOUT OPTIONS: - MotionKit: - :commit: 70238a68f16ec55082f8779a4365f69cd7af2f24 - :git: https://github.com/MHaroonBaig/MotionKit.git - -SPEC CHECKSUMS: - MotionKit: 05f62b8cf0ff804a2ee0fc968ef244ba0810e73b - -COCOAPODS: 0.36.0.beta.2 diff --git a/Objective-C example/test/Pods/Local Podspecs/MotionKit.podspec.json b/Objective-C example/test/Pods/Local Podspecs/MotionKit.podspec.json deleted file mode 100644 index 8afd89f..0000000 --- a/Objective-C example/test/Pods/Local Podspecs/MotionKit.podspec.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "MotionKit", - "version": "0.7", - "license": "MIT", - "summary": "CoreMotion Made insanely simple", - "homepage": "https://github.com/MHaroonBaig/MotionKit", - "social_media_url": "https://twitter.com/PyBaig", - "authors": { - "Haroon Baig": "haroon.prog@gmail.com" - }, - "source": { - "git": "https://github.com/MHaroonBaig/MotionKit.git", - "tag": "0.7" - }, - "platforms": { - "ios": "8.0" - }, - "source_files": "MotionKit/*.swift", - "requires_arc": true -} diff --git a/Objective-C example/test/Pods/Manifest.lock b/Objective-C example/test/Pods/Manifest.lock deleted file mode 100644 index a1cc0ed..0000000 --- a/Objective-C example/test/Pods/Manifest.lock +++ /dev/null @@ -1,19 +0,0 @@ -PODS: - - MotionKit (0.7) - -DEPENDENCIES: - - MotionKit (from `https://github.com/MHaroonBaig/MotionKit.git`) - -EXTERNAL SOURCES: - MotionKit: - :git: https://github.com/MHaroonBaig/MotionKit.git - -CHECKOUT OPTIONS: - MotionKit: - :commit: 70238a68f16ec55082f8779a4365f69cd7af2f24 - :git: https://github.com/MHaroonBaig/MotionKit.git - -SPEC CHECKSUMS: - MotionKit: 05f62b8cf0ff804a2ee0fc968ef244ba0810e73b - -COCOAPODS: 0.36.0.beta.2 diff --git a/Objective-C example/test/Pods/MotionKit/LICENSE b/Objective-C example/test/Pods/MotionKit/LICENSE deleted file mode 100644 index f7daeed..0000000 --- a/Objective-C example/test/Pods/MotionKit/LICENSE +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (c) 2015 MotionKit - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/Objective-C example/test/Pods/MotionKit/MotionKit/MotionKit.swift b/Objective-C example/test/Pods/MotionKit/MotionKit/MotionKit.swift deleted file mode 100644 index 61f19b0..0000000 --- a/Objective-C example/test/Pods/MotionKit/MotionKit/MotionKit.swift +++ /dev/null @@ -1,456 +0,0 @@ -// -// MotionKit.swift -// MotionKit -// -// Created by Haroon on 14/02/2015. -// Launched under the Creative Commons License. You're free to use MotionKit. -// -// The original Github repository is https://github.com/MHaroonBaig/MotionKit -// The official blog post and documentation is https://medium.com/@PyBaig/motionkit-the-missing-ios-coremotion-wrapper-written-in-swift-99fcb83355d0 -// - -import Foundation -import CoreMotion - -//_______________________________________________________________________________________________________________ -// this helps retrieve values from the sensors. -@objc protocol MotionKitDelegate { - optional func retrieveAccelerometerValues (x: Double, y:Double, z:Double, absoluteValue: Double) - optional func retrieveGyroscopeValues (x: Double, y:Double, z:Double, absoluteValue: Double) - optional func retrieveDeviceMotionObject (deviceMotion: CMDeviceMotion) - optional func retrieveMagnetometerValues (x: Double, y:Double, z:Double, absoluteValue: Double) - - optional func getAccelerationValFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getGravityAccelerationValFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getRotationRateFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getMagneticFieldFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getAttitudeFromDeviceMotion (attitude: CMAttitude) -} - - -@objc(MotionKit) public class MotionKit { - - let manager = CMMotionManager() - var delegate: MotionKitDelegate? - - /* - * init:void: - * - * Discussion: - * Initialises the MotionKit class and throw a Log with a timestamp. - */ - public init(){ - NSLog("MotionKit has been initialised successfully") - } - - /* - * getAccelerometerValues:interval:values: - * - * Discussion: - * Starts accelerometer updates, providing data to the given handler through the given queue. - * Note that when the updates are stopped, all operations in the - * given NSOperationQueue will be cancelled. You can access the retrieved values either by a - * Trailing Closure or through a Delgate. - */ - public func getAccelerometerValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y: Double, z: Double) -> ())? ){ - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.accelerometerAvailable { - manager.accelerometerUpdateInterval = interval - manager.startAccelerometerUpdatesToQueue(NSOperationQueue()) { - (data: CMAccelerometerData!, error: NSError!) in - - if let isError = error { - NSLog("Error: %@", isError) - } - valX = data.acceleration.x - valY = data.acceleration.y - valZ = data.acceleration.z - - if values != nil{ - values!(x: valX,y: valY,z: valZ) - } - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.retrieveAccelerometerValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) - } - - } else { - NSLog("The Accelerometer is not available") - } - } - - /* - * getGyroValues:interval:values: - * - * Discussion: - * Starts gyro updates, providing data to the given handler through the given queue. - * Note that when the updates are stopped, all operations in the - * given NSOperationQueue will be cancelled. You can access the retrieved values either by a - * Trailing Closure or through a Delegate. - */ - public func getGyroValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y: Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.gyroAvailable{ - manager.gyroUpdateInterval = interval - manager.startGyroUpdatesToQueue(NSOperationQueue()) { - (data: CMGyroData!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.rotationRate.x - valY = data.rotationRate.y - valZ = data.rotationRate.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.retrieveGyroscopeValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) - } - - } else { - NSLog("The Gyroscope is not available") - } - } - - /* - * getMagnetometerValues:interval:values: - * - * Discussion: - * Starts magnetometer updates, providing data to the given handler through the given queue. - * You can access the retrieved values either by a Trailing Closure or through a Delegate. - */ - @availability(iOS, introduced=5.0) - public func getMagnetometerValues (interval: NSTimeInterval = 0.1, values: ((x: Double, y:Double, z:Double) -> ())? ){ - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.magnetometerAvailable { - manager.magnetometerUpdateInterval = interval - manager.startMagnetometerUpdatesToQueue(NSOperationQueue()){ - (data: CMMagnetometerData!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.magneticField.x - valY = data.magneticField.y - valZ = data.magneticField.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.retrieveMagnetometerValues!(valX, y: valY, z: valZ, absoluteValue: absoluteVal) - } - - } else { - NSLog("Magnetometer is not available") - } - } - - /* MARK :- DEVICE MOTION APPROACH STARTS HERE */ - - /* - * getDeviceMotionValues:interval:values: - * - * Discussion: - * Starts device motion updates, providing data to the given handler through the given queue. - * Uses the default reference frame for the device. Examine CMMotionManager's - * attitudeReferenceFrame to determine this. You can access the retrieved values either by a - * Trailing Closure or through a Delegate. - */ - public func getDeviceMotionObject (interval: NSTimeInterval = 0.1, values: ((deviceMotion: CMDeviceMotion) -> ())? ) { - - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - if values != nil{ - values!(deviceMotion: data) - } - self.delegate?.retrieveDeviceMotionObject!(data) - } - - } else { - NSLog("Device Motion is not available") - } - } - - - /* - * getAccelerationFromDeviceMotion:interval:values: - * You can retrieve the processed user accelaration data from the device motion from this method. - */ - public func getAccelerationFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.userAcceleration.x - valY = data.userAcceleration.y - valZ = data.userAcceleration.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - - self.delegate?.getAccelerationValFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is unavailable") - } - } - - /* - * getGravityAccelerationFromDeviceMotion:interval:values: - * You can retrieve the processed gravitational accelaration data from the device motion from this - * method. - */ - public func getGravityAccelerationFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.gravity.x - valY = data.gravity.y - valZ = data.gravity.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.getGravityAccelerationValFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is not available") - } - } - - - /* - * getAttitudeFromDeviceMotion:interval:values: - * You can retrieve the processed attitude data from the device motion from this - * method. - */ - public func getAttitudeFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((attitude: CMAttitude) -> ())? ) { - - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - if values != nil{ - values!(attitude: data.attitude) - } - - self.delegate?.getAttitudeFromDeviceMotion!(data.attitude) - } - - } else { - NSLog("Device Motion is not available") - } - } - - /* - * getRotationRateFromDeviceMotion:interval:values: - * You can retrieve the processed rotation data from the device motion from this - * method. - */ - public func getRotationRateFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.rotationRate.x - valY = data.rotationRate.y - valZ = data.rotationRate.z - - if values != nil{ - values!(x: valX, y: valY, z: valZ) - } - - var absoluteVal = sqrt(valX * valX + valY * valY + valZ * valZ) - self.delegate?.getRotationRateFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is not available") - } - } - - - /* - * getMagneticFieldFromDeviceMotion:interval:values: - * You can retrieve the processed magnetic field data from the device motion from this - * method. - */ - public func getMagneticFieldFromDeviceMotion (interval: NSTimeInterval = 0.1, values: ((x:Double, y:Double, z:Double, accuracy: Int32) -> ())? ) { - - var valX: Double! - var valY: Double! - var valZ: Double! - var valAccuracy: Int32! - if manager.deviceMotionAvailable{ - manager.deviceMotionUpdateInterval = interval - manager.startDeviceMotionUpdatesToQueue(NSOperationQueue()){ - (data: CMDeviceMotion!, error: NSError!) in - - if let isError = error{ - NSLog("Error: %@", isError) - } - valX = data.magneticField.field.x - valY = data.magneticField.field.y - valZ = data.magneticField.field.z - valAccuracy = data.magneticField.accuracy.value - - - if values != nil{ - values!(x: valX, y: valY, z: valZ, accuracy: valAccuracy) - } - - self.delegate?.getMagneticFieldFromDeviceMotion!(valX, y: valY, z: valZ) - } - - } else { - NSLog("Device Motion is not available") - } - } - - /* MARK :- DEVICE MOTION APPROACH ENDS HERE */ - - - /* - * From the methods hereafter, the sensor values could be retrieved at - * a particular instant, whenever needed, through a trailing closure. - */ - - /* MARK :- INSTANTANIOUS METHODS START HERE */ - - public func getAccelerationAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getAccelerationFromDeviceMotion(interval: 0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - public func getGravitationalAccelerationAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getGravityAccelerationFromDeviceMotion(interval: 0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - public func getAttitudeAtCurrentInstant (values: (attitude: CMAttitude) -> ()){ - self.getAttitudeFromDeviceMotion(interval: 0.5) { (attitude) -> () in - values(attitude: attitude) - self.stopDeviceMotionUpdates() - } - - } - - public func getMageticFieldAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getMagneticFieldFromDeviceMotion(interval: 0.5) { (x, y, z, accuracy) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - public func getGyroValuesAtCurrentInstant (values: (x:Double, y:Double, z:Double) -> ()){ - self.getRotationRateFromDeviceMotion(interval: 0.5) { (x, y, z) -> () in - values(x: x,y: y,z: z) - self.stopDeviceMotionUpdates() - } - } - - /* MARK :- INSTANTANIOUS METHODS END HERE */ - - - - /* - * stopAccelerometerUpdates - * - * Discussion: - * Stop accelerometer updates. - */ - public func stopAccelerometerUpdates(){ - self.manager.stopAccelerometerUpdates() - NSLog("Accelaration Updates Status - Stopped") - } - - /* - * stopGyroUpdates - * - * Discussion: - * Stops gyro updates. - */ - public func stopGyroUpdates(){ - self.manager.stopGyroUpdates() - NSLog("Gyroscope Updates Status - Stopped") - } - - /* - * stopDeviceMotionUpdates - * - * Discussion: - * Stops device motion updates. - */ - public func stopDeviceMotionUpdates() { - self.manager.stopDeviceMotionUpdates() - NSLog("Device Motion Updates Status - Stopped") - } - - /* - * stopMagnetometerUpdates - * - * Discussion: - * Stops magnetometer updates. - */ - @availability(iOS, introduced=5.0) - public func stopmagnetometerUpdates() { - self.manager.stopMagnetometerUpdates() - NSLog("Magnetometer Updates Status - Stopped") - } - -} \ No newline at end of file diff --git a/Objective-C example/test/Pods/MotionKit/README.md b/Objective-C example/test/Pods/MotionKit/README.md deleted file mode 100644 index bc216a1..0000000 --- a/Objective-C example/test/Pods/MotionKit/README.md +++ /dev/null @@ -1,288 +0,0 @@ -#[MotionKit] (http://goo.gl/bpXBlO) — The missing iOS wrapper :notes: - -[![Platform](http://img.shields.io/badge/platform-ios-blue.svg?style=flat -)](https://developer.apple.com/iphone/index.action) -[![Language](http://img.shields.io/badge/language-swift-brightgreen.svg?style=flat -)](https://developer.apple.com/swift) -[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) -[![Version](https://img.shields.io/cocoapods/v/MotionKit.svg?style=flat)](http://cocoadocs.org/docsets/MotionKit) -[![License](http://img.shields.io/badge/license-MIT-lightgrey.svg?style=flat -)](http://mit-license.org) -[![Issues](https://img.shields.io/github/issues/MHaroonBaig/MotionKit.svg?style=flat -)](https://github.com/MHaroonBaig/MotionKit/issues?state=open) - -Now you can grab the data from Accelerometer, Magnetometer, Gyroscope and Device Motion in a magical way, with just a Two or a few lines of code. - -A nice and clean wrapper around the **CoreMotion Framework** written entirely in Swift. The Core Motion framework lets your application receive motion data from device hardware and process that data. -The data can be retrieved from **Accelerometer**, **Gyroscope** and **Magnetometer**. -You can also get the **refined and processed gyroscope and accelerometer data** from the `deviceMotion` datatype itself instead of getting the raw values. - -**Articles accompanying MotionKit:** [Link1](https://medium.com/@PyBaig/distribute-your-swift-code-libraries-and-frameworks-using-cocoapods-b41c62cd7c94) — [Link2](https://medium.com/@PyBaig/build-your-own-cocoa-touch-frameworks-in-swift-d4ea3d1f9ca3) — [Link3](https://medium.com/@PyBaig/motionkit-the-missing-ios-coremotion-wrapper-written-in-swift-99fcb83355d0) -#How does it work -You can retrieve all the values either by a trailing closure or by a delegate method. Both the approaches are fully supported. - -*__Note:__* All the provided methods are Asynchronous and operate in their own Queue so that your app could run smoothly and efficiently. - -##Initialise -First, initialise the MotionKit instance. Its a Must. -```swift - let motionKit = MotionKit() -``` - -##Getting Accelerometer Values -You can get the accelerometer values using just a few lines of code. - -```swift - motionKit.getAccelerometerValues(interval: 1.0){ - (x, y, z) in - //Interval is in seconds. And now you have got the x, y and z values here - .... - } - -``` -##Getting Gyroscope Values -Gyroscope values could be retrieved by the following few lines of code. - -```swift - motionKit.getGyroValues(interval: 1.0){ - (x, y, z) in - //Your processing will go here - .... - } - -``` -##Getting Magnetometer Values -Getting Magnetometer values is as easy as grabbing a cookie. - -```swift - motionKit.getMagnetometerValues(interval: 1.0){ - (x, y, z) in - //Do something with the retrieved values - .... - } - -``` -#Installation -Embedded frameworks require a minimum deployment target of iOS 8. -###Using CocoaPods -Just add this to your Podfile. -```ruby -pod 'MotionKit' -``` -Note that you have to use CocoaPods version 0.36, the pre-released version which supports swift. If you don't already have it, you can grab it with a single command. -```bash -[sudo] gem install cocoapods --pre -``` - - -###Using Carthage -You can use [Carthage](https://github.com/Carthage/Carthage) to install `MotionKit` by adding the following line to your `Cartfile`. -```ruby - github "MHaroonBaig/MotionKit" -``` - -###Manual Installation -Just copy the `MotionKit.swift` file into your Xcode project folder, and you're ready to go. - -#CMDeviceMotion - as easy as pie -In case if you want to get the processed values of Accelerometer or Gyroscope, you can access the deviceMotion object directly to get those values, or, you can access the individual values from the standalone methods which work seamlessly with Trailing Closures and Delegates. - -The deviceMotion object includes: -- Acceleration Data - - userAcceleration - - gravity -- Calibrated Magnetic Field - - magneticField -- Attitude and Rotation Rate - - attitude - - rotationRate - -All of the values can be retrieved either by individual methods or by getting the deviceMotion object itself. - -###Getting the whole CMDeviceMotion Object -```swift - - motionKit.getDeviceMotionObject(interval: 1.0){ - (deviceMotion) -> () in - var accelerationX = deviceMotion.userAcceleration.x - var gravityX = deviceMotion.gravity.x - var rotationX = deviceMotion.rotationRate.x - var magneticFieldX = deviceMotion.magneticField.x - var attitideYaw = deviceMotion.attitude.yaw - .... - } - -``` -###Getting refined values of Acceleration -You can get the refined and processed userAccelaration through the Device Motion service by just a few lines of code, either by a Trailing Closure or through Delegation method. -```swift - - motionKit.getAccelerationFromDeviceMotion(interval: 1.0){ - (x, y, z) -> () in - // Grab the x, y and z values - .... - } - -``` -###Getting Gravitational Acceleration -Again, you can access it through the Device Motion service as well. -```swift - motionKit.getGravityAccelerationFromDeviceMotion(interval: 1.0) { - (x, y, z) -> () in - // x, y and z values are here - .... - } -``` -###Getting Magnetic Field around your device -Interesting, Get it in a magical way. -```swift - motionKit.getMagneticFieldFromDeviceMotion(interval: 1.0) { - (x, y, z, accuracy) -> () in - // Get the values with accuracy - .... - } - -``` -###Getting the Attitude metrics -```swift - motionKit.getAttitudeFromDeviceMotion(interval: 1.0) { - (attitude) -> () in - var roll = attitude.roll - var pitch = attitude.pitch - var yaw = attitude.yaw - var rotationMatrix = attitude.rotationMatrix - var quaternion = attitude.quaternion - .... - } - -``` -###Getting Rotation Rate of your device -```swift - motionKit.getRotationRateFromDeviceMotion(interval: 1.0) { - (x, y, z) -> () in - // There you go, grab the x, y and z values - .... - } - -``` - - - -##Precautions -For performance issues, it is suggested that you should use only one instance of CMMotionManager throughout the app. Make sure to stop receiving updates from the sensors as soon as you get your work done. -You can do this in MotionKit like this. -```swift - - //Make sure to call the required function when you're done - motionKit.stopAccelerometerUpdates() - motionKit.stopGyroUpdates() - motionKit.stopDeviceMotionUpdates() - motionKit.stopmagnetometerUpdates() - -``` - -##Delegates -In case if you dont want to use the trailing closures, we've got you covered. MotionKit supports the following Delegate methods to retrieve the sensor values. -```swift - optional func retrieveAccelerometerValues (x: Double, y:Double, z:Double, absoluteValue: Double) - optional func retrieveGyroscopeValues (x: Double, y:Double, z:Double, absoluteValue: Double) - optional func retrieveDeviceMotionObject (deviceMotion: CMDeviceMotion) - optional func retrieveMagnetometerValues (x: Double, y:Double, z:Double, absoluteValue: Double) - - - optional func getAccelerationValFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getGravityAccelerationValFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getRotationRateFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getMagneticFieldFromDeviceMotion (x: Double, y:Double, z:Double) - optional func getAttitudeFromDeviceMotion (attitude: CMAttitude) - -``` -To use the above delegate methods, you have to add the MotionKit delegate to your ViewController. -```swift - class ViewController: UIViewController, MotionKitDelegate { - ... - } -``` -And in the ViewDidLoad method, you simply have to add this. -```swift - override func viewDidLoad() { - super.viewDidLoad() - motionKit.delegate = self - ...... - } - -``` -Having that done, you'd probably want to implement a delegate method like this. -```swift - func retrieveAccelerometerValues (x: Double, y:Double, z:Double, absoluteValue: Double){ - //Do whatever you want with the x, y and z values. The absolute value is calculated through vector mathematics - ...... - } - - func retrieveGyroscopeValues (x: Double, y:Double, z:Double, absoluteValue: Double){ - //Do whatever you want with the x, y and z values. The absolute value is calculated through vector mathematics - ...... - } - -``` - -##Getting just a single value at an instant -if you want to get just a single value of any of the available sensors at a given time, you could probably use some of the our handy methods provided in MotionKit. - -###Accelerometer -```swift - motionKit.getAccelerationAtCurrentInstant { - (x, y, z) -> () in - .... - } -``` -###Gravitational Acceleration -```swift - motionKit.getAccelerationAtCurrentInstant { - (x, y, z) -> () in - .... - } -``` -###Attitude -```swift - motionKit.getAttitudeAtCurrentInstant { - (x, y, z) -> () in - .... - } -``` -###Magnetic Field -```swift - motionKit.getMageticFieldAtCurrentInstant { - (x, y, z) -> () in - .... - } -``` -###Gyroscope Values -```swift - motionKit.getGyroValuesAtCurrentInstant { - (x, y, z) -> () in - .... - } -``` - - -#Discussion -- You can join our [Reddit] (https://www.reddit.com/r/MotionKit/) channel to discuss anything. - -- You can also open an issue here for any kind of feature set that you want. We would love to hear from you. - -- Don't forget to subscribe our Reddit channel, which is [/r/MotionKit] (https://www.reddit.com/r/MotionKit/) - -- Our StackOverflow tag is 'MotionKit' - - -#Requirements -* iOS 7.0+ -* Xcode 6.1 - -#TODO -- [ ] Add More Methods -- [ ] Adding Background Functionality - -#License -Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License. diff --git a/Objective-C example/test/Pods/Pods.xcodeproj/project.pbxproj b/Objective-C example/test/Pods/Pods.xcodeproj/project.pbxproj deleted file mode 100644 index e607305..0000000 --- a/Objective-C example/test/Pods/Pods.xcodeproj/project.pbxproj +++ /dev/null @@ -1,1131 +0,0 @@ - - - - - archiveVersion - 1 - classes - - objectVersion - 46 - objects - - 022BE211CFAF1348F78F3F72 - - children - - 5052006614DC2497506898AB - - isa - PBXGroup - name - iOS - sourceTree - <group> - - 03FF33CFF4AF5C7C9D87C36D - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - sourcecode.swift - name - MotionKit.swift - path - MotionKit/MotionKit.swift - sourceTree - <group> - - 05802786B546E60CDBE6C6CA - - fileRef - E127E45D7E91E07657BBD4B2 - isa - PBXBuildFile - settings - - ATTRIBUTES - - Public - - - - 0F294831653FDF268F0D5999 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.xcconfig - path - Pods-MotionKit-Private.xcconfig - sourceTree - <group> - - 0F9DADFAB20E40D44B7E35F3 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text - path - Pods-acknowledgements.markdown - sourceTree - <group> - - 19D8B9D5DC2B6E5023CCBB83 - - children - - C46EDF5E1092A62CA55B0228 - - isa - PBXGroup - name - Targets Support Files - sourceTree - <group> - - 208D4C87321229E8F4AC428C - - buildConfigurationList - 32B81134762A7F276B27A93F - buildPhases - - B6A8E01BF920B7F90031D4E9 - D1EDDBC37166FB74C72E88F8 - 620737C3875595DC717B6792 - - buildRules - - dependencies - - E812E5DB7A0FF7B61659A454 - - isa - PBXNativeTarget - name - Pods - productName - Pods - productReference - FC3BB60A3938A11EAB0016D1 - productType - com.apple.product-type.framework - - 20B8460608F4B09A53162C76 - - buildConfigurations - - DAE15535BE6EC559E2E78C46 - 93DF2BD95DF661A7D2405C08 - - defaultConfigurationIsVisible - 0 - defaultConfigurationName - Release - isa - XCConfigurationList - - 2A06D9361C4BD04AADE8B678 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.plist.xml - path - Pods-acknowledgements.plist - sourceTree - <group> - - 314022AB11470B593CFE9458 - - buildActionMask - 2147483647 - files - - B5B4A0CCD95F9A603F7705F7 - 9106C67B9E16BDF49DE7CF70 - - isa - PBXSourcesBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - 32B81134762A7F276B27A93F - - buildConfigurations - - 36B86F6B68AD7EB7D859DD43 - 817FD7CAA0309892A3C263D7 - - defaultConfigurationIsVisible - 0 - defaultConfigurationName - Release - isa - XCConfigurationList - - 32FE296E9259FE1202D2F3A3 - - fileRef - 5052006614DC2497506898AB - isa - PBXBuildFile - - 340999BFA06162D79DD57FAA - - children - - E8CFEC8E82CB8A10B8988D48 - - isa - PBXGroup - name - Pods - sourceTree - <group> - - 36B86F6B68AD7EB7D859DD43 - - baseConfigurationReference - C7DE118F6AEB591E911FE0E9 - buildSettings - - CODE_SIGN_IDENTITY[sdk=iphoneos*] - iPhone Developer - CURRENT_PROJECT_VERSION - 1 - DEFINES_MODULE - YES - DYLIB_COMPATIBILITY_VERSION - 1 - DYLIB_CURRENT_VERSION - 1 - DYLIB_INSTALL_NAME_BASE - @rpath - ENABLE_STRICT_OBJC_MSGSEND - YES - INFOPLIST_FILE - Target Support Files/Pods/Info.plist - INSTALL_PATH - $(LOCAL_LIBRARY_DIR)/Frameworks - IPHONEOS_DEPLOYMENT_TARGET - 8.1 - LD_RUNPATH_SEARCH_PATHS - - $(inherited) - @executable_path/Frameworks - @loader_path/Frameworks - - MODULEMAP_FILE - Target Support Files/Pods/Pods.modulemap - MTL_ENABLE_DEBUG_INFO - YES - OTHER_LDFLAGS - - OTHER_LIBTOOLFLAGS - - PODS_ROOT - $(SRCROOT) - PRODUCT_NAME - Pods - SDKROOT - iphoneos - SKIP_INSTALL - YES - TARGETED_DEVICE_FAMILY - 1,2 - VERSIONING_SYSTEM - apple-generic - VERSION_INFO_PREFIX - - - isa - XCBuildConfiguration - name - Debug - - 4351C5E6283C2CA623B7F314 - - buildActionMask - 2147483647 - files - - 32FE296E9259FE1202D2F3A3 - - isa - PBXFrameworksBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - 45AF17968F6A45079B44E4F5 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - sourcecode.c.h - path - Pods-environment.h - sourceTree - <group> - - 49E0F4955B4D8CAA7A23E191 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.xcconfig - path - Pods-MotionKit.xcconfig - sourceTree - <group> - - 4C188D7C35313ECBA9870A63 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.script.sh - path - Pods-frameworks.sh - sourceTree - <group> - - 4F59B6250504002DFE8B4F6C - - buildActionMask - 2147483647 - files - - 05802786B546E60CDBE6C6CA - - isa - PBXHeadersBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - 5052006614DC2497506898AB - - isa - PBXFileReference - lastKnownFileType - wrapper.framework - name - Foundation.framework - path - Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/Foundation.framework - sourceTree - DEVELOPER_DIR - - 620737C3875595DC717B6792 - - buildActionMask - 2147483647 - files - - F7509450F5AB58F2C3A9B538 - - isa - PBXHeadersBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - 624AA76378B093C1F3443BBA - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - sourcecode.c.h - path - Pods-MotionKit-prefix.pch - sourceTree - <group> - - 635EA3C483EB109B84BD43A1 - - children - - AA17606CA7369A7329B55839 - 786CAAD25C517DA69B6273A4 - 49E0F4955B4D8CAA7A23E191 - 0F294831653FDF268F0D5999 - E9B13D9CF460DD1E4C30726E - 624AA76378B093C1F3443BBA - E127E45D7E91E07657BBD4B2 - - isa - PBXGroup - name - Support Files - path - ../Target Support Files/Pods-MotionKit - sourceTree - <group> - - 63D683472EB33A5BDDAA592C - - children - - 022BE211CFAF1348F78F3F72 - - isa - PBXGroup - name - Frameworks - sourceTree - <group> - - 74A96466245C6258299C2806 - - children - - 79D3F328A93F63FB7CDFD77D - FC3BB60A3938A11EAB0016D1 - - isa - PBXGroup - name - Products - sourceTree - <group> - - 77201AF5628CFCE05869A4D3 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - sourcecode.c.objc - path - Pods-dummy.m - sourceTree - <group> - - 786CAAD25C517DA69B6273A4 - - includeInIndex - 1 - isa - PBXFileReference - path - Pods-MotionKit.modulemap - sourceTree - <group> - - 78B2EEA8B5E523575125AFB2 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.plist.xml - path - Info.plist - sourceTree - <group> - - 79D3F328A93F63FB7CDFD77D - - explicitFileType - wrapper.framework - includeInIndex - 0 - isa - PBXFileReference - name - MotionKit.framework - path - MotionKit.framework - sourceTree - BUILT_PRODUCTS_DIR - - 817FD7CAA0309892A3C263D7 - - baseConfigurationReference - C49AEC0F72DCEE4B6C2F41C1 - buildSettings - - CODE_SIGN_IDENTITY[sdk=iphoneos*] - iPhone Developer - CURRENT_PROJECT_VERSION - 1 - DEFINES_MODULE - YES - DYLIB_COMPATIBILITY_VERSION - 1 - DYLIB_CURRENT_VERSION - 1 - DYLIB_INSTALL_NAME_BASE - @rpath - ENABLE_STRICT_OBJC_MSGSEND - YES - INFOPLIST_FILE - Target Support Files/Pods/Info.plist - INSTALL_PATH - $(LOCAL_LIBRARY_DIR)/Frameworks - IPHONEOS_DEPLOYMENT_TARGET - 8.1 - LD_RUNPATH_SEARCH_PATHS - - $(inherited) - @executable_path/Frameworks - @loader_path/Frameworks - - MODULEMAP_FILE - Target Support Files/Pods/Pods.modulemap - MTL_ENABLE_DEBUG_INFO - NO - OTHER_LDFLAGS - - OTHER_LIBTOOLFLAGS - - PODS_ROOT - $(SRCROOT) - PRODUCT_NAME - Pods - SDKROOT - iphoneos - SKIP_INSTALL - YES - TARGETED_DEVICE_FAMILY - 1,2 - VERSIONING_SYSTEM - apple-generic - VERSION_INFO_PREFIX - - - isa - XCBuildConfiguration - name - Release - - 8B17551DBE146D857AC99E57 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text - name - Podfile - path - ../Podfile - sourceTree - SOURCE_ROOT - xcLanguageSpecificationIdentifier - xcode.lang.ruby - - 8F407C8901C62E4A4A491D47 - - children - - 8B17551DBE146D857AC99E57 - 63D683472EB33A5BDDAA592C - 340999BFA06162D79DD57FAA - 74A96466245C6258299C2806 - 19D8B9D5DC2B6E5023CCBB83 - - isa - PBXGroup - sourceTree - <group> - - 9106C67B9E16BDF49DE7CF70 - - fileRef - E9B13D9CF460DD1E4C30726E - isa - PBXBuildFile - - 93DF2BD95DF661A7D2405C08 - - buildSettings - - ALWAYS_SEARCH_USER_PATHS - NO - CLANG_CXX_LANGUAGE_STANDARD - gnu++0x - CLANG_CXX_LIBRARY - libc++ - CLANG_ENABLE_MODULES - YES - CLANG_ENABLE_OBJC_ARC - YES - CLANG_WARN_BOOL_CONVERSION - YES - CLANG_WARN_CONSTANT_CONVERSION - YES - CLANG_WARN_DIRECT_OBJC_ISA_USAGE - YES - CLANG_WARN_EMPTY_BODY - YES - CLANG_WARN_ENUM_CONVERSION - YES - CLANG_WARN_INT_CONVERSION - YES - CLANG_WARN_OBJC_ROOT_CLASS - YES - CLANG_WARN_UNREACHABLE_CODE - YES - CLANG_WARN__DUPLICATE_METHOD_MATCH - YES - COPY_PHASE_STRIP - NO - ENABLE_NS_ASSERTIONS - NO - GCC_C_LANGUAGE_STANDARD - gnu99 - GCC_PREPROCESSOR_DEFINITIONS - - RELEASE=1 - - GCC_WARN_64_TO_32_BIT_CONVERSION - YES - GCC_WARN_ABOUT_RETURN_TYPE - YES - GCC_WARN_UNDECLARED_SELECTOR - YES - GCC_WARN_UNINITIALIZED_AUTOS - YES - GCC_WARN_UNUSED_FUNCTION - YES - GCC_WARN_UNUSED_VARIABLE - YES - IPHONEOS_DEPLOYMENT_TARGET - 8.1 - STRIP_INSTALLED_PRODUCT - NO - VALIDATE_PRODUCT - YES - - isa - XCBuildConfiguration - name - Release - - 95CE1FCD048338D876330060 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.script.sh - path - Pods-resources.sh - sourceTree - <group> - - A5BC164A47EFF44A3609FE92 - - buildConfigurationList - D5F132528E8E60BEE995AFDF - buildPhases - - 314022AB11470B593CFE9458 - 4351C5E6283C2CA623B7F314 - 4F59B6250504002DFE8B4F6C - - buildRules - - dependencies - - isa - PBXNativeTarget - name - Pods-MotionKit - productName - Pods-MotionKit - productReference - 79D3F328A93F63FB7CDFD77D - productType - com.apple.product-type.framework - - AA17606CA7369A7329B55839 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.plist.xml - path - Info.plist - sourceTree - <group> - - B45ADC6277C1BC1157D0F82C - - attributes - - LastUpgradeCheck - 0510 - - buildConfigurationList - 20B8460608F4B09A53162C76 - compatibilityVersion - Xcode 3.2 - developmentRegion - English - hasScannedForEncodings - 0 - isa - PBXProject - knownRegions - - en - - mainGroup - 8F407C8901C62E4A4A491D47 - productRefGroup - 74A96466245C6258299C2806 - projectDirPath - - projectReferences - - projectRoot - - targets - - 208D4C87321229E8F4AC428C - A5BC164A47EFF44A3609FE92 - - - B48E41F5CB6E50411997FA8C - - includeInIndex - 1 - isa - PBXFileReference - path - Pods.modulemap - sourceTree - <group> - - B5B4A0CCD95F9A603F7705F7 - - fileRef - 03FF33CFF4AF5C7C9D87C36D - isa - PBXBuildFile - - B6A8E01BF920B7F90031D4E9 - - buildActionMask - 2147483647 - files - - D2C51A1B7AC225A8FD77D7EA - - isa - PBXSourcesBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - C2DBD36004C8CBB27CBDE36D - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - sourcecode.c.h - path - Pods-umbrella.h - sourceTree - <group> - - C46EDF5E1092A62CA55B0228 - - children - - 78B2EEA8B5E523575125AFB2 - B48E41F5CB6E50411997FA8C - 0F9DADFAB20E40D44B7E35F3 - 2A06D9361C4BD04AADE8B678 - 77201AF5628CFCE05869A4D3 - 45AF17968F6A45079B44E4F5 - 4C188D7C35313ECBA9870A63 - 95CE1FCD048338D876330060 - C2DBD36004C8CBB27CBDE36D - C7DE118F6AEB591E911FE0E9 - C49AEC0F72DCEE4B6C2F41C1 - - isa - PBXGroup - name - Pods - path - Target Support Files/Pods - sourceTree - <group> - - C49AEC0F72DCEE4B6C2F41C1 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.xcconfig - path - Pods.release.xcconfig - sourceTree - <group> - - C6D78E47E6C531EB3B898B93 - - fileRef - 5052006614DC2497506898AB - isa - PBXBuildFile - - C7DE118F6AEB591E911FE0E9 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.xcconfig - path - Pods.debug.xcconfig - sourceTree - <group> - - D1EDDBC37166FB74C72E88F8 - - buildActionMask - 2147483647 - files - - C6D78E47E6C531EB3B898B93 - - isa - PBXFrameworksBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - D2C51A1B7AC225A8FD77D7EA - - fileRef - 77201AF5628CFCE05869A4D3 - isa - PBXBuildFile - - D33AD370FFBF40D3BBEC315E - - containerPortal - B45ADC6277C1BC1157D0F82C - isa - PBXContainerItemProxy - proxyType - 1 - remoteGlobalIDString - A5BC164A47EFF44A3609FE92 - remoteInfo - Pods-MotionKit - - D5F132528E8E60BEE995AFDF - - buildConfigurations - - E724C11CFF18DAA186393538 - EAF46A78E6E26878B168EEE0 - - defaultConfigurationIsVisible - 0 - defaultConfigurationName - Release - isa - XCConfigurationList - - DAE15535BE6EC559E2E78C46 - - buildSettings - - ALWAYS_SEARCH_USER_PATHS - NO - CLANG_CXX_LANGUAGE_STANDARD - gnu++0x - CLANG_CXX_LIBRARY - libc++ - CLANG_ENABLE_MODULES - YES - CLANG_ENABLE_OBJC_ARC - YES - CLANG_WARN_BOOL_CONVERSION - YES - CLANG_WARN_CONSTANT_CONVERSION - YES - CLANG_WARN_DIRECT_OBJC_ISA_USAGE - YES - CLANG_WARN_EMPTY_BODY - YES - CLANG_WARN_ENUM_CONVERSION - YES - CLANG_WARN_INT_CONVERSION - YES - CLANG_WARN_OBJC_ROOT_CLASS - YES - CLANG_WARN_UNREACHABLE_CODE - YES - CLANG_WARN__DUPLICATE_METHOD_MATCH - YES - COPY_PHASE_STRIP - YES - GCC_C_LANGUAGE_STANDARD - gnu99 - GCC_DYNAMIC_NO_PIC - NO - GCC_OPTIMIZATION_LEVEL - 0 - GCC_PREPROCESSOR_DEFINITIONS - - DEBUG=1 - $(inherited) - - GCC_SYMBOLS_PRIVATE_EXTERN - NO - GCC_WARN_64_TO_32_BIT_CONVERSION - YES - GCC_WARN_ABOUT_RETURN_TYPE - YES - GCC_WARN_UNDECLARED_SELECTOR - YES - GCC_WARN_UNINITIALIZED_AUTOS - YES - GCC_WARN_UNUSED_FUNCTION - YES - GCC_WARN_UNUSED_VARIABLE - YES - IPHONEOS_DEPLOYMENT_TARGET - 8.1 - ONLY_ACTIVE_ARCH - YES - STRIP_INSTALLED_PRODUCT - NO - - isa - XCBuildConfiguration - name - Debug - - E127E45D7E91E07657BBD4B2 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - sourcecode.c.h - path - Pods-MotionKit-umbrella.h - sourceTree - <group> - - E724C11CFF18DAA186393538 - - baseConfigurationReference - 0F294831653FDF268F0D5999 - buildSettings - - CODE_SIGN_IDENTITY[sdk=iphoneos*] - iPhone Developer - CURRENT_PROJECT_VERSION - 1 - DEFINES_MODULE - YES - DYLIB_COMPATIBILITY_VERSION - 1 - DYLIB_CURRENT_VERSION - 1 - DYLIB_INSTALL_NAME_BASE - @rpath - ENABLE_STRICT_OBJC_MSGSEND - YES - GCC_PREFIX_HEADER - Target Support Files/Pods-MotionKit/Pods-MotionKit-prefix.pch - INFOPLIST_FILE - Target Support Files/Pods-MotionKit/Info.plist - INSTALL_PATH - $(LOCAL_LIBRARY_DIR)/Frameworks - IPHONEOS_DEPLOYMENT_TARGET - 8.1 - LD_RUNPATH_SEARCH_PATHS - - $(inherited) - @executable_path/Frameworks - @loader_path/Frameworks - - MODULEMAP_FILE - Target Support Files/Pods-MotionKit/Pods-MotionKit.modulemap - MTL_ENABLE_DEBUG_INFO - YES - PRODUCT_NAME - MotionKit - SDKROOT - iphoneos - SKIP_INSTALL - YES - TARGETED_DEVICE_FAMILY - 1,2 - VERSIONING_SYSTEM - apple-generic - VERSION_INFO_PREFIX - - - isa - XCBuildConfiguration - name - Debug - - E812E5DB7A0FF7B61659A454 - - isa - PBXTargetDependency - name - Pods-MotionKit - target - A5BC164A47EFF44A3609FE92 - targetProxy - D33AD370FFBF40D3BBEC315E - - E8CFEC8E82CB8A10B8988D48 - - children - - 03FF33CFF4AF5C7C9D87C36D - 635EA3C483EB109B84BD43A1 - - isa - PBXGroup - name - MotionKit - path - MotionKit - sourceTree - <group> - - E9B13D9CF460DD1E4C30726E - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - sourcecode.c.objc - path - Pods-MotionKit-dummy.m - sourceTree - <group> - - EAF46A78E6E26878B168EEE0 - - baseConfigurationReference - 0F294831653FDF268F0D5999 - buildSettings - - CODE_SIGN_IDENTITY[sdk=iphoneos*] - iPhone Developer - CURRENT_PROJECT_VERSION - 1 - DEFINES_MODULE - YES - DYLIB_COMPATIBILITY_VERSION - 1 - DYLIB_CURRENT_VERSION - 1 - DYLIB_INSTALL_NAME_BASE - @rpath - ENABLE_STRICT_OBJC_MSGSEND - YES - GCC_PREFIX_HEADER - Target Support Files/Pods-MotionKit/Pods-MotionKit-prefix.pch - INFOPLIST_FILE - Target Support Files/Pods-MotionKit/Info.plist - INSTALL_PATH - $(LOCAL_LIBRARY_DIR)/Frameworks - IPHONEOS_DEPLOYMENT_TARGET - 8.1 - LD_RUNPATH_SEARCH_PATHS - - $(inherited) - @executable_path/Frameworks - @loader_path/Frameworks - - MODULEMAP_FILE - Target Support Files/Pods-MotionKit/Pods-MotionKit.modulemap - MTL_ENABLE_DEBUG_INFO - NO - PRODUCT_NAME - MotionKit - SDKROOT - iphoneos - SKIP_INSTALL - YES - TARGETED_DEVICE_FAMILY - 1,2 - VERSIONING_SYSTEM - apple-generic - VERSION_INFO_PREFIX - - - isa - XCBuildConfiguration - name - Release - - F7509450F5AB58F2C3A9B538 - - fileRef - C2DBD36004C8CBB27CBDE36D - isa - PBXBuildFile - settings - - ATTRIBUTES - - Public - - - - FC3BB60A3938A11EAB0016D1 - - explicitFileType - wrapper.framework - includeInIndex - 0 - isa - PBXFileReference - name - Pods.framework - path - Pods.framework - sourceTree - BUILT_PRODUCTS_DIR - - - rootObject - B45ADC6277C1BC1157D0F82C - - diff --git a/Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/Pods-MotionKit.xcscheme b/Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/Pods-MotionKit.xcscheme deleted file mode 100644 index 3608b3a..0000000 --- a/Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/Pods-MotionKit.xcscheme +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/Pods.xcscheme b/Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/Pods.xcscheme deleted file mode 100644 index ea77570..0000000 --- a/Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/Pods.xcscheme +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist b/Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index e6f06e7..0000000 --- a/Objective-C example/test/Pods/Pods.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,32 +0,0 @@ - - - - - SchemeUserState - - Pods-MotionKit.xcscheme - - isShown - - - Pods.xcscheme - - isShown - - - - SuppressBuildableAutocreation - - 208D4C87321229E8F4AC428C - - primary - - - A5BC164A47EFF44A3609FE92 - - primary - - - - - diff --git a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Info.plist b/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Info.plist deleted file mode 100644 index 78361b5..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - org.cocoapods.${PRODUCT_NAME:rfc1034identifier} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 0.7 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-Private.xcconfig b/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-Private.xcconfig deleted file mode 100644 index 3de086f..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-Private.xcconfig +++ /dev/null @@ -1,9 +0,0 @@ -#include "Pods-MotionKit.xcconfig" -CONFIGURATION_BUILD_DIR = $PODS_FRAMEWORK_BUILD_PATH -FRAMEWORK_SEARCH_PATHS = "$PODS_FRAMEWORK_BUILD_PATH" -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/MotionKit" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/MotionKit" -OTHER_LDFLAGS = -ObjC -OTHER_SWIFT_FLAGS = "-D COCOAPODS" -PODS_FRAMEWORK_BUILD_PATH = $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Pods -PODS_ROOT = ${SRCROOT} \ No newline at end of file diff --git a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-dummy.m b/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-dummy.m deleted file mode 100644 index 70292cc..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-dummy.m +++ /dev/null @@ -1,5 +0,0 @@ -#import -@interface PodsDummy_Pods_MotionKit : NSObject -@end -@implementation PodsDummy_Pods_MotionKit -@end diff --git a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-prefix.pch b/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-prefix.pch deleted file mode 100644 index 95cf11d..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-prefix.pch +++ /dev/null @@ -1,5 +0,0 @@ -#ifdef __OBJC__ -#import -#endif - -#import "Pods-environment.h" diff --git a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-umbrella.h b/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-umbrella.h deleted file mode 100644 index b88c465..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit-umbrella.h +++ /dev/null @@ -1,6 +0,0 @@ -#import - - -FOUNDATION_EXPORT double MotionKitVersionNumber; -FOUNDATION_EXPORT const unsigned char MotionKitVersionString[]; - diff --git a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit.modulemap b/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit.modulemap deleted file mode 100644 index 9bbd9c8..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit.modulemap +++ /dev/null @@ -1,6 +0,0 @@ -framework module MotionKit { - umbrella header "Pods-MotionKit-umbrella.h" - - export * - module * { export * } -} diff --git a/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit.xcconfig b/Objective-C example/test/Pods/Target Support Files/Pods-MotionKit/Pods-MotionKit.xcconfig deleted file mode 100644 index e69de29..0000000 diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Info.plist b/Objective-C example/test/Pods/Target Support Files/Pods/Info.plist deleted file mode 100644 index 6974542..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - org.cocoapods.${PRODUCT_NAME:rfc1034identifier} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${PRODUCT_NAME} - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0.0 - CFBundleSignature - ???? - CFBundleVersion - ${CURRENT_PROJECT_VERSION} - NSPrincipalClass - - - diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown b/Objective-C example/test/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown deleted file mode 100644 index 21bcfc2..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown +++ /dev/null @@ -1,26 +0,0 @@ -# Acknowledgements -This application makes use of the following third party libraries: - -## MotionKit - -Copyright (c) 2015 MotionKit - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - -Generated by CocoaPods - http://cocoapods.org diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-acknowledgements.plist b/Objective-C example/test/Pods/Target Support Files/Pods/Pods-acknowledgements.plist deleted file mode 100644 index 43453a0..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-acknowledgements.plist +++ /dev/null @@ -1,56 +0,0 @@ - - - - - PreferenceSpecifiers - - - FooterText - This application makes use of the following third party libraries: - Title - Acknowledgements - Type - PSGroupSpecifier - - - FooterText - Copyright (c) 2015 MotionKit - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - - Title - MotionKit - Type - PSGroupSpecifier - - - FooterText - Generated by CocoaPods - http://cocoapods.org - Title - - Type - PSGroupSpecifier - - - StringsTable - Acknowledgements - Title - Acknowledgements - - diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-dummy.m b/Objective-C example/test/Pods/Target Support Files/Pods/Pods-dummy.m deleted file mode 100644 index ade64bd..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-dummy.m +++ /dev/null @@ -1,5 +0,0 @@ -#import -@interface PodsDummy_Pods : NSObject -@end -@implementation PodsDummy_Pods -@end diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-environment.h b/Objective-C example/test/Pods/Target Support Files/Pods/Pods-environment.h deleted file mode 100644 index 2b35350..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-environment.h +++ /dev/null @@ -1,14 +0,0 @@ - -// To check if a library is compiled with CocoaPods you -// can use the `COCOAPODS` macro definition which is -// defined in the xcconfigs so it is available in -// headers also when they are imported in the client -// project. - - -// MotionKit -#define COCOAPODS_POD_AVAILABLE_MotionKit -#define COCOAPODS_VERSION_MAJOR_MotionKit 0 -#define COCOAPODS_VERSION_MINOR_MotionKit 7 -#define COCOAPODS_VERSION_PATCH_MotionKit 0 - diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-frameworks.sh b/Objective-C example/test/Pods/Target Support Files/Pods/Pods-frameworks.sh deleted file mode 100755 index 41c8e3a..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-frameworks.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/sh -set -e - -echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" -mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - -SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" - -install_framework() -{ - local source="${BUILT_PRODUCTS_DIR}/Pods/$1" - local destination="${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - - if [ -L ${source} ]; then - echo "Symlinked..." - source=$(readlink "${source}") - fi - - # use filter instead of exclude so missing patterns dont' throw errors - echo "rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers/" --filter "- PrivateHeaders/" ${source} ${destination}" - rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers/" --filter "- PrivateHeaders/" "${source}" "${destination}" - # Resign the code if required by the build settings to avoid unstable apps - if [ "${CODE_SIGNING_REQUIRED}" == "YES" ]; then - code_sign "${destination}/$1" - fi - - # Embed linked Swift runtime libraries - local basename - basename=$(echo $1 | sed -E s/\\..+// && exit ${PIPESTATUS[0]}) - local swift_runtime_libs - swift_runtime_libs=$(xcrun otool -LX "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/$1/${basename}" | grep @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) - for lib in $swift_runtime_libs; do - echo "rsync -av \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" - rsync -av "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" - if [ "${CODE_SIGNING_REQUIRED}" == "YES" ]; then - code_sign "${destination}/${lib}" - fi - done -} - -# Signs a framework with the provided identity -code_sign() { - # Use the current code_sign_identitiy - echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" - echo "/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --preserve-metadata=identifier,entitlements $1" - /usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --preserve-metadata=identifier,entitlements "$1" -} - - -if [[ "$CONFIGURATION" == "Debug" ]]; then - install_framework 'MotionKit.framework' -fi -if [[ "$CONFIGURATION" == "Release" ]]; then - install_framework 'MotionKit.framework' -fi diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-resources.sh b/Objective-C example/test/Pods/Target Support Files/Pods/Pods-resources.sh deleted file mode 100755 index e149064..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-resources.sh +++ /dev/null @@ -1,74 +0,0 @@ -#!/bin/sh -set -e - -mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - -RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt -> "$RESOURCES_TO_COPY" - -install_resource() -{ - case $1 in - *.storyboard) - echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" - ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" - ;; - *.xib) - echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" - ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" - ;; - *.framework) - echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - ;; - *.xcdatamodel) - echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" - xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" - ;; - *.xcdatamodeld) - echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" - xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" - ;; - *.xcmappingmodel) - echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" - xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" - ;; - *.xcassets) - ;; - /*) - echo "$1" - echo "$1" >> "$RESOURCES_TO_COPY" - ;; - *) - echo "${PODS_ROOT}/$1" - echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" - ;; - esac -} - -rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -if [[ "${ACTION}" == "install" ]]; then - 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`" ] && [ `find . -name '*.xcassets' | wc -l` -ne 0 ] -then - 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" - ;; - *) - TARGET_DEVICE_ARGS="--target-device mac" - ;; - esac - find "${PWD}" -name "*.xcassets" -print0 | xargs -0 actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -fi diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-umbrella.h b/Objective-C example/test/Pods/Target Support Files/Pods/Pods-umbrella.h deleted file mode 100644 index 21dcfd2..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Pods-umbrella.h +++ /dev/null @@ -1,6 +0,0 @@ -#import - - -FOUNDATION_EXPORT double PodsVersionNumber; -FOUNDATION_EXPORT const unsigned char PodsVersionString[]; - diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Pods.debug.xcconfig b/Objective-C example/test/Pods/Target Support Files/Pods/Pods.debug.xcconfig deleted file mode 100644 index 2057b61..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Pods.debug.xcconfig +++ /dev/null @@ -1,9 +0,0 @@ -FRAMEWORK_SEARCH_PATHS = "$PODS_FRAMEWORK_BUILD_PATH" -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "$PODS_FRAMEWORK_BUILD_PATH/MotionKit.framework/Headers" -OTHER_LDFLAGS = $(inherited) -ObjC -framework "MotionKit" -OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) -OTHER_SWIFT_FLAGS = "-D COCOAPODS" -PODS_FRAMEWORK_BUILD_PATH = $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Pods -PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Pods.modulemap b/Objective-C example/test/Pods/Target Support Files/Pods/Pods.modulemap deleted file mode 100644 index 8413413..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Pods.modulemap +++ /dev/null @@ -1,6 +0,0 @@ -framework module Pods { - umbrella header "Pods-umbrella.h" - - export * - module * { export * } -} diff --git a/Objective-C example/test/Pods/Target Support Files/Pods/Pods.release.xcconfig b/Objective-C example/test/Pods/Target Support Files/Pods/Pods.release.xcconfig deleted file mode 100644 index 2057b61..0000000 --- a/Objective-C example/test/Pods/Target Support Files/Pods/Pods.release.xcconfig +++ /dev/null @@ -1,9 +0,0 @@ -FRAMEWORK_SEARCH_PATHS = "$PODS_FRAMEWORK_BUILD_PATH" -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "$PODS_FRAMEWORK_BUILD_PATH/MotionKit.framework/Headers" -OTHER_LDFLAGS = $(inherited) -ObjC -framework "MotionKit" -OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) -OTHER_SWIFT_FLAGS = "-D COCOAPODS" -PODS_FRAMEWORK_BUILD_PATH = $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Pods -PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/Objective-C example/test/podfile b/Objective-C example/test/podfile deleted file mode 100644 index b508934..0000000 --- a/Objective-C example/test/podfile +++ /dev/null @@ -1 +0,0 @@ -pod 'MotionKit', :git => 'https://github.com/MHaroonBaig/MotionKit.git' diff --git a/Objective-C example/test/test.xcodeproj/project.pbxproj b/Objective-C example/test/test.xcodeproj/project.pbxproj deleted file mode 100644 index 5b255c8..0000000 --- a/Objective-C example/test/test.xcodeproj/project.pbxproj +++ /dev/null @@ -1,1024 +0,0 @@ - - - - - archiveVersion - 1 - classes - - objectVersion - 46 - objects - - 2AC570F5A8FE58BBEFE4DF17 - - buildActionMask - 2147483647 - files - - inputPaths - - isa - PBXShellScriptBuildPhase - name - Check Pods Manifest.lock - outputPaths - - runOnlyForDeploymentPostprocessing - 0 - shellPath - /bin/sh - shellScript - diff "${PODS_ROOT}/../Podfile.lock" "${PODS_ROOT}/Manifest.lock" > /dev/null -if [[ $? != 0 ]] ; then - cat << EOM -error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation. -EOM - exit 1 -fi - - showEnvVarsInLog - 0 - - 2FF2E83651E56623205C1DCC - - buildActionMask - 2147483647 - files - - inputPaths - - isa - PBXShellScriptBuildPhase - name - Embed Pods Frameworks - outputPaths - - runOnlyForDeploymentPostprocessing - 0 - shellPath - /bin/sh - shellScript - "${SRCROOT}/Pods/Target Support Files/Pods/Pods-frameworks.sh" - - showEnvVarsInLog - 0 - - 39C6A0B2E95E7A682F8086FE - - children - - 419C442F6188595806595BBC - 867C738D296B8AD12A9C8442 - - isa - PBXGroup - name - Pods - sourceTree - <group> - - 3B142843B9BBF4509824048D - - children - - 8555B56C823F33CCEEFF5B68 - - isa - PBXGroup - name - Frameworks - sourceTree - <group> - - 419C442F6188595806595BBC - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.xcconfig - name - Pods.debug.xcconfig - path - Pods/Target Support Files/Pods/Pods.debug.xcconfig - sourceTree - <group> - - 7562D1241A9798D100C7E4C7 - - children - - 7562D12F1A9798D100C7E4C7 - 7562D14C1A9798D100C7E4C7 - 7562D12E1A9798D100C7E4C7 - 39C6A0B2E95E7A682F8086FE - 3B142843B9BBF4509824048D - - isa - PBXGroup - sourceTree - <group> - - 7562D1251A9798D100C7E4C7 - - attributes - - LastUpgradeCheck - 0610 - ORGANIZATIONNAME - MotionKitsasv - TargetAttributes - - 7562D12C1A9798D100C7E4C7 - - CreatedOnToolsVersion - 6.1.1 - - 7562D1481A9798D100C7E4C7 - - CreatedOnToolsVersion - 6.1.1 - TestTargetID - 7562D12C1A9798D100C7E4C7 - - - - buildConfigurationList - 7562D1281A9798D100C7E4C7 - compatibilityVersion - Xcode 3.2 - developmentRegion - English - hasScannedForEncodings - 0 - isa - PBXProject - knownRegions - - en - Base - - mainGroup - 7562D1241A9798D100C7E4C7 - productRefGroup - 7562D12E1A9798D100C7E4C7 - projectDirPath - - projectReferences - - projectRoot - - targets - - 7562D12C1A9798D100C7E4C7 - 7562D1481A9798D100C7E4C7 - - - 7562D1281A9798D100C7E4C7 - - buildConfigurations - - 7562D1511A9798D100C7E4C7 - 7562D1521A9798D100C7E4C7 - - defaultConfigurationIsVisible - 0 - defaultConfigurationName - Release - isa - XCConfigurationList - - 7562D1291A9798D100C7E4C7 - - buildActionMask - 2147483647 - files - - 7562D1361A9798D100C7E4C7 - 7562D1331A9798D100C7E4C7 - 7562D13C1A9798D100C7E4C7 - 7562D1391A9798D100C7E4C7 - - isa - PBXSourcesBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - 7562D12A1A9798D100C7E4C7 - - buildActionMask - 2147483647 - files - - B56D427EC37025FA3D56CFC6 - - isa - PBXFrameworksBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - 7562D12B1A9798D100C7E4C7 - - buildActionMask - 2147483647 - files - - 7562D13F1A9798D100C7E4C7 - 7562D1441A9798D100C7E4C7 - 7562D1411A9798D100C7E4C7 - - isa - PBXResourcesBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - 7562D12C1A9798D100C7E4C7 - - buildConfigurationList - 7562D1531A9798D100C7E4C7 - buildPhases - - 2AC570F5A8FE58BBEFE4DF17 - 7562D1291A9798D100C7E4C7 - 7562D12A1A9798D100C7E4C7 - 7562D12B1A9798D100C7E4C7 - 2FF2E83651E56623205C1DCC - 79DAA173FA0D23768D93563E - - buildRules - - dependencies - - isa - PBXNativeTarget - name - test - productName - test - productReference - 7562D12D1A9798D100C7E4C7 - productType - com.apple.product-type.application - - 7562D12D1A9798D100C7E4C7 - - explicitFileType - wrapper.application - includeInIndex - 0 - isa - PBXFileReference - path - test.app - sourceTree - BUILT_PRODUCTS_DIR - - 7562D12E1A9798D100C7E4C7 - - children - - 7562D12D1A9798D100C7E4C7 - 7562D1491A9798D100C7E4C7 - - isa - PBXGroup - name - Products - sourceTree - <group> - - 7562D12F1A9798D100C7E4C7 - - children - - 7562D1341A9798D100C7E4C7 - 7562D1351A9798D100C7E4C7 - 7562D13A1A9798D100C7E4C7 - 7562D13B1A9798D100C7E4C7 - 7562D13D1A9798D100C7E4C7 - 7562D1401A9798D100C7E4C7 - 7562D1421A9798D100C7E4C7 - 7562D1371A9798D100C7E4C7 - 7562D1301A9798D100C7E4C7 - - isa - PBXGroup - path - test - sourceTree - <group> - - 7562D1301A9798D100C7E4C7 - - children - - 7562D1311A9798D100C7E4C7 - 7562D1321A9798D100C7E4C7 - - isa - PBXGroup - name - Supporting Files - sourceTree - <group> - - 7562D1311A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - text.plist.xml - path - Info.plist - sourceTree - <group> - - 7562D1321A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - sourcecode.c.objc - path - main.m - sourceTree - <group> - - 7562D1331A9798D100C7E4C7 - - fileRef - 7562D1321A9798D100C7E4C7 - isa - PBXBuildFile - - 7562D1341A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - sourcecode.c.h - path - AppDelegate.h - sourceTree - <group> - - 7562D1351A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - sourcecode.c.objc - path - AppDelegate.m - sourceTree - <group> - - 7562D1361A9798D100C7E4C7 - - fileRef - 7562D1351A9798D100C7E4C7 - isa - PBXBuildFile - - 7562D1371A9798D100C7E4C7 - - children - - 7562D1381A9798D100C7E4C7 - - currentVersion - 7562D1381A9798D100C7E4C7 - isa - XCVersionGroup - path - test.xcdatamodeld - sourceTree - <group> - versionGroupType - wrapper.xcdatamodel - - 7562D1381A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - wrapper.xcdatamodel - path - test.xcdatamodel - sourceTree - <group> - - 7562D1391A9798D100C7E4C7 - - fileRef - 7562D1371A9798D100C7E4C7 - isa - PBXBuildFile - - 7562D13A1A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - sourcecode.c.h - path - ViewController.h - sourceTree - <group> - - 7562D13B1A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - sourcecode.c.objc - path - ViewController.m - sourceTree - <group> - - 7562D13C1A9798D100C7E4C7 - - fileRef - 7562D13B1A9798D100C7E4C7 - isa - PBXBuildFile - - 7562D13D1A9798D100C7E4C7 - - children - - 7562D13E1A9798D100C7E4C7 - - isa - PBXVariantGroup - name - Main.storyboard - sourceTree - <group> - - 7562D13E1A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - file.storyboard - name - Base - path - Base.lproj/Main.storyboard - sourceTree - <group> - - 7562D13F1A9798D100C7E4C7 - - fileRef - 7562D13D1A9798D100C7E4C7 - isa - PBXBuildFile - - 7562D1401A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - folder.assetcatalog - path - Images.xcassets - sourceTree - <group> - - 7562D1411A9798D100C7E4C7 - - fileRef - 7562D1401A9798D100C7E4C7 - isa - PBXBuildFile - - 7562D1421A9798D100C7E4C7 - - children - - 7562D1431A9798D100C7E4C7 - - isa - PBXVariantGroup - name - LaunchScreen.xib - sourceTree - <group> - - 7562D1431A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - file.xib - name - Base - path - Base.lproj/LaunchScreen.xib - sourceTree - <group> - - 7562D1441A9798D100C7E4C7 - - fileRef - 7562D1421A9798D100C7E4C7 - isa - PBXBuildFile - - 7562D1451A9798D100C7E4C7 - - buildActionMask - 2147483647 - files - - 7562D1501A9798D100C7E4C7 - - isa - PBXSourcesBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - 7562D1461A9798D100C7E4C7 - - buildActionMask - 2147483647 - files - - isa - PBXFrameworksBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - 7562D1471A9798D100C7E4C7 - - buildActionMask - 2147483647 - files - - isa - PBXResourcesBuildPhase - runOnlyForDeploymentPostprocessing - 0 - - 7562D1481A9798D100C7E4C7 - - buildConfigurationList - 7562D1561A9798D100C7E4C7 - buildPhases - - 7562D1451A9798D100C7E4C7 - 7562D1461A9798D100C7E4C7 - 7562D1471A9798D100C7E4C7 - - buildRules - - dependencies - - 7562D14B1A9798D100C7E4C7 - - isa - PBXNativeTarget - name - testTests - productName - testTests - productReference - 7562D1491A9798D100C7E4C7 - productType - com.apple.product-type.bundle.unit-test - - 7562D1491A9798D100C7E4C7 - - explicitFileType - wrapper.cfbundle - includeInIndex - 0 - isa - PBXFileReference - path - testTests.xctest - sourceTree - BUILT_PRODUCTS_DIR - - 7562D14A1A9798D100C7E4C7 - - containerPortal - 7562D1251A9798D100C7E4C7 - isa - PBXContainerItemProxy - proxyType - 1 - remoteGlobalIDString - 7562D12C1A9798D100C7E4C7 - remoteInfo - test - - 7562D14B1A9798D100C7E4C7 - - isa - PBXTargetDependency - target - 7562D12C1A9798D100C7E4C7 - targetProxy - 7562D14A1A9798D100C7E4C7 - - 7562D14C1A9798D100C7E4C7 - - children - - 7562D14F1A9798D100C7E4C7 - 7562D14D1A9798D100C7E4C7 - - isa - PBXGroup - path - testTests - sourceTree - <group> - - 7562D14D1A9798D100C7E4C7 - - children - - 7562D14E1A9798D100C7E4C7 - - isa - PBXGroup - name - Supporting Files - sourceTree - <group> - - 7562D14E1A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - text.plist.xml - path - Info.plist - sourceTree - <group> - - 7562D14F1A9798D100C7E4C7 - - isa - PBXFileReference - lastKnownFileType - sourcecode.c.objc - path - testTests.m - sourceTree - <group> - - 7562D1501A9798D100C7E4C7 - - fileRef - 7562D14F1A9798D100C7E4C7 - isa - PBXBuildFile - - 7562D1511A9798D100C7E4C7 - - buildSettings - - ALWAYS_SEARCH_USER_PATHS - NO - CLANG_CXX_LANGUAGE_STANDARD - gnu++0x - CLANG_CXX_LIBRARY - libc++ - CLANG_ENABLE_MODULES - YES - CLANG_ENABLE_OBJC_ARC - YES - CLANG_WARN_BOOL_CONVERSION - YES - CLANG_WARN_CONSTANT_CONVERSION - YES - CLANG_WARN_DIRECT_OBJC_ISA_USAGE - YES_ERROR - CLANG_WARN_EMPTY_BODY - YES - CLANG_WARN_ENUM_CONVERSION - YES - CLANG_WARN_INT_CONVERSION - YES - CLANG_WARN_OBJC_ROOT_CLASS - YES_ERROR - CLANG_WARN_UNREACHABLE_CODE - YES - CLANG_WARN__DUPLICATE_METHOD_MATCH - YES - CODE_SIGN_IDENTITY[sdk=iphoneos*] - iPhone Developer - COPY_PHASE_STRIP - NO - ENABLE_STRICT_OBJC_MSGSEND - YES - GCC_C_LANGUAGE_STANDARD - gnu99 - GCC_DYNAMIC_NO_PIC - NO - GCC_OPTIMIZATION_LEVEL - 0 - GCC_PREPROCESSOR_DEFINITIONS - - DEBUG=1 - $(inherited) - - GCC_SYMBOLS_PRIVATE_EXTERN - NO - GCC_WARN_64_TO_32_BIT_CONVERSION - YES - GCC_WARN_ABOUT_RETURN_TYPE - YES_ERROR - GCC_WARN_UNDECLARED_SELECTOR - YES - GCC_WARN_UNINITIALIZED_AUTOS - YES_AGGRESSIVE - GCC_WARN_UNUSED_FUNCTION - YES - GCC_WARN_UNUSED_VARIABLE - YES - IPHONEOS_DEPLOYMENT_TARGET - 8.1 - MTL_ENABLE_DEBUG_INFO - YES - ONLY_ACTIVE_ARCH - YES - SDKROOT - iphoneos - TARGETED_DEVICE_FAMILY - 1,2 - - isa - XCBuildConfiguration - name - Debug - - 7562D1521A9798D100C7E4C7 - - buildSettings - - ALWAYS_SEARCH_USER_PATHS - NO - CLANG_CXX_LANGUAGE_STANDARD - gnu++0x - CLANG_CXX_LIBRARY - libc++ - CLANG_ENABLE_MODULES - YES - CLANG_ENABLE_OBJC_ARC - YES - CLANG_WARN_BOOL_CONVERSION - YES - CLANG_WARN_CONSTANT_CONVERSION - YES - CLANG_WARN_DIRECT_OBJC_ISA_USAGE - YES_ERROR - CLANG_WARN_EMPTY_BODY - YES - CLANG_WARN_ENUM_CONVERSION - YES - CLANG_WARN_INT_CONVERSION - YES - CLANG_WARN_OBJC_ROOT_CLASS - YES_ERROR - CLANG_WARN_UNREACHABLE_CODE - YES - CLANG_WARN__DUPLICATE_METHOD_MATCH - YES - CODE_SIGN_IDENTITY[sdk=iphoneos*] - iPhone Developer - COPY_PHASE_STRIP - YES - ENABLE_NS_ASSERTIONS - NO - ENABLE_STRICT_OBJC_MSGSEND - YES - GCC_C_LANGUAGE_STANDARD - gnu99 - GCC_WARN_64_TO_32_BIT_CONVERSION - YES - GCC_WARN_ABOUT_RETURN_TYPE - YES_ERROR - GCC_WARN_UNDECLARED_SELECTOR - YES - GCC_WARN_UNINITIALIZED_AUTOS - YES_AGGRESSIVE - GCC_WARN_UNUSED_FUNCTION - YES - GCC_WARN_UNUSED_VARIABLE - YES - IPHONEOS_DEPLOYMENT_TARGET - 8.1 - MTL_ENABLE_DEBUG_INFO - NO - SDKROOT - iphoneos - TARGETED_DEVICE_FAMILY - 1,2 - VALIDATE_PRODUCT - YES - - isa - XCBuildConfiguration - name - Release - - 7562D1531A9798D100C7E4C7 - - buildConfigurations - - 7562D1541A9798D100C7E4C7 - 7562D1551A9798D100C7E4C7 - - defaultConfigurationIsVisible - 0 - isa - XCConfigurationList - - 7562D1541A9798D100C7E4C7 - - baseConfigurationReference - 419C442F6188595806595BBC - buildSettings - - ASSETCATALOG_COMPILER_APPICON_NAME - AppIcon - INFOPLIST_FILE - test/Info.plist - LD_RUNPATH_SEARCH_PATHS - $(inherited) @executable_path/Frameworks - PRODUCT_NAME - $(TARGET_NAME) - - isa - XCBuildConfiguration - name - Debug - - 7562D1551A9798D100C7E4C7 - - baseConfigurationReference - 867C738D296B8AD12A9C8442 - buildSettings - - ASSETCATALOG_COMPILER_APPICON_NAME - AppIcon - INFOPLIST_FILE - test/Info.plist - LD_RUNPATH_SEARCH_PATHS - $(inherited) @executable_path/Frameworks - PRODUCT_NAME - $(TARGET_NAME) - - isa - XCBuildConfiguration - name - Release - - 7562D1561A9798D100C7E4C7 - - buildConfigurations - - 7562D1571A9798D100C7E4C7 - 7562D1581A9798D100C7E4C7 - - defaultConfigurationIsVisible - 0 - isa - XCConfigurationList - - 7562D1571A9798D100C7E4C7 - - buildSettings - - BUNDLE_LOADER - $(TEST_HOST) - FRAMEWORK_SEARCH_PATHS - - $(SDKROOT)/Developer/Library/Frameworks - $(inherited) - - GCC_PREPROCESSOR_DEFINITIONS - - DEBUG=1 - $(inherited) - - INFOPLIST_FILE - testTests/Info.plist - LD_RUNPATH_SEARCH_PATHS - $(inherited) @executable_path/Frameworks @loader_path/Frameworks - PRODUCT_NAME - $(TARGET_NAME) - TEST_HOST - $(BUILT_PRODUCTS_DIR)/test.app/test - - isa - XCBuildConfiguration - name - Debug - - 7562D1581A9798D100C7E4C7 - - buildSettings - - BUNDLE_LOADER - $(TEST_HOST) - FRAMEWORK_SEARCH_PATHS - - $(SDKROOT)/Developer/Library/Frameworks - $(inherited) - - INFOPLIST_FILE - testTests/Info.plist - LD_RUNPATH_SEARCH_PATHS - $(inherited) @executable_path/Frameworks @loader_path/Frameworks - PRODUCT_NAME - $(TARGET_NAME) - TEST_HOST - $(BUILT_PRODUCTS_DIR)/test.app/test - - isa - XCBuildConfiguration - name - Release - - 79DAA173FA0D23768D93563E - - buildActionMask - 2147483647 - files - - inputPaths - - isa - PBXShellScriptBuildPhase - name - Copy Pods Resources - outputPaths - - runOnlyForDeploymentPostprocessing - 0 - shellPath - /bin/sh - shellScript - "${SRCROOT}/Pods/Target Support Files/Pods/Pods-resources.sh" - - showEnvVarsInLog - 0 - - 8555B56C823F33CCEEFF5B68 - - explicitFileType - wrapper.framework - includeInIndex - 0 - isa - PBXFileReference - path - Pods.framework - sourceTree - BUILT_PRODUCTS_DIR - - 867C738D296B8AD12A9C8442 - - includeInIndex - 1 - isa - PBXFileReference - lastKnownFileType - text.xcconfig - name - Pods.release.xcconfig - path - Pods/Target Support Files/Pods/Pods.release.xcconfig - sourceTree - <group> - - B56D427EC37025FA3D56CFC6 - - fileRef - 8555B56C823F33CCEEFF5B68 - isa - PBXBuildFile - settings - - ATTRIBUTES - - Weak - - - - - rootObject - 7562D1251A9798D100C7E4C7 - - diff --git a/Objective-C example/test/test.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Objective-C example/test/test.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index d683bc9..0000000 --- a/Objective-C example/test/test.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/Objective-C example/test/test.xcodeproj/project.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate b/Objective-C example/test/test.xcodeproj/project.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index 740f6c6ce7bc5a4e5561f346ba17b831ab99017f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8396 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 N8zUEg!{4?|{|nj!VM_o2 diff --git a/Objective-C example/test/test.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/test.xcscheme b/Objective-C example/test/test.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/test.xcscheme deleted file mode 100644 index 76b82ec..0000000 --- a/Objective-C example/test/test.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/test.xcscheme +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Objective-C example/test/test.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist b/Objective-C example/test/test.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index 72f1879..0000000 --- a/Objective-C example/test/test.xcodeproj/xcuserdata/ibraheem.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,27 +0,0 @@ - - - - - SchemeUserState - - test.xcscheme - - orderHint - 0 - - - SuppressBuildableAutocreation - - 7562D12C1A9798D100C7E4C7 - - primary - - - 7562D1481A9798D100C7E4C7 - - primary - - - - - diff --git a/Objective-C example/test/test.xcworkspace/contents.xcworkspacedata b/Objective-C example/test/test.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 2cd647a..0000000 --- a/Objective-C example/test/test.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - diff --git a/Objective-C example/test/test.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate b/Objective-C example/test/test.xcworkspace/xcuserdata/ibraheem.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index c87f1fab36590a994f1fbd17188f74aa4f26989f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10988 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 -#import - -@interface AppDelegate : UIResponder - -@property (strong, nonatomic) UIWindow *window; - -@property (readonly, strong, nonatomic) NSManagedObjectContext *managedObjectContext; -@property (readonly, strong, nonatomic) NSManagedObjectModel *managedObjectModel; -@property (readonly, strong, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator; - -- (void)saveContext; -- (NSURL *)applicationDocumentsDirectory; - - -@end - diff --git a/Objective-C example/test/test/AppDelegate.m b/Objective-C example/test/test/AppDelegate.m deleted file mode 100644 index 34d0003..0000000 --- a/Objective-C example/test/test/AppDelegate.m +++ /dev/null @@ -1,127 +0,0 @@ -// -// AppDelegate.m -// test -// -// Created by Haroon on 20/02/2015. -// Copyright (c) 2015 MotionKitsasv. All rights reserved. -// - -#import "AppDelegate.h" - -@interface AppDelegate () - -@end - -@implementation AppDelegate - - -- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { - // Override point for customization after application launch. - return YES; -} - -- (void)applicationWillResignActive:(UIApplication *)application { - // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. - // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. -} - -- (void)applicationDidEnterBackground:(UIApplication *)application { - // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. - // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. -} - -- (void)applicationWillEnterForeground:(UIApplication *)application { - // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. -} - -- (void)applicationDidBecomeActive:(UIApplication *)application { - // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. -} - -- (void)applicationWillTerminate:(UIApplication *)application { - // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. - // Saves changes in the application's managed object context before the application terminates. - [self saveContext]; -} - -#pragma mark - Core Data stack - -@synthesize managedObjectContext = _managedObjectContext; -@synthesize managedObjectModel = _managedObjectModel; -@synthesize persistentStoreCoordinator = _persistentStoreCoordinator; - -- (NSURL *)applicationDocumentsDirectory { - // The directory the application uses to store the Core Data store file. This code uses a directory named "com.motionkitdv.test" in the application's documents directory. - return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]; -} - -- (NSManagedObjectModel *)managedObjectModel { - // The managed object model for the application. It is a fatal error for the application not to be able to find and load its model. - if (_managedObjectModel != nil) { - return _managedObjectModel; - } - NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"test" withExtension:@"momd"]; - _managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL]; - return _managedObjectModel; -} - -- (NSPersistentStoreCoordinator *)persistentStoreCoordinator { - // The persistent store coordinator for the application. This implementation creates and return a coordinator, having added the store for the application to it. - if (_persistentStoreCoordinator != nil) { - return _persistentStoreCoordinator; - } - - // Create the coordinator and store - - _persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]]; - NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"test.sqlite"]; - NSError *error = nil; - NSString *failureReason = @"There was an error creating or loading the application's saved data."; - if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error]) { - // Report any error we got. - NSMutableDictionary *dict = [NSMutableDictionary dictionary]; - dict[NSLocalizedDescriptionKey] = @"Failed to initialize the application's saved data"; - dict[NSLocalizedFailureReasonErrorKey] = failureReason; - dict[NSUnderlyingErrorKey] = error; - error = [NSError errorWithDomain:@"YOUR_ERROR_DOMAIN" code:9999 userInfo:dict]; - // Replace this 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. - NSLog(@"Unresolved error %@, %@", error, [error userInfo]); - abort(); - } - - return _persistentStoreCoordinator; -} - - -- (NSManagedObjectContext *)managedObjectContext { - // Returns the managed object context for the application (which is already bound to the persistent store coordinator for the application.) - if (_managedObjectContext != nil) { - return _managedObjectContext; - } - - NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator]; - if (!coordinator) { - return nil; - } - _managedObjectContext = [[NSManagedObjectContext alloc] init]; - [_managedObjectContext setPersistentStoreCoordinator:coordinator]; - return _managedObjectContext; -} - -#pragma mark - Core Data Saving support - -- (void)saveContext { - NSManagedObjectContext *managedObjectContext = self.managedObjectContext; - if (managedObjectContext != nil) { - NSError *error = nil; - if ([managedObjectContext hasChanges] && ![managedObjectContext save:&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. - NSLog(@"Unresolved error %@, %@", error, [error userInfo]); - abort(); - } - } -} - -@end diff --git a/Objective-C example/test/test/Base.lproj/LaunchScreen.xib b/Objective-C example/test/test/Base.lproj/LaunchScreen.xib deleted file mode 100644 index ff28f27..0000000 --- a/Objective-C example/test/test/Base.lproj/LaunchScreen.xib +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Objective-C example/test/test/Base.lproj/Main.storyboard b/Objective-C example/test/test/Base.lproj/Main.storyboard deleted file mode 100644 index f56d2f3..0000000 --- a/Objective-C example/test/test/Base.lproj/Main.storyboard +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Objective-C example/test/test/Images.xcassets/AppIcon.appiconset/Contents.json b/Objective-C example/test/test/Images.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index 36d2c80..0000000 --- a/Objective-C example/test/test/Images.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "images" : [ - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "3x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "2x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Objective-C example/test/test/Info.plist b/Objective-C example/test/test/Info.plist deleted file mode 100644 index 351aaec..0000000 --- a/Objective-C example/test/test/Info.plist +++ /dev/null @@ -1,47 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - com.motionkitdv.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - LSRequiresIPhoneOS - - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - - diff --git a/Objective-C example/test/test/ViewController.h b/Objective-C example/test/test/ViewController.h deleted file mode 100644 index 6d439e0..0000000 --- a/Objective-C example/test/test/ViewController.h +++ /dev/null @@ -1,16 +0,0 @@ -// -// ViewController.h -// test -// -// Created by Haroon on 20/02/2015. -// Copyright (c) 2015 MotionKitsasv. All rights reserved. -// - -#import - - -@interface ViewController : UIViewController - - -@end - diff --git a/Objective-C example/test/test/ViewController.m b/Objective-C example/test/test/ViewController.m deleted file mode 100644 index 1da55d8..0000000 --- a/Objective-C example/test/test/ViewController.m +++ /dev/null @@ -1,42 +0,0 @@ -// -// ViewController.m -// test -// -// Created by Haroon on 20/02/2015. -// Copyright (c) 2015 MotionKitsasv. All rights reserved. -// - -#import "ViewController.h" -#import - -@interface ViewController () - -@end - -@implementation ViewController - -- (void)viewDidLoad { - [super viewDidLoad]; - MotionKit *motionKit = [[NSClassFromString(@"MotionKit") alloc] init]; - [motionKit getAccelerometerValuesWithInterval:1.0 values:^(double x, double y, double z) { - printf("%f", x); - }]; - [motionKit getAttitudeFromDeviceMotionWithInterval:1.0 values:^(CMAttitude *attitude) { - // Your values here - }]; - - [motionKit getAccelerationAtCurrentInstant:^(double x, double y, double z) { - //Your values here - }]; - [motionKit getDeviceMotionObjectWithInterval:1.0 values:^(CMDeviceMotion *deviceMotion) { - // Your values here - }]; - // Do any additional setup after loading the view, typically from a nib. -} - -- (void)didReceiveMemoryWarning { - [super didReceiveMemoryWarning]; - // Dispose of any resources that can be recreated. -} - -@end diff --git a/Objective-C example/test/test/main.m b/Objective-C example/test/test/main.m deleted file mode 100644 index de65809..0000000 --- a/Objective-C example/test/test/main.m +++ /dev/null @@ -1,16 +0,0 @@ -// -// main.m -// test -// -// Created by Haroon on 20/02/2015. -// Copyright (c) 2015 MotionKitsasv. All rights reserved. -// - -#import -#import "AppDelegate.h" - -int main(int argc, char * argv[]) { - @autoreleasepool { - return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); - } -} diff --git a/Objective-C example/test/test/test.xcdatamodeld/.xccurrentversion b/Objective-C example/test/test/test.xcdatamodeld/.xccurrentversion deleted file mode 100644 index 816997b..0000000 --- a/Objective-C example/test/test/test.xcdatamodeld/.xccurrentversion +++ /dev/null @@ -1,8 +0,0 @@ - - - - - _XCCurrentVersionName - test.xcdatamodel - - diff --git a/Objective-C example/test/test/test.xcdatamodeld/test.xcdatamodel/contents b/Objective-C example/test/test/test.xcdatamodeld/test.xcdatamodel/contents deleted file mode 100644 index 193f33c..0000000 --- a/Objective-C example/test/test/test.xcdatamodeld/test.xcdatamodel/contents +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/Objective-C example/test/testTests/Info.plist b/Objective-C example/test/testTests/Info.plist deleted file mode 100644 index d8c20f8..0000000 --- a/Objective-C example/test/testTests/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - com.motionkitdv.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - - diff --git a/Objective-C example/test/testTests/testTests.m b/Objective-C example/test/testTests/testTests.m deleted file mode 100644 index e116842..0000000 --- a/Objective-C example/test/testTests/testTests.m +++ /dev/null @@ -1,40 +0,0 @@ -// -// testTests.m -// testTests -// -// Created by Haroon on 20/02/2015. -// Copyright (c) 2015 MotionKitsasv. All rights reserved. -// - -#import -#import - -@interface testTests : XCTestCase - -@end - -@implementation testTests - -- (void)setUp { - [super setUp]; - // Put setup code here. This method is called before the invocation of each test method in the class. -} - -- (void)tearDown { - // Put teardown code here. This method is called after the invocation of each test method in the class. - [super tearDown]; -} - -- (void)testExample { - // This is an example of a functional test case. - XCTAssert(YES, @"Pass"); -} - -- (void)testPerformanceExample { - // This is an example of a performance test case. - [self measureBlock:^{ - // Put the code you want to measure the time of here. - }]; -} - -@end From d7d49d61b46729f7cb2ba7ad91fc6a8cdf9f3e90 Mon Sep 17 00:00:00 2001 From: Pawel Kania Date: Sat, 1 Oct 2016 12:24:19 +0200 Subject: [PATCH 8/9] Shared scheme --- .../xcshareddata/xcschemes/MotionKit.xcscheme | 80 +++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 MotionKit.xcodeproj/xcshareddata/xcschemes/MotionKit.xcscheme diff --git a/MotionKit.xcodeproj/xcshareddata/xcschemes/MotionKit.xcscheme b/MotionKit.xcodeproj/xcshareddata/xcschemes/MotionKit.xcscheme new file mode 100644 index 0000000..4dd12ac --- /dev/null +++ b/MotionKit.xcodeproj/xcshareddata/xcschemes/MotionKit.xcscheme @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 7dc02a564a17823dd611453300a968bcb4dde8c5 Mon Sep 17 00:00:00 2001 From: Pawel Kania Date: Sat, 1 Oct 2016 12:32:54 +0200 Subject: [PATCH 9/9] Deployment target changed to 8.1 (from 10.0) --- MotionKit.xcodeproj/project.pbxproj | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/MotionKit.xcodeproj/project.pbxproj b/MotionKit.xcodeproj/project.pbxproj index 5ac8a7d..478b497 100644 --- a/MotionKit.xcodeproj/project.pbxproj +++ b/MotionKit.xcodeproj/project.pbxproj @@ -144,12 +144,14 @@ 4829611F1D9FC3C800199FC3 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + IPHONEOS_DEPLOYMENT_TARGET = 8.1; }; name = Debug; }; 482961201D9FC3C800199FC3 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + IPHONEOS_DEPLOYMENT_TARGET = 8.1; }; name = Release; }; @@ -201,7 +203,6 @@ GCC_WARN_UNUSED_VARIABLE = YES; INFOPLIST_FILE = MotionKit/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; @@ -260,7 +261,6 @@ GCC_WARN_UNUSED_VARIABLE = YES; INFOPLIST_FILE = MotionKit/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MTL_ENABLE_DEBUG_INFO = NO; PRODUCT_BUNDLE_IDENTIFIER = com.MotionKit; @@ -295,6 +295,7 @@ 4829612E1D9FC4B000199FC3 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ };