-
Notifications
You must be signed in to change notification settings - Fork 507
CoreMotion iOS xcode14.0 rc
TJ Lambert edited this page Sep 15, 2022
·
3 revisions
#CoreMotion.framework https://github.com/xamarin/xamarin-macios/pull/15977
diff -ruN /Applications/Xcode_14.0.0-beta6.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMWaterSubmersionData.h /Applications/Xcode_14.0.0-rc.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMWaterSubmersionData.h
--- /Applications/Xcode_14.0.0-beta6.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMWaterSubmersionData.h 1969-12-31 18:00:00.000000000 -0600
+++ /Applications/Xcode_14.0.0-rc.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMWaterSubmersionData.h 2022-08-27 04:18:55.000000000 -0500
@@ -0,0 +1,71 @@
+/*
+* CMWaterSubmersionData.h
+* CoreMotion
+*
+* Copyright (c) 2021 Apple Inc. All rights reserved.
+*/
+#import <Foundation/Foundation.h>
+#import <CoreMotion/CMAvailability.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSInteger, CMWaterSubmersionState) {
+ CMWaterSubmersionStateUnknown = 0,
+ CMWaterSubmersionStateNotSubmerged,
+ CMWaterSubmersionStateSubmerged
+} NS_SWIFT_NAME(CMWaterSubmersionEvent.State);
+
+typedef NS_ENUM(NSInteger, CMWaterSubmersionDepthState) {
+ CMWaterSubmersionDepthStateUnknown = 0,
+ CMWaterSubmersionDepthStateNotSubmerged = 100,
+ CMWaterSubmersionDepthStateSubmergedShallow = 200,
+ CMWaterSubmersionDepthStateSubmergedDeep = 300,
+ CMWaterSubmersionDepthStateApproachingMaxDepth = 400,
+ CMWaterSubmersionDepthStatePastMaxDepth = 500,
+ CMWaterSubmersionDepthStateSensorDepthError = 600
+} NS_SWIFT_NAME(CMWaterSubmersionMeasurement.DepthState);
+
+/*
+ * CMWaterSubmersionEvent
+ *
+ * Discussion:
+ * Datum representating a new state change of type CMWaterSubmersionState.
+ */
+COREMOTION_EXPORT API_AVAILABLE(watchos(9.0))
+@interface CMWaterSubmersionEvent : NSObject <NSSecureCoding, NSCopying>
+@property (readonly, nonatomic) NSDate* date;
+@property (readonly, nonatomic) CMWaterSubmersionState state;
+@end
+
+/*
+ * CMWaterSubmersionMeasurement
+ *
+ * Discussion:
+ * Datum representing a measurement update comprising of pressure, pressure uncertainty,
+ * depth, surface pressure, and submersion state. Depth value is positive when underwater.
+ * Depth, pressure, and pressureUncertainty are null when not submerged or when the state
+ * is CMWaterSubmersionDepthStateSensorDepthError.
+ */
+COREMOTION_EXPORT API_AVAILABLE(watchos(9.0))
+@interface CMWaterSubmersionMeasurement : NSObject <NSSecureCoding, NSCopying>
+@property (readonly, nonatomic) NSDate* date;
+@property (readonly, nonatomic, nullable) NSMeasurement<NSUnitLength*>* depth;
+@property (readonly, nonatomic, nullable) NSMeasurement<NSUnitPressure*>* pressure;
+@property (readonly, nonatomic) NSMeasurement<NSUnitPressure*>* surfacePressure;
+@property (readonly, nonatomic) CMWaterSubmersionDepthState submersionState;
+@end
+
+/*
+ * CMWaterTemperature
+ *
+ * Discussion:
+ * Datum representing an update comprising of temperature, and temperature uncertainty
+ */
+COREMOTION_EXPORT API_AVAILABLE(watchos(9.0))
+@interface CMWaterTemperature : NSObject <NSSecureCoding, NSCopying>
+@property (readonly, nonatomic) NSDate* date;
+@property (readonly, nonatomic) NSMeasurement<NSUnitTemperature*>* temperature;
+@property (readonly, nonatomic) NSMeasurement<NSUnitTemperature*>* temperatureUncertainty;
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_14.0.0-beta6.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMWaterSubmersionManager.h /Applications/Xcode_14.0.0-rc.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMWaterSubmersionManager.h
--- /Applications/Xcode_14.0.0-beta6.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMWaterSubmersionManager.h 1969-12-31 18:00:00.000000000 -0600
+++ /Applications/Xcode_14.0.0-rc.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CMWaterSubmersionManager.h 2022-08-27 04:18:54.000000000 -0500
@@ -0,0 +1,104 @@
+/*
+* CMWaterSubmersionManager.h
+* CoreMotion
+*
+* Copyright (c) 2021 Apple Inc. All rights reserved.
+*/
+#import <Foundation/Foundation.h>
+#import <CoreMotion/CMAvailability.h>
+#import <CoreMotion/CMAuthorization.h>
+#import <CoreMotion/CMWaterSubmersionData.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class CMWaterSubmersionManager;
+
+COREMOTION_EXPORT API_AVAILABLE(watchos(9.0))
+/*
+ * CMWaterSubmersionManagerDelegate
+ *
+ * Discussion:
+ * Delegate protocol to receive updates from the CMWaterSubmersionManager API. Methods will be invoked
+ * on the main queue.
+ */
+@protocol CMWaterSubmersionManagerDelegate<NSObject>
+
+/*
+ * manager:didUpdateEvent
+ *
+ * Discussion:
+ * Delegate method is called when there is a new event available.
+ * When the delegate is first set, this method will invoked immediately so
+ * that the client always has the current state.
+ */
+- (void)manager:(CMWaterSubmersionManager*)manager didUpdateEvent:(CMWaterSubmersionEvent*)event;
+
+/*
+ * manager:didUpdateMeasurement:
+ *
+ * Discussion:
+ * Delegate method is called when there is a new depth/pressure measurement available. When
+ * the device is not in the Submerged state, the measurement will only include the surface
+ * pressure and submersion state.
+ *
+ *
+ */
+- (void)manager:(CMWaterSubmersionManager*)manager didUpdateMeasurement:(CMWaterSubmersionMeasurement*)measurement;
+
+/*
+ * manager:didUpdateTemperature:
+ *
+ * Discussion:
+ * Delegate method is called when there is a new temperature measurement available.
+ * New measurements will only be available while device is in the WaterSubmerged state.
+ */
+- (void)manager:(CMWaterSubmersionManager*)manager didUpdateTemperature:(CMWaterTemperature*)measurement;
+
+/*
+ * manager:errorOccurred:
+ * Discussion:
+ * Delegate method is called when an error has occurred.
+ */
+- (void)manager:(CMWaterSubmersionManager*)manager errorOccurred:(NSError*)error;
+@end
+
+COREMOTION_EXPORT API_AVAILABLE(watchos(9.0))
+/*
+ * CMWaterSubmersionManager
+ *
+ * Discussion:
+ * API to retrieve values related to device state with respect to water
+ * submersion and measurements updates when device is submerged.
+ */
+@interface CMWaterSubmersionManager : NSObject
+/*
+ * delegate
+ *
+ * Discussion:
+ * The delegate object to receive event and measurements updates.
+ * Setting of the delegate will invoke TCC, and updates are subject
+ * to client being authorized. By setting the delegate to a non-nil value,
+ * start event and measurement updates. Setting the delegate to nil will
+ * stop all updates.
+ */
+@property (weak, nonatomic, nullable) id <CMWaterSubmersionManagerDelegate> delegate;
+
+/*
+ * waterSubmersionAvailable
+ *
+ * Discussion:
+ * Determines whether this feature is available on the current platform.
+ */
+@property (class, nonatomic, readonly) BOOL waterSubmersionAvailable;
+
+/*
+ * authorizationStatus
+ *
+ * Discussion:
+ * Checks to see if the client is authorized to use this API via TCC
+ * under Motion & Fitness.
+ */
+@property (class, nonatomic, readonly) CMAuthorizationStatus authorizationStatus;
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_14.0.0-beta6.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CoreMotion.h /Applications/Xcode_14.0.0-rc.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CoreMotion.h
--- /Applications/Xcode_14.0.0-beta6.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CoreMotion.h 2022-08-04 23:55:56.000000000 -0500
+++ /Applications/Xcode_14.0.0-rc.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreMotion.framework/Headers/CoreMotion.h 2022-08-24 22:49:06.000000000 -0500
@@ -34,5 +34,6 @@
#import <CoreMotion/CMStepCounter.h>
#import <CoreMotion/CMSensorRecorder.h>
#import <CoreMotion/CMRecordedPressureData.h>
+#import <CoreMotion/CMWaterSubmersionManager.h>
#endif /* __COREMOTION__ */
- README
- xcode13.0 Binding Status
- xcode13.1 Binding Status
- xcode13.2 Binding Status
- xcode13.3 Binding Status
- xcode13.4 Binding Status
- xcode14.0 Binding Status
- xcode14.1 Binding Status
- xcode14.2 Binding Status
- xcode14.3 Binding Status
- xcode15.0 Binding Status
- xcode15.1 Binding Status
- xcode15.3 Binding Status
- xcode15.4 Binding Status
- xcode16.0 Binding Status