diff options
author | Iván Ávalos <avalos@disroot.org> | 2022-01-31 00:52:09 -0600 |
---|---|---|
committer | Iván Ávalos <avalos@disroot.org> | 2022-01-31 00:52:09 -0600 |
commit | 1b6df3a665605faa4c8b02ec31e7433caad1b0b1 (patch) | |
tree | 876b3ab2ab45980480d6e6bf2b5696708b72f25e /iosApp/WhirlyGlobeMaplyComponent.xcframework/ios-arm64/WhirlyGlobeMaplyComponent.framework/Headers/MaplyLocationTracker.h | |
parent | df95aae61affe160257cd276c5c342a9c18b0d94 (diff) | |
download | etbsa-trackermap-mobile-1b6df3a665605faa4c8b02ec31e7433caad1b0b1.tar.gz etbsa-trackermap-mobile-1b6df3a665605faa4c8b02ec31e7433caad1b0b1.tar.bz2 etbsa-trackermap-mobile-1b6df3a665605faa4c8b02ec31e7433caad1b0b1.zip |
Added WhirlyGlobe-Maply .xcframework and implemented map layer switch
Diffstat (limited to 'iosApp/WhirlyGlobeMaplyComponent.xcframework/ios-arm64/WhirlyGlobeMaplyComponent.framework/Headers/MaplyLocationTracker.h')
-rw-r--r-- | iosApp/WhirlyGlobeMaplyComponent.xcframework/ios-arm64/WhirlyGlobeMaplyComponent.framework/Headers/MaplyLocationTracker.h | 174 |
1 files changed, 174 insertions, 0 deletions
diff --git a/iosApp/WhirlyGlobeMaplyComponent.xcframework/ios-arm64/WhirlyGlobeMaplyComponent.framework/Headers/MaplyLocationTracker.h b/iosApp/WhirlyGlobeMaplyComponent.xcframework/ios-arm64/WhirlyGlobeMaplyComponent.framework/Headers/MaplyLocationTracker.h new file mode 100644 index 0000000..d759183 --- /dev/null +++ b/iosApp/WhirlyGlobeMaplyComponent.xcframework/ios-arm64/WhirlyGlobeMaplyComponent.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 <UIKit/UIKit.h> +#import <CoreLocation/CoreLocation.h> +#import <WhirlyGlobeMaplyComponent/MaplyCoordinate.h> + +#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 <CLLocationManagerDelegate> + +/// 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<MaplyLocationTrackerDelegate> *__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<MaplyLocationTrackerDelegate> *__nullable)delegate + simulator:(NSObject<MaplyLocationSimulatorDelegate> *__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 + |