ArcGIS Runtime SDK for iOS: AGSSimulatedLocationDataSource Class Reference
ArcGIS Runtime SDK for iOS  100.15
AGSSimulatedLocationDataSource Class Reference

Description

Simulates location updates based on a list of locations or a polyline geometry.

Instances of this class represent a datasource that can simulate location updates based on a predefined list of locations (see locations) or a polyline geometry (see setLocationsWithPolyline: (AGSSimulatedLocationDataSource)). This is useful for testing or demo purposes.

Since
100
See also
AGSLocationDisplay
Inheritance diagram for AGSSimulatedLocationDataSource:
AGSLocationDataSource AGSObject AGSGPXLocationDataSource

Instance Methods

(void) - didStartOrFailWithError:
 
(void) - didStop
 
(void) - didUpdateHeading:
 
(void) - didUpdateLocation:
 
(void) - doStart
 
(void) - doStop
 
(void) - setLocationsWithPolyline:
 
(void) - startWithCompletion:
 
(void) - stop
 
(void) - stopWithCompletion:
 

Properties

NSError * error
 
id< AGSLocationChangeHandlerDelegatelocationChangeHandlerDelegate
 
NSArray< AGSLocation * > * locations
 
BOOL started
 
AGSLocationDataSourceStatus status
 

Method Documentation

◆ didStartOrFailWithError:

- (void) didStartOrFailWithError: (nullable NSError *)  error

Subclasses must call this in doStart (AGSLocationDataSource(ForSubclassEyesOnly)) once the datasource has started.

Since
100

Provided by category AGSLocationDataSource(ForSubclassEyesOnly).

◆ didStop

- (void) didStop

Subclasses must call this in doStop (AGSLocationDataSource(ForSubclassEyesOnly)) once the datasource has stopped.

Since
100

Provided by category AGSLocationDataSource(ForSubclassEyesOnly).

◆ didUpdateHeading:

- (void) didUpdateHeading: (double)  heading

Subclasses must call this once they have a new heading.

Since
100

Provided by category AGSLocationDataSource(ForSubclassEyesOnly).

◆ didUpdateLocation:

- (void) didUpdateLocation: (AGSLocation *)  location

Subclasses must call this once they have a new location.

Since
100

Provided by category AGSLocationDataSource(ForSubclassEyesOnly).

◆ doStart

- (void) doStart

Subclasses must implement this method to start the datasource. Once the datasource has started or failed to start it should call didStartOrFailWithError: (AGSLocationDataSource(ForSubclassEyesOnly)). As updates are received, the datasource should call didUpdateLocation: (AGSLocationDataSource(ForSubclassEyesOnly)) or didUpdateHeading: (AGSLocationDataSource(ForSubclassEyesOnly)).

Since
100

Provided by category AGSLocationDataSource(ForSubclassEyesOnly).

◆ doStop

- (void) doStop

Subclasses must implement this method to stop the datasource. Once the datasource has stopped it should call didStop (AGSLocationDataSource(ForSubclassEyesOnly))

Since
100

Provided by category AGSLocationDataSource(ForSubclassEyesOnly).

◆ setLocationsWithPolyline:

- (void) setLocationsWithPolyline: (AGSPolyline *)  polyline

Each vertex in the supplied polyline is used to simulate a location update. For example, if you have a polyline geometry representing a route and you want to simulate device movement along the route. A location update will be fired every second.

Parameters
polylineThe polyline must have valid spatial reference.
Since
100

◆ startWithCompletion:

- (void) startWithCompletion: (nullable void(^)(NSError *__nullable error))  completion

This is invoked by the location display on the datasource to initiate requesting location updates. Internally this method calls doStart (AGSLocationDataSource(ForSubclassEyesOnly)) which subclasses must implement.

Parameters
completionblock which will be invoked when the operation completes. If the dataSource failed to start, the error property will be populated.
Since
100

◆ stop

- (void) stop

This is invoked by the location display on the datasource to stop requesting location updates. Internally this method calls doStop (AGSLocationDataSource(ForSubclassEyesOnly)) which subclasses must implement.

Since
100
Deprecated:
100.14. Replaced by stopWithCompletion:.

Provided by category AGSLocationDataSource(AGSDeprecated).

◆ stopWithCompletion:

- (void) stopWithCompletion: (nullable void(^)(void))  completion

This is invoked by the location display on the datasource to stop requesting location updates. Internally this method calls doStop (AGSLocationDataSource(ForSubclassEyesOnly)) which subclasses must implement.

Since
100.14

Property Documentation

◆ error

- (NSError*) error
readnonatomicstronginherited

The error that prevented the datasource from starting or was encountered while retrieving a location udpate

Since
100

◆ locationChangeHandlerDelegate

- (id<AGSLocationChangeHandlerDelegate>) locationChangeHandlerDelegate
readwritenonatomicweakinherited

The delegate which will receive location, heading and status updates from the data source.

Since
100.6

◆ locations

- (NSArray<AGSLocation*>*) locations
readwritenonatomiccopy

An array of AGSLocation objcts that this datasource will use to simulate location updates. A location update will be fired every second.

Since
100

◆ started

- (BOOL) started
readnonatomicassigninherited

YES if the data source has been started, NO otherwise.

Since
100.0
Deprecated:
100.14. Replaced by AGSLocationDataSource::status.

Provided by category AGSLocationDataSource(AGSDeprecated).

◆ status

- (AGSLocationDataSourceStatus) status
readnonatomicassigninherited

The status of the data source.

Since
100.14