From 3913ab898f2c2ecc3b638eca4681957b1cf74330 Mon Sep 17 00:00:00 2001 From: Iván Ávalos Date: Sat, 5 Feb 2022 19:17:10 -0600 Subject: Removed SwiftUIFlowLayout dependency and updated WhirlyGlobe-Maply to latest develop version --- .../Headers/MaplyLocationTracker.h | 174 +++++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 iosApp/WhirlyGlobe.xcframework/ios-arm64/WhirlyGlobe.framework/Headers/MaplyLocationTracker.h (limited to 'iosApp/WhirlyGlobe.xcframework/ios-arm64/WhirlyGlobe.framework/Headers/MaplyLocationTracker.h') diff --git a/iosApp/WhirlyGlobe.xcframework/ios-arm64/WhirlyGlobe.framework/Headers/MaplyLocationTracker.h b/iosApp/WhirlyGlobe.xcframework/ios-arm64/WhirlyGlobe.framework/Headers/MaplyLocationTracker.h new file mode 100644 index 0000000..76e6ebc --- /dev/null +++ b/iosApp/WhirlyGlobe.xcframework/ios-arm64/WhirlyGlobe.framework/Headers/MaplyLocationTracker.h @@ -0,0 +1,174 @@ +/* + * MaplyBaseViewController.h + * MaplyComponent + * + * Created by Ranen Ghosh on 11/23/16. + * Copyright 2012-2022 mousebird consulting + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +#import +#import +#import + +#define LOC_TRACKER_POS_MARKER_SIZE 32 + +@class MaplyBaseViewController; + +typedef struct +{ + float lonDeg; + float latDeg; + float headingDeg; +} MaplyLocationTrackerSimulationPoint; + +typedef enum {MaplyLocationLockNone, MaplyLocationLockNorthUp, MaplyLocationLockHeadingUp, MaplyLocationLockHeadingUpOffset} MaplyLocationLockType; + +/* + Implement the MaplyLocationTrackerDelegate protocol to receive location services callbacks. +*/ +@protocol MaplyLocationTrackerDelegate + +// This is to handle problems / failures further up the line. +- (void) locationManager:(CLLocationManager * __nonnull)manager didFailWithError:(NSError * __nonnull)error; + +- (void) locationManager:(CLLocationManager * __nonnull)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status; + +@optional + +- (void) updateLocation:(CLLocation * __nonnull)location; + +@end + +/* + Implement the MaplyLocationSimulatorDelegate protocol to provide simulated locations +*/ +@protocol MaplyLocationSimulatorDelegate + +- (MaplyLocationTrackerSimulationPoint)getSimulationPoint; + +@optional + +- (bool)hasValidLocation; + +@end + +/* + The MaplyLocationTracker class provides support for showing current position and heading on the map or globe. + + Be sure to set NSLocationWhenInUseUsageDescription in your app's Info.plist before using. + */ +@interface MaplyLocationTracker : NSObject + +/// Exposes MaplyLocationTracker's location manager for use elsewhere +@property (nonatomic, readonly, nullable) CLLocationManager *locationManager; + +/** + MaplyLocationTracker constructor + + @param viewC The globe or map view controller + + @param useHeading Use location services heading information (requires physical magnetometer) + + @param useCourse Use location services course information as fallback if heading unavailable + */ +- (nonnull instancetype)initWithViewC:(MaplyBaseViewController *__nullable)viewC + useHeading:(bool)useHeading + useCourse:(bool)useCourse; + +/** + MaplyLocationTracker constructor + + @param viewC The globe or map view controller + + @param delegate The MaplyLocationTrackerDelegate for receiving location event callbacks + + @param useHeading Use location services heading information (requires physical magnetometer) + + @param useCourse Use location services course information as fallback if heading unavailable + */ +- (nonnull instancetype)initWithViewC:(MaplyBaseViewController *__nullable)viewC + delegate:(NSObject *__nullable)delegate + useHeading:(bool)useHeading + useCourse:(bool)useCourse; + +/** + MaplyLocationTracker constructor + + @param viewC The globe or map view controller + + @param delegate The MaplyLocationTrackerDelegate for receiving location event callbacks + + @param simulator The MaplyLocationSimulatorDelegate for generating simulated locations + + @param useHeading Use location services heading information (requires physical magnetometer) + + @param useCourse Use location services course information as fallback if heading unavailable + */ +- (nonnull instancetype)initWithViewC:(MaplyBaseViewController *__nullable)viewC + delegate:(NSObject *__nullable)delegate + simulator:(NSObject *__nullable)simulator + simInterval:(NSTimeInterval)simInterval + useHeading:(bool)useHeading + useCourse:(bool)useCourse; + +/** + Min/max visibility for the marker assigned to follow location. + */ +@property (nonatomic,assign) float markerMinVis,markerMaxVis; + +/** + Draw priority for the marker assigned to follow location. + */ +@property (nonatomic,assign) int markerDrawPriority; + +/** + Change lock type + + @param lockType The MaplyLocationLockType value for lock behavior + + @param forwardTrackOffset The vertical offset if using MaplyLocationLockHeadingUpOffset (positive values are below the view center) + */ +- (void) changeLockType:(MaplyLocationLockType)lockType forwardTrackOffset:(int)forwardTrackOffset; + +/** + Stop the MaplyLocationTracker behavior and shut it down. + */ +- (void) teardown; + +/** + Get the current device location + + @return The coordinate if valid, else kMaplyNullCoordinate + */ +- (MaplyCoordinate)getLocation; + +/** + Set the current simulated location. + */ +- (void) setLocation:(MaplyLocationTrackerSimulationPoint)point + altitude:(double)altitude; + +/** + Set the current simulated location. + */ +- (void) setLocation:(MaplyLocationTrackerSimulationPoint)point + altitude:(double)altitude + horizontalAccuracy:(double)horizontalAccuracy + verticalAccuracy:(double)verticalAccuracy + speed:(double)speed; +; + +@end + -- cgit v1.2.3