Skip to main content

class

ActivityTracker

Extends: Hashable
public static func == (lhs: ActivityTracker, rhs: ActivityTracker) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
platformContext: Context,
model: Model,
speedBound: Double = 4.2,
timeThreshold: TimeInterval = 20
)

Navigation extension that monitors user activity and gives a signal when the user has stopped using the navigator and it can be turned off.

Parameters
platformContext

Context.

model

The model of the navigator whose status is being tracked.

speedBound

Upper speed limit in m/s, if exceeded in the Finished state of the navigator, the navigator is considered active, i.e. the movement continues.

timeThreshold
TimeInterval

Time during which in the Finished state of the navigator the speed is tracked below the threshold for determining the inactive state of the navigator. If during this time the speed is less than the set threshold or there is no location and speed data, the navigator is considered inactive.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var stopChannel
StatefulChannel<Bool>

A flag whose active state indicates that the navigator must be stopped. If in the Finished state the navigation stops, i.e. the movement stops or its speed becomes lower than the threshold value, and if this state persists for some time, the flag is set to true, otherwise it is set to false.

var stop

A flag whose active state indicates that the navigator must be stopped. If in the Finished state the navigation stops, i.e. the movement stops or its speed becomes lower than the threshold value, and if this state persists for some time, the flag is set to true, otherwise it is set to false.

AlternativeRoutesProviderSettings

Extends: Hashable
public static func == (lhs: AlternativeRoutesProviderSettings, rhs: AlternativeRoutesProviderSettings) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var alternativeRoutesEnabled

Flag to enable/disable alternative route suggestion. By default, the alternate route suggestion is on.

var betterRouteEnabled

Flag to enable/disable suggestion of a better route. By default, better route suggestion is on.

var routeSearchDelay

Delay before searching for alternative routes when starting a trip on a route or after switching to another route. Must be at least 5 seconds. The default is 20 seconds.

var betterRouteTimeCostThreshold

The minimum difference in travel time between the original route and the alternate route at which the alternate route is considered a better route.

var betterRouteLengthThreshold

Minimum cumulative length of route edges that differ between the original route and the alternate route, at which the alternate route is considered the better route.

Attributes

Interface for managing map object attributes.

Extends: Hashable
public static func == (lhs: Attributes, rhs: Attributes) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func setAttributeValue(
name: String,
value: AttributeValue
)

Setting an attribute.

Parameters
name

Property name

value
public func setAttributeValues(
values: [String: AttributeValue],
attributesToRemove: [String] = []
)

Setting a set of attributes.

Parameters
values
String[ : ]

Set of “name”:“value” pairs for attributes being added.

attributesToRemove

List of property names to delete.

public func removeAttribute(
name: String
)

Removing an attribute.

Parameters
name

Name of a property to delete.

public func getAttributeValue(
name: String
) -> AttributeValue

Getting an attribute.

Parameters
name

Name of a property to retrieve.

Returns
Properties
var attributeNames

Retrieving a list of properties.

var changed
Channel<[String]>

Receiving a channel notifying about the change of the properties.

BaseCamera

Camera.

Extends: Hashable
public static func == (lhs: BaseCamera, rhs: BaseCamera) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func clone() -> BaseCamera

Create a copy of the current camera.

Returns
public func setPosition(
position: CameraPosition
) throws

Set a new camera position.

Parameters
public func setZoomRestrictions(
zoomRestrictions: CameraZoomRestrictions
) throws

Sets a new range of zoom level limits.

Parameters
zoomRestrictions

New range of zoom-level restrictions.

public func setPositionPoint(
positionPoint: CameraPositionPoint
) throws

Sets the new position relative to the area of the screen limited by the indentation.

Parameters
positionPoint

New position relative to the area of the screen bounded by the indents.

Properties
var projection

Projection.

var positionChannel
StatefulChannel<CameraPosition>

Getting the current camera position.

var position

Getting the current camera position.

var zoomRestrictionsChannel
StatefulChannel<CameraZoomRestrictions>

Getting the current zoom level limits.

var zoomRestrictions

Getting the current zoom level limits.

var deviceDensityChannel
StatefulChannel<DeviceDensity>

Getting the DPI ratio to the base DPI of the device.

var deviceDensity

Getting the DPI ratio to the base DPI of the device.

var sizeChannel
StatefulChannel<ScreenSize>

Getting the viewport size.

var size

Getting the viewport size.

var paddingChannel
StatefulChannel<Padding>

Getting the current indentation from the edges of the screen.

var padding

Getting the current indentation from the edges of the screen.

var positionPointChannel
StatefulChannel<CameraPositionPoint>

The screen point to which the camera position is anchored is set with the padding.

var positionPoint

The screen point to which the camera position is anchored is set with the padding.

var visibleArea

The intersection area between the camera's visibility pyramid and the map surface.

var visibleRectChannel
StatefulChannel<GeoRect>

The volume rectangle of the visible area of the map.

var visibleRect

The volume rectangle of the visible area of the map.

var styleZoomToTiltRelationChannel
StatefulChannel<StyleZoomToTiltRelation?>

Getting the current function of the camera tilt angle dependence on the style zoom level.

var styleZoomToTiltRelation

Getting the current function of the camera tilt angle dependence on the style zoom level.

var maxTiltRestrictionChannel
StatefulChannel<StyleZoomToTiltRelation?>

Get the current function of the dependence of the maximum camera tilt angle on the style zoom level.

var maxTiltRestriction

Get the current function of the dependence of the maximum camera tilt angle on the style zoom level.

BoolRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: BoolRouteLongAttribute, rhs: BoolRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> BoolRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [BoolRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first

First element.

var last

Last element.

var entries

BufferedChannel

Extends: Channel<Value>
Properties
var value
Value?

Camera

Camera for triggering map movement and tracking settings.

Extends: BaseCamera
Methods
public func move(
moveController: CameraMoveController
) -> Future<CameraAnimatedMoveResult>

Start moving the map.

Parameters
moveController

Animated camera movement controller.

Returns
Future<>
public func move(
position: CameraPosition,
time: TimeInterval = 0.3,
animationType: CameraAnimationType = CameraAnimationType.`default`
) -> Future<CameraAnimatedMoveResult>

Starting an animated map movement using the built-in map movement controller.

Parameters
position

Camera end position.

time
TimeInterval

Time allocated for moving the map.

animationType

Type of animation when moving the camera.

Returns
Future<>
public func processMovementAndStop()

Set the camera position according to the current time and stop the animated movement.

public func setBehaviour(
behaviour: CameraBehaviour
)
Parameters
public func addFollowController(
followController: FollowController
)

Adding the follow controller.

Parameters
followController
public func removeFollowController(
followController: FollowController
)

Removing the follow controller.

Parameters
followController
public func setCustomFollowController(
followController: CustomFollowController
)

Adding the follow controller implemented on the platform.

Parameters
followController
public func removeCustomFollowController()

Removing the follow controller implemented on the platform.

func setPosition(point: GeoPoint, zoom: Zoom) throws
Parameters
point
zoom
func setPosition(point: GeoPoint) throws
Parameters
Properties
var stateChannel
StatefulChannel<CameraState>

Obtaining the current status of the camera.

var state

Obtaining the current status of the camera.

var behaviourChannel
StatefulChannel<CameraBehaviourChange>

Camera tracking mode.

var behaviour

Camera tracking mode.

CameraNotifier

Warns you if you enter the coverage area of a traffic camera.

Extends: Hashable
public static func == (lhs: CameraNotifier, rhs: CameraNotifier) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
model: Model
)

Navigation extension that warns you if you enter the coverage area of a traffic camera.

Parameters
model

The model of the navigator whose status is being tracked.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var cameraProgressChannel
StatefulChannel<CameraProgressInfo?>

Progress of passing the traffic camera coverage area.

var cameraProgress

Progress of passing the traffic camera coverage area.

CameraRouteAttribute

Container that describes a point attribute of a route. Each item is stored as a point on the route, in which the item is located, and the value of the item itself.

Extends: Hashable
public static func == (lhs: CameraRouteAttribute, rhs: CameraRouteAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [CameraRouteEntry]

Elements that fall within the segment [begin, end).

Parameters
public func findNearBackward(
point: RoutePoint
) -> CameraRouteEntry?

Find the nearest element with position < = point.

Parameters
public func findNearForward(
point: RoutePoint
) -> CameraRouteEntry?

Find the nearest element with position >= point.

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first

First element.

var last

Last element.

var entries

All elements.

CancelEvent

Event of canceling the current action.

Extends: Event
public convenience init()

Cancellable

A cancellation token for a running operation.

Implements: ICancellable
public init(
cancel: @escaping () -> Void,
release: @escaping () -> Void = {}
)
public convenience init()

Make a cancellation token that cancels nothing.

public static func ==(lhs: Cancellable, rhs: Cancellable) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func cancel()

May be called any number of times from any queue.

public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Channel

public static func ==(lhs: Channel<Value>, rhs: Channel<Value>) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func sink(
receiveValue: @escaping (Value) -> Void
) -> Cancellable

Subscribe to a stream of values over time. The subscription never fails.

Returns
Cancellable

A cancellable instance. Deallocation of the result will tear down the subscription stream.

public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Circle

Окружность.

public convenience init(
options: CircleOptions
)
Parameters
Properties
var position

The location of the center of a circle.

var radius

Radius of a circle.

var color

Circle fill color.

var strokeWidth

Circle border line width.

var strokeColor

Circle border color.

ClusterObject

Cluster of objects.

Extends: MapObject
Properties
var position

Getting the cluster position on the map.

var objectCount

Getting the number of markers in the cluster.

var objects

Getting the list of markers in the cluster.

var geometryObject

Obtaining the geometric object of the cluster.

CompassControl

Extends: UIControl
Methods
public override func layoutSubviews()
Properties
var intrinsicContentSize

CompassControlModel

Model of the compass control. The control consists of a compass button that, when clicked, causes the map camera to change its angle in the direction of north. If the map camera is facing the north, the control must be hidden. Thread-safe.

Extends: Hashable
public static func == (lhs: CompassControlModel, rhs: CompassControlModel) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
map: Map
)
Parameters
map
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func onClicked()
Properties
var bearingChannel
StatefulChannel<Bearing>
var bearing

ComplexGeometry

Complex geometry, contains a set of simple or complex geometries.

Extends: Geometry
public convenience init(
geometries: [Geometry]
)
Parameters
geometries
Properties
var elements

Container

Central object for accessing iOS Mobile SDK features.

public convenience init(
apiKeyOptions: ApiKeyOptions = .default,
logOptions: LogOptions = .default,
httpClientForRequest: IHTTPClient? = nil,
httpOptions: HTTPOptions = .default,
positioningServices: IPositioningServicesFactory = PlatformPositioningServicesFactory(),
batteryOptions: BatteryOptions = .default,
personalDataCollectionOptions: PersonalDataCollectionOptions = .default,
localizationOptions: LocalizationOptions = .default,
audioOptions: AudioOptions = .default,
vendorConfigFile: File? = nil
)

Container builder.

Parameters
apiKeyOptions

Key settings for accessing 2GIS services.

logOptions

Journaling settings.

httpClientForRequest

Network client for sending HTTP requests.

httpOptions

HTTP client settings (such as caching).

positioningServices

Geo-positioning services.

batteryOptions
personalDataCollectionOptions

Data collection service settings.

localizationOptions

Application localization settings.

audioOptions

Sound settings.

vendorConfigFile

Overrides settings for working in an offline environment.

Methods
public func makeMapFactory(
options: MapOptions
) throws -> IMapFactory
Parameters
options

Initial map properties. Specify .default to quickly create an online map looking at Moscow, with a fixed inaccurate PPI (not matching the current device).

Returns
public func makeStyleFactory() throws -> IStyleFactory

Create a constructor of standard and custom styles.

public func makeSearchManagerFactory() throws -> ISearchManagerFactory

Create a factory search engines for a directory.

public func makeSourceFactory() throws -> ISourceFactory

Create a factory of map data sources.

public func makeImageFactory() throws -> IImageFactory

Create a factory of images for map objects.

public func makeLocaleManager() throws -> LocaleManager

Create a manager of locale settings of an application.

public func makeRouteEditorFactory() throws -> IRouteEditorFactory

Create a factory of route editors.

public func makeNavigationViewFactory(options: NavigationViewOptions = .default) throws -> INavigationViewFactory

Create a factory of a navigator layer.

Parameters
options

Custom settings.

Returns
public func makeRoadEventCardViewFactory(options: RoadEventCardViewOptions = .default) throws -> IRoadEventCardViewFactory

Create a factory of a road event card.

Parameters
Properties
var context

Root opaque SDK object container. Used as an argument to the SDK API.

var markerViewFactory

UIView marker factory for map.

var locationService

Current ILocationService implementation used within the SDK and working via ILocationProvider.

let audioSettings

Sound settings.

let httpOptions

HTTP client settings.

let batteryOptions

Battery tracking settings.

let localizationOptions

Application localization settings.

Context

Context - the environment required for the SDK to work.

Extends: Hashable
public static func == (lhs: Context, rhs: Context) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

CreateRoadEventControl

Block for creating road events.

Extends: UIControl
Methods
public override func layoutSubviews()
Properties
var intrinsicContentSize

CurrentLocationControl

Unit with the function of flyover to the current location.

Extends: UIControl
Methods
public override func layoutSubviews()
Properties
var intrinsicContentSize

DgisMapObject

Object of the 2GIS map.

Extends: MapObject
Properties
var id

Stable numeric object ID.

DgisSource

The main interface of 2GIS data sources.

Extends: Source
Methods
public static func createDgisSource(
context: Context,
workingMode: DgisSourceWorkingMode = DgisSourceWorkingMode.online
) -> Source

Create a source that receives data from 2GIS servers or uses preloaded data.

Parameters
context
workingMode
Returns
public func setHighlighted(
directoryObjectIds: [DgisObjectId],
highlighted: Bool
)

Setting or unsetting the object highlight.

Parameters
directoryObjectIds

IDs of the objects being changed.

highlighted

Setting or removing a selection.

Properties
var highlightedObjectsChannel
StatefulChannel<[DgisObjectId]>

Retrieving a list of IDs of the highlighted objects.

var highlightedObjects

Retrieving a list of IDs of the highlighted objects.

DirectMapControlBeginEvent

The event to start direct control of the map. Tells the map to process direct map control events. Direct control events only work from DirectMapControlBeginEvent to DirectMapControlEndEvent. After the sequence of direct control events is complete, kinematics can start. Kinematics uses the occurrence time of the event, so it is better to use the time received from the system rather than fill in the value during processing. For now, kinematics only work for moving the map, but not for rotating and zooming.

Extends: Event
public convenience init()

DirectMapControlEndEvent

Event of ending direct map control. Ends direct map control that was started after receiving the DirectMapControlBeginEvent event. Direct map control events are described in DirectMapControlBeginEvent.

Extends: InputEvent
public convenience init(
timestamp: TimeInterval
)
Parameters
timestamp
TimeInterval

DirectMapRotationEvent

Direct map rotation event. The events of direct map control are described in DirectMapControlBeginEvent.

Extends: InputEvent
public convenience init(
bearingDelta: Bearing,
timestamp: TimeInterval,
rotationCenter: ScreenPoint? = nil
)
Parameters
bearingDelta

Change of the map rotation angle, in degrees. Positive values correspond to the direction of rotation counterclockwise

timestamp
TimeInterval

Time of the system event generation.

rotationCenter

Point on the screen relative to which the map rotates. If not set, rotation is done relative to the map position point.

Properties
var bearingDelta

Changing the rotation angle of the map.

var rotationCenter

Point on the screen relative to which the map rotates.

DirectMapScalingEvent

The event of direct map scaling. Direct map control events are described in DirectMapControlBeginEvent.

Extends: InputEvent
public convenience init(
zoomDelta: Float,
timestamp: TimeInterval,
scalingCenter: ScreenPoint? = nil
)
Parameters
zoomDelta
Float

The value by which the current zoom value will change.

timestamp
TimeInterval

Time of the system event generation.

scalingCenter

Point on the screen relative to which the map scales. If not set, scaling is done relative to the map position point.

Properties
var zoomDelta
Float

The value by which the current scale value will change.

var scalingCenter

Point on the screen relative to which the map scales.

DirectMapShiftEvent

Direct map shift event. Direct map control events are described in DirectMapControlBeginEvent.

Extends: InputEvent
public convenience init(
screenShift: ScreenShift,
shiftedPoint: ScreenPoint,
timestamp: TimeInterval
)
Parameters
screenShift

The change in the screen position of the map relative to the previous one, in pixels.

shiftedPoint

Center point from which the map is shifted.

timestamp
TimeInterval

Time of the system event generation.

Properties
var screenShift

Changing the map screen position.

var shiftedPoint

Center point from which the map is shifted.

DirectMapTiltEvent

Event of direct camera tilt. The events of direct map control are described in DirectMapControlBeginEvent.

Extends: InputEvent
public convenience init(
delta: Float,
timestamp: TimeInterval
)
Parameters
delta
Float

Tilt angle change in degrees.

timestamp
TimeInterval

Time of the system event generation.

Properties
var delta
Float

Tilt angle change in degrees.

DirectoryObject

Directory object.

Extends: Hashable
public static func == (lhs: DirectoryObject, rhs: DirectoryObject) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func formattedAddress(
type: FormattingType
) -> FormattedAddress?

The string representation of the address formatted according to the specified length requirement.

Parameters
Properties
var types

Object type. There can be several, for example, Sun City Mall is a branch of an organization and a building at the same time. The first type in this list is the primary type.

var title

Object title.

var titleAddition

Additional title information. Example: “(apt. 1-12)”

var subtitle

Object subheading.

var id

Stable numeric object ID.

var markerPosition

The point of the object where the marker should be placed.

var address

The address of the object as a set of components.

var attributes

Additional object attributes.

var contextAttributes

Contextual object's additional attributes.

var timeZoneOffset

The shift of the object's local time relative to UTC in seconds at the current moment.

var openingHours

The object's running time.

var contactInfos

The object's contacts.

var reviews

Reviews.

var parkingInfo

Additional parking information.

var workStatus

Operating status.

var levelId

Identifier of the floor on which the facility is located.

var buildingLevels

Information about the floor plans of the building.

var entrances

Information about entrances.

DoubleRouteAttribute

A container that describes a point attribute of the route. Each item is stored as a point on the route in which the item is located and the value of the item itself.

Extends: Hashable
public static func == (lhs: DoubleRouteAttribute, rhs: DoubleRouteAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [DoubleRouteEntry]

Elements falling in the segment [begin, end).

Parameters
public func findNearBackward(
point: RoutePoint
) -> DoubleRouteEntry?

Find the nearest element with position < = point.

Parameters
public func findNearForward(
point: RoutePoint
) -> DoubleRouteEntry?

Find the nearest element with position >= point.

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first

First element.

var last

Last element.

var entries

All elements.

DynamicRouteInfoSettings

Settings for getting dynamic route data.

Extends: Hashable
public static func == (lhs: DynamicRouteInfoSettings, rhs: DynamicRouteInfoSettings) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var updatePeriod

Frequency at which dynamic route data should be updated.

Event

Base class for all events handled.

Extends: Hashable
public static func == (lhs: Event, rhs: Event) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

ExceedSpeedLimitSettings

Settings of the detection of exceeding the speed limit.

Extends: Hashable
public static func == (lhs: ExceedSpeedLimitSettings, rhs: ExceedSpeedLimitSettings) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var exceedSpeedNotificationEnabled

Enabling/disabling the detection of exceeding the speed limit.

var allowableSpeedExcess
Float

Permitted exceeding the speed limit in m/s, equals to 0 by default.

File

File ID.

Extends: Hashable
public static func == (lhs: File, rhs: File) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
path: String
)

File in a file system.

Parameters
path

File path.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public static func fromString(
contents: String
) -> File

File with the content from a given string.

Parameters
contents

The contents of the file.

Returns

FloatRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: FloatRouteLongAttribute, rhs: FloatRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> FloatRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [FloatRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first

First element.

var last
var entries

FollowController

A class that allows you to control the position of the camera and the geopositioning marker. All its methods implementations must be thread-safe. Most methods have trivial default implementations (so that FollowController, which is responsible for scaling, does not have to override coordinates() methods, etc.).

Extends: Hashable
public static func == (lhs: FollowController, rhs: FollowController) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func requestValues(
values: FollowValueOptionSet
)

This method tells the FollowController which of the values it provides are in use. This frees up the resources involved in calculating unused values. The method can be called multiple times with different values, in which case the most recent value is relevant.

Parameters
public func setClock(
clock: FollowControllerClock?
)

This method passes the time source to the FollowController. The time values that are returned from next_timestamp() must be calculated relative to the values obtained from clock. This method is not called repeatedly to replace a previously set non-zero value with a different non-zero value.

Parameters
public func setThresholds(
shiftMeters: Double,
rotation: Double
)

Thresholds for position shifts and rotation angles. Shorter offsets and rotations of smaller angles are not considered visually distinguishable.

Parameters
shiftMeters
rotation
public func updateValues()

Query to calculate all provided values. Immediately after calling this method, all values (coordinates(), satellite_bearing(), etc.) are considered relevant.

Properties
var availableValues

A set of value types that this FollowController can control. For example, one FollowController can only control coordinates, while another can only control map tilt.

var nextTimestampChannel
StatefulChannel<Date?>

A channel that informs subscribers of the time of the next visible value change. The time of change of values not among those requested with request_values() may not be reported. The time values are interpreted relative to the source passed in set_clock().

var nextTimestamp
Date?

A channel that informs subscribers of the time of the next visible value change. The time of change of values not among those requested with request_values() may not be reported. The time values are interpreted relative to the source passed in set_clock().

var coordinates

Geographic coordinates.

var satelliteBearing

Direction of travel.

var magneticBearing

Direction to magnetic north.

var tilt

Map tilt.

var styleZoom

Style zoom level of the map.

var accuracy

Precision circle radius (meters).

FollowControllerClock

Clock used to measure time in FollowController.

Extends: Hashable
public static func == (lhs: FollowControllerClock, rhs: FollowControllerClock) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var now
Date

FreeRoamSettings

Extends: Hashable
public static func == (lhs: FreeRoamSettings, rhs: FreeRoamSettings) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var onRoutePrefetchLength

Tiles of the road graph are loaded into the http cache during route guidance, if they correspond to the section of the route from the current position to the specified distance. The default value is 5 km.

var onRoutePrefetchRadiusMeters

When caching the road graph tiles during route guidance, the tiles are loaded into the http cache if they are closer than the specified distance in meters from the route line. The default value is 1 km

var prefetchRadiusMeters

Tiles of the road graph are loaded into the http cache if they appear closer than the specified distance in meters from the current position. The default value is 2 km.

Future

public init(
subscriber: @escaping Subscriber,
canceller: @escaping Canceller = {}
)
Parameters
subscriber
Subscriber

A function to create a new subscription.

canceller
Canceller

A function to release all associated resources. It must be called at some point after the subscription has fired (e.g. in deinit).

public static func ==(lhs: Future<Value>, rhs: Future<Value>) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func sink(
receiveValue: @escaping (Value) -> Void,
failure: @escaping (Error) -> Void
) -> Cancellable

Subscribe for a future value or an error.

Returns
Cancellable

A cancellable instance. Deallocation of the result will tear down the single value subscription.

static func makeReadyValue(_ value: Value) -> Future<Value>

Make an immediately ready future value.

Returns
Future<>
static func makeReadyError(message: String) -> Future<Value>

Make an immediately ready future error.

Parameters
message

Error message.

Returns
Future<>
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Geometry

Объект геометрии

Extends: Hashable
public static func == (lhs: Geometry, rhs: Geometry) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func intersects(
geometry: Geometry
) -> Bool

The intersects function allows you to define if the given geometry intersects with another geometry object.

Parameters
geometry

The geometry object to check for intersection. When calculating an intersection with IPointGeometry, elevation is ignored.

Returns
Properties
var kind
var bounds

Rectangle of minimum size containing geometry.

var minPoint

Minimal point of the bounding rectangle.

var maxPoint

Maximum point of the bounding rectangle.

GeometryMapObject

Geometric object of the map.

Extends: MapObject
Properties
var geometryChannel
StatefulChannel<Geometry>

Object geometry.

var geometry

Object geometry.

var objectAttributes

Getting map object properties to read and change.

var isVisibleChannel
StatefulChannel<Bool>

The current visibility flag of the object.

var isVisible

The current visibility flag of the object.

var isDraggableChannel
StatefulChannel<Bool>

Current object relocatability flag.

var isDraggable

Current object relocatability flag.

var bounds

Rectangle of minimum size containing geometry.

GeometryMapObjectBuilder

Class for setting properties and subsequently creating geometric objects.

Extends: Hashable
public static func == (lhs: GeometryMapObjectBuilder, rhs: GeometryMapObjectBuilder) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init()
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func setObjectAttribute(
name: String,
value: AttributeValue
) -> GeometryMapObjectBuilder

Set a map object attribute.

Parameters
name

Name of the map object property.

value

Vallue of the map object property.

Returns
public func setObjectAttributes(
values: [String: AttributeValue]
) -> GeometryMapObjectBuilder

Setting map object attributes.

Parameters
values
String[ : ]

Set of “name”:“value” pairs for added properties of a map object.

Returns
public func setGeometry(
geometry: Geometry
) -> GeometryMapObjectBuilder

Set the geometry of a map object.

Parameters
public func setVisible(
visible: Bool
) -> GeometryMapObjectBuilder

Set the visibility of a map object.

Parameters
public func setDraggable(
draggable: Bool
) -> GeometryMapObjectBuilder

Set the ability to drag a map object.

Parameters
public func setUserData(
userData: Any
) -> GeometryMapObjectBuilder

Set user data.

public func createObject() -> GeometryMapObject

Constructing a map object.

GeometryMapObjectSource

Spurce of geometric map objects.

Extends: Source
Methods
public func clusteringObjects(
position: CameraPosition
) -> [MapObject]

Get the list of objects participating in clustering at the passed camera position. The list will contain both clusters and geometric objects.

Parameters
public func addObject(
item: GeometryMapObject
)

Adding an object to the source.

Parameters
public func addObjects(
objects: [GeometryMapObject]
)

Adding multiple objects to the source.

Parameters
public func removeObject(
item: GeometryMapObject
)

Removing an object from the source.

Parameters
public func removeObjects(
objects: [GeometryMapObject]
)

Removing multiple objects from the source.

Parameters
public func removeAndAddObjects(
objectsToRemove: [GeometryMapObject],
objectsToAdd: [GeometryMapObject]
)

Removing and adding objects to the source.

Parameters
objectsToRemove
objectsToAdd
public func clear()

Removing all objects from the source.

Properties
var objects

Get all objects added to the source.

var sourceAttributes

Get default property values for all objects added to the source (see IAttributes).

GeometryMapObjectSourceBuilder

Extends: Hashable
public static func == (lhs: GeometryMapObjectSourceBuilder, rhs: GeometryMapObjectSourceBuilder) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
context: Context
)
Parameters
context
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func setSourceAttribute(
name: String,
value: AttributeValue
) -> GeometryMapObjectSourceBuilder

Set a map object property common to the entire source (see ISource).

Parameters
name

Property name.

value

Property value.

Returns
public func setSourceAttributes(
values: [String: AttributeValue]
) -> GeometryMapObjectSourceBuilder

Set map object properties common to the entire source.

Parameters
values
String[ : ]

Set of “name”:“value” property pairs.

Returns
public func addObject(
item: GeometryMapObject
) -> GeometryMapObjectSourceBuilder

Adding a geometric map object to the source.

Parameters
public func addObjects(
objects: [GeometryMapObject]
) -> GeometryMapObjectSourceBuilder

Adding multiple geometric map objects to the source.

Parameters
public func createSource() -> GeometryMapObjectSource

Creating a source of geometric objects.

GeoPointRouteAttribute

Container that describes a point attribute of a route. Each item is stored as a point on the route, in which the item is located, and the value of the item itself.

Extends: Hashable
public static func == (lhs: GeoPointRouteAttribute, rhs: GeoPointRouteAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [GeoPointRouteEntry]

Elements that fall within the segment [begin, end).

Parameters
public func findNearBackward(
point: RoutePoint
) -> GeoPointRouteEntry?

Find the nearest element with position < = point.

Parameters
public func findNearForward(
point: RoutePoint
) -> GeoPointRouteEntry?

Find the nearest element with position >= point.

Parameters
public func calculateGeoPoint(
routePoint: RoutePoint
) -> SegmentGeoPoint?

Calculate GeoPoint based on the known RoutePoint.

Parameters
routePoint
Returns
SegmentGeoPoint?

Calculated geographic coordinates and direction of the segment pointed to by the route_point parameter. If the route is empty or route_point is out of range, nil is returned.

Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first

First element.

var last

Last element.

var entries
var length

Route length.

HttpCacheManager

HTTP cache management interface.

Extends: Hashable
public static func == (lhs: HttpCacheManager, rhs: HttpCacheManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func clear()

Clearing contents of HTTP cache.

Properties
var currentSize

The current size of the HTTP cache.

var maxSize

Maximum size of the HTTP cache.

Image

Image.

Extends: Hashable
public static func == (lhs: Image, rhs: Image) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

IncompleteTextHandler

Auto-complete for user-entered text is suggested.

Extends: Hashable
public static func == (lhs: IncompleteTextHandler, rhs: IncompleteTextHandler) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var queryText

Need to substitute this text in the search string and let the user continue typing the query.

IndoorBuilding

Building with floor plans.

Extends: Hashable
public static func == (lhs: IndoorBuilding, rhs: IndoorBuilding) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var id

The identifier of a building with floor plans.

var defaultLevelIndex

Default floor index.

var levels

Information about all floors.

var activeLevelIndexChannel
StatefulChannel<UInt64>

Active floor index.

var activeLevelIndex

Active floor index.

IndoorControl

Control of the floors in the building.

Extends: UIControl
Methods
public override func layoutSubviews()
Properties
var focusedBuildingChangeCallback
(() -> ())?

Callback closure when changing the current building.

var intrinsicContentSize

IndoorControlModel

Model of the floors control.

Extends: Hashable
public static func == (lhs: IndoorControlModel, rhs: IndoorControlModel) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
map: Map
)
Parameters
map
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func isLevelMarked(
index: UInt64
) -> Bool

Whether or not to display a label at the floor with the specified index.

Parameters
index
Returns
Properties
var activeLevelIndexChannel
StatefulChannel<UInt64?>

Active floor index.

var activeLevelIndex

Active floor index.

var markedLevels
Set<LevelId>

Floors on which labels are displayed.

var levelNamesChannel
StatefulChannel<[String]>

Floor names. Blank if the map does not show a building with floor plans, or if the building has only one floor.

var levelNames

Floor names. Blank if the map does not show a building with floor plans, or if the building has only one floor.

IndoorDetector

Extends: Hashable
public static func == (lhs: IndoorDetector, rhs: IndoorDetector) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var indoorChannel
StatefulChannel<Bool>

Channel that alerts you when the user is indoors.

var indoor

Channel that alerts you when the user is indoors.

IndoorManager

Class for getting the current building with floor plans.

Extends: Hashable
public static func == (lhs: IndoorManager, rhs: IndoorManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var focusedBuildingChannel
StatefulChannel<IndoorBuilding?>

Getting the current building with floor plans.

var focusedBuilding

Getting the current building with floor plans.

IndoorRouteLevelsGetter

Allows you to get a set of floors through which the routes displayed on the map pass.

Extends: Hashable
public static func == (lhs: IndoorRouteLevelsGetter, rhs: IndoorRouteLevelsGetter) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
map: Map
)
Parameters
map
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var levelIdsChannel
StatefulChannel<Set<LevelId>>
var levelIds
Set<LevelId>

InputEvent

User input event.

Extends: Event
Properties
var timestamp

Receiving the registration time of the input event.

InstructionRouteAttribute

Container that describes a point attribute of a route. Each item is stored as a point on the route, in which the item is located, and the value of the item itself.

Extends: Hashable
public static func == (lhs: InstructionRouteAttribute, rhs: InstructionRouteAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [InstructionRouteEntry]

Elements that fall within the segment [begin, end).

Parameters
public func findNearBackward(
point: RoutePoint
) -> InstructionRouteEntry?

Find the nearest element with position < = point.

Parameters
public func findNearForward(
point: RoutePoint
) -> InstructionRouteEntry?

Find the nearest element with position >= point.

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

IntRouteAttribute

Container that describes a point attribute of a route. Each item is stored as a point on the route, in which the item is located, and the value of the item itself.

Extends: Hashable
public static func == (lhs: IntRouteAttribute, rhs: IntRouteAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [IntRouteEntry]

Elements that fall within the segment [begin, end).

Parameters
public func findNearBackward(
point: RoutePoint
) -> IntRouteEntry?

Find the nearest element with position < = point.

Parameters
public func findNearForward(
point: RoutePoint
) -> IntRouteEntry?

Find the nearest element with position >= point.

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first

First element.

var last

Last element.

var entries

All elements.

ItemMarkerInfo

Object identifier and coordinates.

Extends: Hashable
public static func == (lhs: ItemMarkerInfo, rhs: ItemMarkerInfo) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var objectId
var geoPoint
var floorInfo

LaneSignRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: LaneSignRouteLongAttribute, rhs: LaneSignRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> LaneSignRouteLongEntry?

The element in which the given point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [LaneSignRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

LocaleManager

Manager of locale settings of an application.

Extends: Hashable
public static func == (lhs: LocaleManager, rhs: LocaleManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func overrideLocales(
locales: [String]
)
Parameters
locales
func overrideLocales(_ locales: [Locale])
Parameters
locales

Map

Map.

Extends: Hashable
public static func == (lhs: Map, rhs: Map) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func setFontIconSizeMultiplier(
multiplier: Float
) throws

Set the size multiplier for icons and fonts obtained from the application.

Parameters
multiplier
Float
public func resetFontIconSizeMultiplier()

Reset the size multiplier for icons.

public func addSource(
source: Source
)

Adding a data source to the map.

Parameters
source
public func removeSource(
source: Source
)

Removing a data source from the map.

Parameters
source
public func getRenderedObjects(
centerPoint: ScreenPoint,
radius: ScreenDistance = ScreenDistance(value: 5)
) -> Future<[RenderedObjectInfo]>

Get the displayed map objects projected on a circle on the screen.

Parameters
centerPoint

Circle center.

radius

Circle radius.

Returns
RenderedObjectInfo<[]>
public func setNavigation(_ isOn: Bool)

Set the navigation flag. Influences how the map uses styles for the navigator mode.

Parameters
isOn
Properties
var id

Identifier of the map instance, unique within the process.

var camera

Receiving a camera.

var indoorManager

Receiving floor plan manager.

var dataLoadingStateChannel
StatefulChannel<MapDataLoadingState>

Notification of the status of the data loaded into the map.

var dataLoadingState

Notification of the status of the data loaded into the map.

var styleChannel
StatefulChannel<Style>

Retrieving the current map styles.

var style

Retrieving the current map styles.

var fontIconSizeMultiplierChannel
StatefulChannel<Float>

Icon and font size multiplier obtained from the application.

var fontIconSizeMultiplier
Float

Icon and font size multiplier obtained from the application.

var sources

Getting map data sources.

var mapVisibilityStateChannel
StatefulChannel<MapVisibilityState>
var mapVisibilityState
var attributes

Obtaining attributes.

var interactiveChannel
StatefulChannel<Bool>

Interactivity of a map. Interactivity means that the user can interact with the map. If you disable interactivity, the map will stop responding to input events coming from the user. Controls for working with the map (approaching and transition to the current position) will also stop working. It is still possible to work with the map via set_position/move. When switching to non-interactive state, incomplete gestures will be reset. By default, the map is interactive (interactive == true).

var interactive

Interactivity of a map. Interactivity means that the user can interact with the map. If you disable interactivity, the map will stop responding to input events coming from the user. Controls for working with the map (approaching and transition to the current position) will also stop working. It is still possible to work with the map via set_position/move. When switching to non-interactive state, incomplete gestures will be reset. By default, the map is interactive (interactive == true).

MapManager

Interface that allows you to add maps to and remove them from the navigator.

Extends: Hashable
public static func == (lhs: MapManager, rhs: MapManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func addMap(
map: Map
)
Parameters
map
public func removeMap(
map: Map
)
Parameters
map

MapObject

Object on the map.

Extends: Hashable
public static func == (lhs: MapObject, rhs: MapObject) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var userData
Any

Random custom data attached to the object.

MapObjectManager

Extends: Hashable
public static func == (lhs: MapObjectManager, rhs: MapObjectManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
map: Map,
layerId: String? = nil
)

Create IMapObjectManager.

Parameters
map
layerId

ID of a layer with "Dynamic object" style type. Created objects will be stored in this layer so that you can define their order relative to other layers. If not set, objects are stored above other layers.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public static func withClustering(
map: Map,
logicalPixel: LogicalPixel,
maxZoom: Zoom,
clusterRenderer: SimpleClusterRenderer,
minZoom: Zoom = Zoom(value: 0),
layerId: String? = nil
) -> MapObjectManager

Create IMapObjectManager with data clustering. Only IMarker objects are clustered.

Parameters
map
logicalPixel

Minimum possible distance on the screen between marker anchor points on levels where clustering works.

maxZoom

The level from which all markers are visible.

clusterRenderer

Interface for specifying cluster display parameters.

minZoom

The level from which clusters are formed.

layerId

ID of a layer with "Dynamic object" style type. Created objects will be stored in this layer so that you can define their order relative to other layers. If not set, objects are stored above other layers.

Returns
public static func withGeneralization(
map: Map,
logicalPixel: LogicalPixel,
maxZoom: Zoom,
minZoom: Zoom = Zoom(value: 0),
layerId: String? = nil
) -> MapObjectManager

Create IMapObjectManager with data generalization. Only IMarker objects are generalized.

Parameters
map
logicalPixel

The minimum possible distance on the screen between marker anchor points on the levels where generalization works.

maxZoom

The level from which all markers are visible.

minZoom

The level from which the generalization works.

layerId

ID of a layer with "Dynamic object" style type. Created objects will be stored in this layer so that you can define their order relative to other layers. If not set, objects are stored above other layers.

Returns
public func addObject(
item: SimpleMapObject
)

Add an object.

Parameters
public func removeObject(
item: SimpleMapObject
)

Remove an object.

Parameters
public func addObjects(
objects: [SimpleMapObject]
)

Add objects.

Parameters
public func removeObjects(
objects: [SimpleMapObject]
)

Remove objects.

Parameters
public func removeAndAddObjects(
objectsToRemove: [SimpleMapObject],
objectsToAdd: [SimpleMapObject]
)

Remove and add objects.

Parameters
objectsToRemove
objectsToAdd
public func removeAll()
public func clusteringObjects(
position: CameraPosition
) -> [MapObject]

Get the list of objects participating in clustering at the transmitted camera position. The list will contain both clusters and markers.

Parameters
Properties
var isVisible

Override the visibility of all objects added to the manager instance. The value false here takes precedence over the visibility of an individual object.

MapObjectTappedCallback

A class for storing a callback function that is called when you click on the map.

public init(callback: @escaping (_ objectInfo: RenderedObjectInfo) -> Void)
public static func == (lhs: MapObjectTappedCallback, rhs: MapObjectTappedCallback) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func call(objectInfo: RenderedObjectInfo)
Parameters

MapRotationBeginEvent

Event of the beginning of the map rotation around the point.

Extends: Event
public convenience init(
inDirection: MapRotationDirection
)
Parameters
Properties

MapRotationEndEvent

Event of the end of the map rotation around the point.

Extends: Event
public convenience init()

MapScalingBeginEvent

Event of the beginning of scaling.

Extends: Event
public convenience init(
inDirection: MapScalingDirection
)
Parameters
Properties
var direction

MapScalingEndEvent

Event of the end of scaling.

Extends: Event
public convenience init()

MapShiftBeginEvent

Event of the map shifting start.

Extends: Event
public convenience init(
inDirection: MapShiftDirection
)
Parameters
Properties
var direction

MapShiftEndEvent

Event of the end of a map shift.

Extends: Event
public convenience init()

Marker

Point mark on the map that is of interest to the user.

public convenience init(
options: MarkerOptions
)
Parameters
Properties
var position

Getting marker location.

var icon

Obtaining marker icon.

var anchor

Getting the anchor point of the marker icon.

var iconOpacity

Getting the transparency of the marker icon.

var text

Getting the marker caption.

var textStyle

Getting the marker caption style.

var isDraggable

Getting the marker relocatability flag.

var iconWidth

Getting the target marker width used for scaling.

var iconMapDirection

Angle of rotation of the marker on the map relative to the north direction, clockwise.

var animatedAppearance

Whether to animate the appearance.

MetalOptions

Options for creating a map on Metal.

Extends: Hashable
public static func == (lhs: MetalOptions, rhs: MetalOptions) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

MillisecondsRouteAttribute

Container that describes a point attribute of a route. Each item is stored as a point on the route, in which the item is located, and the value of the item itself.

Extends: Hashable
public static func == (lhs: MillisecondsRouteAttribute, rhs: MillisecondsRouteAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [MillisecondsRouteEntry]

Elements that fall within the segment [begin, end).

Parameters
public func findNearBackward(
point: RoutePoint
) -> MillisecondsRouteEntry?

Find the nearest element with position < = point.

Parameters
public func findNearForward(
point: RoutePoint
) -> MillisecondsRouteEntry?

Find the nearest element with position >= point.

Parameters
public func calculateDuration(
routePoint: RoutePoint
) -> TimeInterval

Calculates the expected travel time to the end of the route.

Parameters
routePoint

Current position on the route..

Returns
TimeInterval
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

Model

Navigator model designed to be displayed in the UI.

Extends: Hashable
public static func == (lhs: Model, rhs: Model) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func betterRouteResponse(
response: BetterRouteResponse
)

User response on the application of the suggested better route.

Parameters
Properties
var stateChannel
StatefulChannel<State>

Navigator state.

var state

Navigator state.

var locationChannel
StatefulChannel<Location?>

The current geoposition that the navigator is working with.

var location

The current geoposition that the navigator is working with.

var locationAvailableChannel
StatefulChannel<Bool>

Flag that indicates whether the current geoposition is used for navigation. After receiving the geoposition, the navigator decides if it is suitable to be used for navigation (for example, if the geoposition has too much error, the navigator may decide that it is not suitable for navigation). If the geoposition is suitable for navigation, the navigator sets this channel to true, if not, it sets it to false.

var locationAvailable

Flag that indicates whether the current geoposition is used for navigation. After receiving the geoposition, the navigator decides if it is suitable to be used for navigation (for example, if the geoposition has too much error, the navigator may decide that it is not suitable for navigation). If the geoposition is suitable for navigation, the navigator sets this channel to true, if not, it sets it to false.

var routeChannel
StatefulChannel<RouteInfo>

Route with maneuvers.

var route

Route with maneuvers.

var dynamicRouteInfoChannel
StatefulChannel<DynamicRouteInfo>

Traffic events and traffic data on the route or on the predicted part of the route for FreeRoam mode.

var dynamicRouteInfo

Traffic events and traffic data on the route or on the predicted part of the route for FreeRoam mode.

var routePositionChannel
StatefulChannel<RoutePoint?>

Current user position on the route.

var routePosition

Current user position on the route.

var exceedingMaxSpeedLimitChannel
StatefulChannel<Bool>

Flag of exceeding the maximum allowed speed.

var exceedingMaxSpeedLimit

Flag of exceeding the maximum allowed speed.

var betterRouteChannel
StatefulChannel<BetterRouteInfo?>

Signal about finding an alternative route with a shorter expected travel time. If the value in the channel is nil, it means that an alternative route is found or is no longer relevant.

var betterRoute

Signal about finding an alternative route with a shorter expected travel time. If the value in the channel is nil, it means that an alternative route is found or is no longer relevant.

var distance
Measurement<UnitLength>?

Distance from the current position to the end of the route.

var duration

Travel time from the current position to the end of the route.

var isFreeRoam

MyLocationController

Class that controls the display of the current position marker.

Extends: Hashable
public static func == (lhs: MyLocationController, rhs: MyLocationController) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

MyLocationControlModel

Model of the control of the flyover to the user's location. The control consists of a button that, when pressed, moves the camera to the user's location. If no location is defined, nothing happens. The object methods must be called on the same thread.

Extends: Hashable
public static func == (lhs: MyLocationControlModel, rhs: MyLocationControlModel) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
map: Map,
transitionType: TransitionType = TransitionType.smooth
)
Parameters
map
transitionType
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func onClicked()
Properties
var isEnabledChannel
StatefulChannel<Bool>
var isEnabled
var followStateChannel
StatefulChannel<CameraFollowState>
var followState

MyLocationMapObject

Geoposition marker.

Extends: MapObject

MyLocationMapObjectSource

Source containing a geoposition marker.

Extends: Source
public convenience init(
context: Context,
directionBehaviour: MyLocationDirectionBehaviour
)

Create a geoposition marker source that uses map data with smooth changes.

Parameters
context
directionBehaviour
public convenience init(
context: Context,
directionBehaviour: MyLocationDirectionBehaviour,
controller: MyLocationController
)

Create a geopositioning marker source.

Parameters
Methods
public func setDirectionBehaviour(
directionBehaviour: MyLocationDirectionBehaviour
)

Select the behaviour of the marker direction.

Parameters
Properties
var item

Get geo-positioning marker.

Interface for managing map tracking of the geopositioning marker in the navigator.

Extends: Hashable
public static func == (lhs: NavigationFollowController, rhs: NavigationFollowController) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func setFollow(
follow: Bool
)

Immediately enables or disables the map tracking mode for the geopositioning marker.

Parameters
follow
Properties
var followReturnDelay

The timeout after which the map will automatically return to Geoposition Marker Tracking mode after the user has moved it. 0 - automatic return to Geoposition Marker tracking mode is disabled.

Extends: UIControl

Root public interface of the navigator.

Extends: Hashable
public static func == (lhs: NavigationManager, rhs: NavigationManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
platformContext: Context
) throws

Navigator API entry point, used in the SDK by default.

Parameters
platformContext
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func start() throws

Starts guidance in a mode with no route (free roam). In this mode, there is no route, and the navigator reports objects on the road near the user.

public func start(
routeBuildOptions: RouteBuildOptions,
trafficRoute: TrafficRoute? = nil
) throws

Starts the route guidance.

Parameters
routeBuildOptions

Parameters with which the navigator will rebuild the route.

trafficRoute

Route on which tracking is started. If not set, the navigator builds a route from the current position.

public func startSimulation(
routeBuildOptions: RouteBuildOptions,
trafficRoute: TrafficRoute
) throws

Starts the simulation of route guidance.

Parameters
routeBuildOptions

Parameters with which the navigator will rebuild the route.

trafficRoute

Route guidance that triggers the simulation.

public func stop()

Stops the navigator operation.

Properties
var uiModel

Navigator model intended to be displayed in the UI.

var indoorDetector

Navigates indoors.

var mapFollowController

Controls the automatic return of the map to track the geo-position marker.

var mapManager

Navigator map manager.

var zoomFollowSettings

Settings of map scaling during the guidance mode.

var routeMapSettings

Route display settings on the map.

var routeSourceSettings

Settings for the source used to display the route on the map.

var simulationSettings

Route guidance simulation settings.

var voiceSelector

Managing voice packets in the current navigator session.

var exceedSpeedLimitSettings

Settings for speeding detection.

var dynamicRouteInfoSettings

Settings for receiving and updating dynamic route data.

var soundNotificationSettings

Settings for sound alerts in the current navigator session.

var freeRoamSettings

Settings for driving without a route in free roam mode.

var alternativeRoutesProviderSettings

Settings of finding alternate routes in the guidance mode.

Voice to be used in the navigator.

Extends: Hashable
public static func == (lhs: NavigationVoice, rhs: NavigationVoice) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public init(map: Map, followMode: NavigatorFollowMode, driveType: NavigatorFollowDriverType = .vehicle)
Parameters
Methods
public func toggleFollowMode()

Switches the tracking mode to the next one available.

public func setFollowMode(_ mode: NavigatorFollowMode)
Parameters
public func addFollowModeObserver(_ observer: @escaping FollowModeObserver) -> INavigatorFollowManagerObservation
Parameters
observer
FollowModeObserver
Returns
Properties

NewValuesNotifier

Object interface that reports that there is a change in one of the parameters.

Extends: Hashable
public static func == (lhs: NewValuesNotifier, rhs: NewValuesNotifier) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func sendNotification()

Must be called to report a parameter update.

ObstacleInfoRouteAttribute

A container that describes a point attribute of a route. Each item is stored as a point on the route in which the item is located and the value of the item itself.

Extends: Hashable
public static func == (lhs: ObstacleInfoRouteAttribute, rhs: ObstacleInfoRouteAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [ObstacleInfoRouteEntry]

Elements falling within the segment [begin, end).

Parameters
public func findNearBackward(
point: RoutePoint
) -> ObstacleInfoRouteEntry?

Find the nearest element with position < = point.

Parameters
public func findNearForward(
point: RoutePoint
) -> ObstacleInfoRouteEntry?

Find the nearest element with position >= point.

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

ObstacleInfoRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: ObstacleInfoRouteLongAttribute, rhs: ObstacleInfoRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> ObstacleInfoRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [ObstacleInfoRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

Package

Package. For the convenience of working (installing, updating, deleting), data in 2GIS SDK is grouped into sets according to its functional and logical purpose. A set of grouped data is called a package. Within a single package, the functional purpose of the data is unique. However, data sets of packages with the same functionality may overlap, i.e. data from several packages may have common files. During operations with a group of such packages, the shared data will be processed (downloaded, unpacked, deleted) only once.

Extends: Hashable
public static func == (lhs: Package, rhs: Package) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func install()

Start the package installation or update.

public func uninstall()

Start the package removal.

Properties
var id

Stable technical package ID.

var infoChannel
StatefulChannel<PackageInfo>

Package information.

var info

Package information.

var progressChannel
StatefulChannel<UInt8>

Progress of the package installation or update operation in percent. If the package is not installed locally, the channel contains a value of 0. If the package is installed locally, regardless of whether the data is up to date and compatible with the current SDK version, the channel contains the value 100. If the package is in the installation or upgrade phase, the channel contains an updatable value in the range [0, 100].

var progress

Progress of the package installation or update operation in percent. If the package is not installed locally, the channel contains a value of 0. If the package is installed locally, regardless of whether the data is up to date and compatible with the current SDK version, the channel contains the value 100. If the package is in the installation or upgrade phase, the channel contains an updatable value in the range [0, 100].

PackageManager

Interface for centralized working with packages:

Extends: Hashable
public static func == (lhs: PackageManager, rhs: PackageManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func checkForUpdates()

Forced check for updates.

Properties
var autoupdateEnabled

Autoupdate status (enabled/disabled).

var packagesChannel
StatefulChannel<[Package]>

Channel with a list of all known packages. Refreshed if information about at least one of the packages is changed, or if the list composition is changed.

var packages

Channel with a list of all known packages. Refreshed if information about at least one of the packages is changed, or if the list composition is changed.

PackedMapState

Serialized map state.

Extends: Hashable
public static func == (lhs: PackedMapState, rhs: PackedMapState) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public static func of(
position: CameraPosition,
showTraffic: Bool
) -> PackedMapState

Getting map status.

Parameters
position

Camera position.

showTraffic

Traffic display state on the map.

Returns
PackedMapState

Serialized map state.

public static func fromBytes(
data: Data
) throws -> PackedMapState

Getting map status.

Parameters
data
Data

Map state as a sequence of bytes.

Returns
PackedMapState

Serialized map state.

public static func fromMap(
map: Map
) -> PackedMapState

Getting map status.

Parameters
map

The map whose state is to be retrieved.

Returns
PackedMapState

Serialized map state.

public func toBytes() -> Data

Representing map state as a sequence of bytes.

Returns
Data
Properties
var showTraffic

Getting the state of the traffic display on the map.

var cameraPosition

Obtaining the camera position.

PackedNavigationState

Auxiliary object for serialization and deserialization of the navigation state.

Extends: Hashable
public static func == (lhs: PackedNavigationState, rhs: PackedNavigationState) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public static func of(
trafficRoute: TrafficRoute,
routeSearchOptions: RouteSearchOptions? = nil,
finishPoint: RouteSearchPoint? = nil,
routePosition: RoutePoint? = nil,
state: State = State.disabled
) -> PackedNavigationState

Create an object from the listed elements.

Parameters
trafficRoute
routeSearchOptions
finishPoint
routePosition
state
Returns
public static func fromBytes(
data: Data
) throws -> PackedNavigationState

Deserialization of the navigation state. Invalid elements in the saved state are skipped or replaced by default values.

Parameters
data
Data
Returns
public static func fromModel(
model: Model
) -> PackedNavigationState

Creating an object from the navigator model.

Parameters
public func toBytes() -> Data

Serialization of the navigation state.

Returns
Data
Properties
var trafficRoute
var finishPoint

The end point of the route.

var routeSearchOptions

Route building options.

var routePosition

Position on route.

var state

Current navigation state.

PackedSearchQuery

Auxiliary object for serializing and deserializing a search query.

Extends: Hashable
public static func == (lhs: PackedSearchQuery, rhs: PackedSearchQuery) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public static func fromBytes(
data: Data
) throws -> PackedSearchQuery

Deserialization of a search query.

Parameters
data
Data
Returns
public static func fromSearchQuery(
searchQuery: SearchQuery
) -> PackedSearchQuery
Parameters
public func toBytes() -> Data
Returns
Data
public func toSearchQuery() -> SearchQuery
Properties
var queryText

Query text. For some queries (e.g., revealing a rubric from suggest), there is no text because the query stores identifiers, and the behavior is different than searching the text of a suggest element.

var spatialRestriction

Geometry limiting the search area.

var areaOfInterest

Rectangular area of interest.

var allowedResultTypes

Restriction on the object types returned by the search.

var pageSize
Int32

The size of the output page.

var directoryFilter

Information about active filters.

var sortingType

Type of result sorting.

Page

Page with search results.

Extends: Hashable
public static func == (lhs: Page, rhs: Page) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func fetchPrevPage() -> Future<Page?>

Get the previous page of results.

public func fetchNextPage() -> Future<Page?>

Get the next page of results.

Properties
var items

The non-empty set of directory objects of this page.

PerformSearchHandler

Looking for a specific set of objects is suggested.

Extends: Hashable
public static func == (lhs: PerformSearchHandler, rhs: PerformSearchHandler) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var searchQuery

A query to run through a search engine.

PlatformLocationFollowController

Geopositioning and compass tracking controller.

public convenience init(
map: Map
)

Creating a geopositioning and compass tracking controller.

Parameters
map
Methods
public func setAnimationDuration(
duration: TimeInterval
)

Set the animation duration.

Parameters
duration
TimeInterval

PointGeometry

Point.

Extends: Geometry
public convenience init(
point: GeoPoint
)
Parameters
public convenience init(
point: GeoPointWithElevation
)
Parameters
Properties

Polygon

Polygon on the map.

public convenience init(
options: PolygonOptions
)
Parameters
Properties
var contours
var color
var strokeWidth
var strokeColor

PolygonGeometry

Полигон.

Extends: Geometry
public convenience init(
contours: [[GeoPoint]]
)
Parameters
contours
Properties
var contours

Polyline

Polyline on the map.

public convenience init(
options: PolylineOptions
)
Parameters
Properties
var points
var width
var color
var erasedPart
var dashedPolylineOptions

Getting dashed polyline parameters.

var gradientPolylineOptions

Getting gradient polyline parameters.

PolylineGeometry

Polyline.

Extends: Geometry
public convenience init(
points: [GeoPoint]
)
Parameters
Properties
var points

Projection

Projection.

Extends: Hashable
public static func == (lhs: Projection, rhs: Projection) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func screenToMap(
point: ScreenPoint
) -> GeoPoint?

Calculate the map point at a specified point on the screen.

Parameters
public func mapToScreen(
point: GeoPoint
) -> ScreenPoint?

Calculate a screen point that corresponds to the specified map point.

Parameters
public func mapToScreen(
point: GeoPointWithElevation
) -> ScreenPoint?

Calculate a screen point corresponding to a specified point on the map with elevation.

Parameters
public func screenToMapClipped(
point: ScreenPoint
) -> GeoPoint

Calculate the map point closest to the projection of the specified screen point.

Parameters

PublicTransportTransferRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: PublicTransportTransferRouteLongAttribute, rhs: PublicTransportTransferRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> PublicTransportTransferRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [PublicTransportTransferRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

Remover

Object for removing user-created content.

Extends: Hashable
public static func == (lhs: Remover, rhs: Remover) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func remove() -> Future<ActionResult>

Removing content.

Returns
Future<>

RoadEvent

Дорожное событие.

Extends: Hashable
public static func == (lhs: RoadEvent, rhs: RoadEvent) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func photos() -> Future<[RoadEventPhoto]>

Event photo.

Properties
var type

Event type.

var name

Localized event name.

var author

Information about the user who added the event.

var timestamp
Date?

Event creation timestamp.

var location

Event coordinates.

var description

User description of the road event.

var cameraInfo

Camera information.

var schedule

Schedule.

var lanes

Lanes affected by the event.

var availableActions

List of available actions with the event.

var remover

Obtaining an object to delete an event.

RoadEventAction

Event action.

Extends: Hashable
public static func == (lhs: RoadEventAction, rhs: RoadEventAction) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func `set`() -> Future<ActionResult>

Applying an action (for example, adding a “like“ mark, confirming an event).

Returns
Future<>
public func reset() -> Future<ActionResult>

Canceling an action (for example, removing the “like” mark, resetting the event confirmation).

Returns
Future<>
Properties
var type

Type of action.

var name

Localized name of the action.

var infoChannel
StatefulChannel<RoadEventActionInfo>

Action information.

var info

Action information.

RoadEventManager

Object for creating transport events.

Extends: Hashable
public static func == (lhs: RoadEventManager, rhs: RoadEventManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
context: Context
)

Get an object to create road events.

Parameters
context
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func createAccident(
location: GeoPoint,
lanes: LaneOptionSet,
description: String
) -> Future<AddEventResult>

Creating a “Road accident” event.

Parameters
location

Event location.

lanes

Lanes of the road affected by the event.

description

Custom event description.

Returns
Future<>
public func createCamera(
location: GeoPoint,
description: String
) -> Future<AddEventResult>

Creating a “Camera” event.

Parameters
location

Event location.

description

Custom event description.

Returns
Future<>
public func createRoadRestriction(
location: GeoPoint,
description: String
) -> Future<AddEventResult>

Creating a “Road closure” event.

Parameters
location

Event location.

description

Custom event description.

Returns
Future<>
public func createComment(
location: GeoPoint,
description: String
) -> Future<AddEventResult>

Creating a “Comment” event.

Parameters
location

Event location.

description

Custom event description.

Returns
Future<>
public func createOther(
location: GeoPoint,
lanes: LaneOptionSet,
description: String
) -> Future<AddEventResult>

Creating an “Other” event.

Parameters
location

Event location.

lanes

Lanes of the road affected by the event.

description

Custom event description.

Returns
Future<>
public func createRoadWorks(
location: GeoPoint,
lanes: LaneOptionSet,
description: String
) -> Future<AddEventResult>

Creating a “Road works” event.

Parameters
location

Event location.

lanes

Lanes of the road affected by the event.

description

Custom event description.

Returns
Future<>

RoadEventMapObject

“Road event” map object.

Extends: MapObject
Properties
var event

Obtaining a road event.

RoadEventPhoto

Photo of a road event.

Extends: Hashable
public static func == (lhs: RoadEventPhoto, rhs: RoadEventPhoto) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func previewUrl(
desiredSize: ScreenSize
) -> String

URL of a photo preview.

Parameters
desiredSize
Returns
public func report() -> Future<ActionResult>

Send a complaint about a photo.

Returns
Future<>
Properties
var photoUrl

URL of the full-size photo.

var author

Information about the user who added the photo.

var timestamp
Date

Timestamp.

var remover

Obtaining an object to delete a photo.

RoadEventRouteAttribute

Container that describes a point attribute of a route. Each item is stored as a point on the route, in which the item is located, and the value of the item itself.

Extends: Hashable
public static func == (lhs: RoadEventRouteAttribute, rhs: RoadEventRouteAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [RoadEventRouteEntry]

Elements that fall within the segment [begin, end).

Parameters
public func findNearBackward(
point: RoutePoint
) -> RoadEventRouteEntry?

Find the nearest element with position < = point.

Parameters
public func findNearForward(
point: RoutePoint
) -> RoadEventRouteEntry?

Find the nearest element with position >= point.

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first

First element.

var last
var entries

RoadEventSource

Interface of the class that controls the display of road events (tUGC) on the map.

Extends: Source
public convenience init(
context: Context
)

Creating a source to display road events on the map.

Parameters
context
Properties
var visibleEvents

Retrieves the current event categories provided by this source.

RoadMacroGraph

Global road graph package, used to build a passage between two loaded offline territories.

Extends: Package

RoadRuleRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: RoadRuleRouteLongAttribute, rhs: RoadRuleRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> RoadRuleRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [RoadRuleRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

RoadSubtypeRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: RoadSubtypeRouteLongAttribute, rhs: RoadSubtypeRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> RoadSubtypeRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [RoadSubtypeRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

RoadSurfaceRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: RoadSurfaceRouteLongAttribute, rhs: RoadSurfaceRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> RoadSurfaceRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [RoadSurfaceRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

RoadTypeRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair containing a point and the value of the attribute element. The attribute action starts at the given point and ends at the next point from which the attribute action of the next element starts.

Extends: Hashable
public static func == (lhs: RoadTypeRouteLongAttribute, rhs: RoadTypeRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> RoadTypeRouteLongEntry?

The element in which the given point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [RoadTypeRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

RotateMapToNorthEvent

Even of turning a map northward.

Extends: Event
public convenience init()

Route

Class that describes a route. A route is a set of attributes, each of which is a container of type RouteAttribute or RouteLongAttribute that stores route attribute elements. Route attributes are classified into point attributes and extended attributes. Point attributes (e.g., geometry points or speed bumps) are specified as a pair of a RoutePoint and an attribute value. Extended attributes (such as roadway widths or speed limits) are specified as a pair of a RoutePoint that indicates the start of the attribute and an attribute value. A terminator is placed at the end of the route. For example, if the width of the roadway is specified as a set of pairs {{0m, 3m}, {10m, 7m}, {20m, 5m}, {30m, 0m}}, then for the first 10 meters of the route the roadway is 3 meters wide; at the interval [10m., 20m.) the width is 7 meters; from 20m to the end of the route - 5 meters.

Extends: Hashable
public static func == (lhs: Route, rhs: Route) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var geometry

Route geometry.

var instructions

The instructions that must be followed to move along the route.

var intermediatePoints

Intermediate points of a route. The route may not pass directly through an intermediate point, but next to it. The attribute value stores the coordinate where the intermediate point was set, the key stores the coordinate of the projection of the intermediate point on the route.

var altitudes

Elevations on the route.

var badRoads

Bad road (there are bumps and potholes on the road that prevent passage).

var obstacles

Obstacles on a route.

var roadNames

Names of roads/streets.

var settlements

An indication that a section of the route passes through a populated area.

var transportTypes

Mode of transport for which a section of the route is built.

var cameras
var carriagewaysWidth

Width of the roadway in meters. 0 - width unknown.

var exitSigns
var humps

Artificial bumps.

var lanes
var levels
var maxSpeedLimits

Maximum permissible speed limits.

var roadRules
var roadSubtypes

Additional description to the type of road on which the route runs.

var roadSurfaces
var roadTypes

Type of road the route takes.

var tolls

Sections of the route on toll roads.

var truckData

Indication of the presence or absence of data for freight navigation.

var truckPassZoneIds

Passing zones for trucks.

var truckRestrictedAreas

Indication of the validity of the no-traffic sign.

var vehicleRestrictedAreas

An indication of a sign prohibiting the passage of any motor vehicle (overlap).

var publicTransportTransfers

Description of how to travel by public transport between transfer points.

RouteEditor

Interface for the route editor. The route editor gets the start and end points of the route, builds routes, and notifies about their updates and realignments through channels.

Extends: Hashable
public static func == (lhs: RouteEditor, rhs: RouteEditor) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
context: Context
)

Function for creating a route editor.

Parameters
context
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func setRouteParams(
routeParams: RouteEditorRouteParams
)

Sets the parameters of the route editor. Starts the search for a new route according to the specified parameters.

Parameters
public func setActiveRouteIndex(
index: RouteIndex
)

Set the active route index.

Parameters
Properties
var routesInfoChannel
StatefulChannel<RouteEditorRoutesInfo>

Channel through which you can monitor updates of route information operated by the editor.

var routesInfo

Channel through which you can monitor updates of route information operated by the editor.

var activeRouteIndexChannel
StatefulChannel<RouteIndex?>

The channel through which you can monitor updates of the active route index. If there are no routes, nil is placed in this channel.

var activeRouteIndex

The channel through which you can monitor updates of the active route index. If there are no routes, nil is placed in this channel.

RouteEditorSource

Interface of the class managing the display of routes on the map.

Extends: Source
public convenience init(
context: Context,
routeEditor: RouteEditor,
activeDisplayFlags: RouteMapObjectDisplayFlagOptionSet? = nil,
inactiveDisplayFlags: RouteMapObjectDisplayFlagOptionSet? = nil,
activeCalloutLabelFlags: RouteMapObjectCalloutLabelFlagOptionSet? = nil,
inactiveCalloutLabelFlags: RouteMapObjectCalloutLabelFlagOptionSet? = nil,
calloutLabelDisplayMode: RouteMapObjectCalloutLabelDisplayMode = RouteMapObjectCalloutLabelDisplayMode.absoluteValues,
activePermanentDisplayFlags: RouteMapObjectPermanentDisplayFlagOptionSet? = nil,
inactivePermanentDisplayFlags: RouteMapObjectPermanentDisplayFlagOptionSet? = nil
)

Function to create IRouteEditorSource

Parameters
Methods
public func setRoutesVisible(
visible: Bool
)

Enable or disable the display of routes on the map.

Parameters
visible
public func setShowOnlyActiveRoute(
showOnlyActiveRoute: Bool
)

Display all routes (false) or only the currently active one (true) on the map.

Parameters
showOnlyActiveRoute
public func setPassedDistanceVisualization(
passedDistanceVisualization: RouteMapObjectPassedDistanceVisualization
)

Change the way to visualize the distance traveled along the route.

Parameters
Properties
var objects

Objects of the route on the map.

var routeSourceSettings

Settings for displaying maneuvers on the route.

var activeDisplayFlags

Flags for displaying the active route. See IRouteMapObject::display_flags.

var inactiveDisplayFlags

Flags for displaying inactive routes. See IRouteMapObject::display_flags.

var activeCalloutLabelFlags

Flags that enable the display of content in the callouts of the active route. See IRouteMapObject::callout_label_flags.

var inactiveCalloutLabelFlags

Flags that enable displaying content in the callouts of inactive route. See IRouteMapObject::callout_label_flags.

var calloutLabelDisplayMode

The mode of displaying values in the route callouts. See IRouteMapObject::callout_label_display_mode.

var activePermanentDisplayFlags

Flags that exclude hiding components of the active route from the map. See IRouteMapObject::permanent_display_flags.

var inactivePermanentDisplayFlags

Flags that exclude hiding components of the active route from the map. See IRouteMapObject::permanent_display_flags.

RouteExitSignRouteAttribute

Container that describes a point attribute of a route. Each item is stored as a point on the route, in which the item is located, and the value of the item itself.

Extends: Hashable
public static func == (lhs: RouteExitSignRouteAttribute, rhs: RouteExitSignRouteAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [RouteExitSignRouteEntry]

Elements that fall within the segment [begin, end).

Parameters
public func findNearBackward(
point: RoutePoint
) -> RouteExitSignRouteEntry?

Find the nearest element with position < = point.

Parameters
public func findNearForward(
point: RoutePoint
) -> RouteExitSignRouteEntry?

Find the nearest element with position >= point.

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

RouteInfoCalloutMapObject

Callout object with information about the length and/or duration of the route on the map.

Extends: MapObject
Properties
var route

The route, part of which this dough object represents.

var routeIndex

Route index.

var routePoint

The position on the route at which the dough is located.

RouteLevelInfoRouteLongAttribute

Container that stores an extended attribute of a route. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element starts.

Extends: Hashable
public static func == (lhs: RouteLevelInfoRouteLongAttribute, rhs: RouteLevelInfoRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> RouteLevelInfoRouteLongEntry?

The element in which the given point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [RouteLevelInfoRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

RouteMapObject

Route object on the map.

Extends: MapObject
public convenience init(
route: TrafficRoute,
isActive: Bool,
index: RouteIndex,
displayFlags: RouteMapObjectDisplayFlagOptionSet? = nil,
calloutLabelFlags: RouteMapObjectCalloutLabelFlagOptionSet? = nil,
calloutLabelDisplayMode: RouteMapObjectCalloutLabelDisplayMode = RouteMapObjectCalloutLabelDisplayMode.absoluteValues,
permanentDisplayFlags: RouteMapObjectPermanentDisplayFlagOptionSet? = nil
)
Parameters
Properties
var displayFlagsChannel
StatefulChannel<RouteMapObjectDisplayFlagOptionSet?>

A set of flags for displaying different parts of the route. If not specified, the display logic based on the activity status of the route is used.

var displayFlags

A set of flags for displaying different parts of the route. If not specified, the display logic based on the activity status of the route is used.

var permanentDisplayFlagsChannel
StatefulChannel<RouteMapObjectPermanentDisplayFlagOptionSet?>

A set of flags to prevent different parts of the route from being hidden from the map when you update the distance traveled along the route. If not set, all route elements that fall within the non-displayed part of the route are hidden from the map when you update the distance traveled along the route.

var permanentDisplayFlags

A set of flags to prevent different parts of the route from being hidden from the map when you update the distance traveled along the route. If not set, all route elements that fall within the non-displayed part of the route are hidden from the map when you update the distance traveled along the route.

var isActiveChannel
StatefulChannel<Bool>

Route activity status.

var isActive

Route activity status.

var route
var routeIndex

Route index in the route editor.

var passedDistanceChannel
StatefulChannel<RouteDistance>

Distance traveled along the route.

var passedDistance

Distance traveled along the route.

var passedDistanceVisualizationChannel
StatefulChannel<RouteMapObjectPassedDistanceVisualization>
var passedDistanceVisualization
var calloutPositionChannel
StatefulChannel<[CalloutMapPosition]>

Route callout position.

var calloutPosition

Route callout position.

var calloutLabelFlagsChannel
StatefulChannel<RouteMapObjectCalloutLabelFlagOptionSet?>

A set of flags to display the contents of the route's callouts. If not set, then for the active route both route time and its length are displayed, and for inactive routes only the travel time is displayed.

var calloutLabelFlags

A set of flags to display the contents of the route's callouts. If not set, then for the active route both route time and its length are displayed, and for inactive routes only the travel time is displayed.

var calloutLabelDisplayModeChannel
StatefulChannel<RouteMapObjectCalloutLabelDisplayMode>

Mode of displaying values in the route's callouts. By default, values are displayed as absolute magnitudes.

var calloutLabelDisplayMode

Mode of displaying values in the route's callouts. By default, values are displayed as absolute magnitudes.

var lanesCalloutPositionsChannel
StatefulChannel<[LanesCalloutMapPosition]>

Lane callouts positions. Only actual positions are returned for the current distance traveled along the route and only if the source, in which the object is placed, is working in navigation mode.

var lanesCalloutPositions

Lane callouts positions. Only actual positions are returned for the current distance traveled along the route and only if the source, in which the object is placed, is working in navigation mode.

RouteMapObjectSource

Source of the route objects on the map.

Extends: Source
public convenience init(
context: Context,
routeVisualizationType: RouteVisualizationType = RouteVisualizationType.normal
)

Function for creating IRouteMapObjectSource.

Parameters
context
routeVisualizationType
Methods
public func addObject(
item: RouteMapObject
)

Adding a route object to the source.

Parameters
public func removeObject(
item: RouteMapObject
)

Removing a route object from the source.

Parameters
public func clear()

Removing all route objects from the source.

public func replaceAllObjects(
objects: [RouteMapObject]
)

Replacing all the objects previously added to the source with the passed list of objects. Unlike deleting and adding objects one by one, replacement is done atomically - old routes are deleted and new routes appear on the map at the same time.

Parameters
Properties
var objects

Route objects.

var routeSourceSettings

Setting up the display of objects in the source.

RouteMapSettings

Settings for displaying the route on the map.

Extends: Hashable
public static func == (lhs: RouteMapSettings, rhs: RouteMapSettings) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var onRouteDisplayFlags

Route display flags on the map for route guidance mode. All flags are enabled by default, except the InactiveFloors flag.

var freeRoamDisplayFlags

Route display flags on the map for free roam mode. The flags Cameras, Humps, Accidents, RoadWorks, Comments, RoadRestrictions, OtherEvents are enabled by default.

var onRoutePermanentDisplayFlags

Flags that prevent various route components from hiding from the map when you update the distance traveled along the route for route guidance mode. By default, all route elements are hidden.

var freeRoamPermanentDisplayFlags

Flags that prevent various route components from hiding from the map when you update the distance traveled along the route for free roam mode. By default, all route elements are hidden.

RoutePointMapObject

Point object that is part of the route on the map ( for example, the start or end point of the route).

Extends: MapObject
Properties
var route

The route part of which this point object represents.

var routeIndex

Route index.

var kind

Type of route point object.

var routePoint

The position on the route that corresponds to this point object.

var pointChannel
StatefulChannel<GeoPoint>

The geographic coordinates in which this point object is located.

var point

The geographic coordinates in which this point object is located.

RouteSourceSettings

Settings of the route source.

Extends: Hashable
public static func == (lhs: RouteSourceSettings, rhs: RouteSourceSettings) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func getLargeScaleMergeDistanceMeters(
transportType: TransportType
) -> Float

Minimum allowable distance in meters between consecutive maneuver arrows for the large scale. If the distance is less than the specified, the arrows are combined.

Parameters
transportType

The type of transport for which the distance is requested.

Returns
Float
public func setLargeScaleMergeDistanceMeters(
distance: Float,
transportType: TransportType
)

Set the minimum allowable distance in meters between consecutive maneuver arrows for the large scale.

Parameters
distance
Float

Distance in meters.

transportType

The type of vehicle for which the distance is set.

public func getSmallScaleMergeDistanceMeters(
transportType: TransportType
) -> Float

Minimum allowable distance in meters between consecutive maneuver arrows for the small scale. If the distance is less than the specified, the arrows are combined.

Parameters
transportType

The type of transport for which the distance is requested.

Returns
Float
public func setSmallScaleMergeDistanceMeters(
distance: Float,
transportType: TransportType
)

Set the minimum allowable distance in meters between consecutive maneuver arrows for the small scale.

Parameters
distance
Float

Distance in meters.

transportType

The type of vehicle for which the distance is set.

public func getLargeScaleCrossroadsOffsetMeters(
transportType: TransportType
) -> Float

Offset in meters from the intersection point to the beginning and end of the maneuver arrow for the large scale.

Parameters
transportType

The type of vehicle for which the offset is requested.

Returns
Float
public func setLargeScaleCrossroadsOffsetMeters(
offset: Float,
transportType: TransportType
)

Set the offset in meters from the intersection point to the beginning and end of the maneuver arrow for the large scale. Allows you to set the size of the maneuver arrow.

Parameters
offset
Float

Offset in meters.

transportType

Type of transport for which the offset is set.

public func getSmallScaleCrossroadsOffsetMeters(
transportType: TransportType
) -> Float

Offset from the intersection point to the beginning and end of the maneuver arrow for the small scale.

Parameters
transportType

The type of vehicle for which the offset is requested.

Returns
Float
public func setSmallScaleCrossroadsOffsetMeters(
offset: Float,
transportType: TransportType
)

Set the offset from the intersection point to the beginning and end of the small scale maneuver arrow. Allows you to set the size of the maneuver arrow.

Parameters
offset
Float

Offset in meters.

transportType

Type of transport for which the offset is set.

Properties
var largeScaleRingroadOffsetMeters
Float

Offset from the point of exit from the ring to the beginning and end of the maneuver arrow for large scale. Allows you to set the size of the maneuver arrow.

var smallScaleRingroadOffsetMeters
Float

Offset from the ring exit point to the beginning and end of the maneuver arrow for small scale. Allows you to set the size of the maneuver arrow.

var calloutVisualizationMode

Route time and length callouts display mode.

ScaleMapEvent

The event of changing the map scale.

Extends: Event
public convenience init(
zoomDelta: Float,
scalingCenter: ScreenPoint? = nil
)

The zoom event builder.

Parameters
zoomDelta
Float

The value by which the current zoom value will change.

scalingCenter

Point on the screen relative to which the map scales. If not set, scaling is done relative to the map position point.

Properties
var zoomDelta
Float

The value by which the current scale value will change.

var scalingCenter

Point on the screen relative to which the map scales.

SearchManager

Search engine. The main entry point for the reference API.

Extends: Hashable
Implements: ISearchManager
public static func == (lhs: SearchManager, rhs: SearchManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public static func createOnlineManager(
context: Context
) throws -> SearchManager

Create a search engine working online.

Parameters
context
Returns
public static func createOfflineManager(
context: Context
) throws -> SearchManager

Create a search engine working with preloaded data.

Parameters
context
Returns
public static func createSmartManager(
context: Context
) throws -> SearchManager

Create a search engine working online or with preloaded data depending on the availability of internet connection.

Parameters
context
Returns
public func suggest(
query: SuggestQuery
) -> Future<SuggestResult>

Get hints that match this query.

Parameters
public func searchById(
id: String
) -> Future<DirectoryObject?>

Get a directory object by its string identifier.

Parameters
public func searchByDirectoryObjectId(
objectId: DgisObjectId
) -> Future<DirectoryObject?>

Get a directory object by its identifier.

Parameters
objectId

SearchQuery

Search query.

Extends: Hashable
public static func == (lhs: SearchQuery, rhs: SearchQuery) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

SearchQueryBuilder

Builder of search queries. The search is performed by the global index, as well as by local indexes of segments, where a segment is a certain piece of the global map partition. The procedure of selecting segments to search is done in the following ways (in descending order of priority):

Extends: Hashable
public static func == (lhs: SearchQueryBuilder, rhs: SearchQueryBuilder) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public static func fromQueryText(
queryText: String
) -> SearchQueryBuilder

Start building a text search query with the given text.

Parameters
queryText
Returns
public static func fromQuery(
query: SearchQuery
) -> SearchQueryBuilder

Start building a query based on #query to change a part of the parameters.

Parameters
public func setSpatialRestriction(
spatialRestriction: [GeoPoint]?
) -> SearchQueryBuilder

Set the search area limit in the form of a polygon. The first and the last points of the polygon do not have to coincide.

Parameters
spatialRestriction
Returns
public func setAreaOfInterest(
rect: GeoRect?
) -> SearchQueryBuilder

Set the rectangular region of interest in geographic coordinates. A typical value is visible_rect from ICamera - the enclosing rectangle of the view area.

Parameters
public func setAllowedResultTypes(
allowedResultTypes: [ObjectType]
) -> SearchQueryBuilder

Set the types of objects allowed as a result of the query.

Parameters
allowedResultTypes
Returns
public func setPageSize(
pageSize: Int32
) -> SearchQueryBuilder

Set the preferred number of items on the results page. Values from the range [1; 50] are allowed.

Parameters
pageSize
Int32
Returns
public func setDirectoryFilter(
filter: DirectoryFilter
) -> SearchQueryBuilder

Set filtering for the search query.

Parameters
public func setSortingType(
sortingType: SortingType
) -> SearchQueryBuilder

Set sorting for the search query.

Parameters
public func build() -> SearchQuery

Form a search query.

SearchResult

Result of the search engine work.

Extends: Hashable
public static func == (lhs: SearchResult, rhs: SearchResult) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func markerTitles(
objectIds: [DgisObjectId]
) -> [Future<[UIMarkerInfo]>]

Retrieves marker texts by their identifiers. Returns vector <future

Parameters
objectIds

Marker IDs.

Returns
Properties
var firstPage

First page of search results.

var representativeArea

Rectangular area suitable for displaying search results.

var itemMarkerInfos
Future<[ItemMarkerInfo]?>

Asynchronous marker retrieval.

var searchResultType

Type of search query.

var dynamicFilters

Dynamic filters for the given query.

var autoUseFirstResult

An indication that the first result is suitable for direct use.

SettlementRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: SettlementRouteLongAttribute, rhs: SettlementRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> SettlementRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [SettlementRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

SimpleClusterObject

Cluster of simple marker-objects.

Extends: MapObject
Methods
public func setIcon(
icon: Image?
)

Set the cluster icon.

Parameters
icon
Properties
var position

Getting the cluster position on the map.

var objectCount

Getting the number of markers in the cluster.

var objects

Getting the list of markers in the cluster.

var anchor

Obtaining and setting the anchor point of the cluster icon.

var iconOpacity

Obtaining and setting the transparency of the cluster icon.

var text

Obtaining and setting the cluster caption.

var textStyle

Obtaining and setting the cluster caption style.

var iconWidth

Obtaining and setting the target cluster width used for scaling.

var iconMapDirection

Obtaining and setting the angle of rotation of the cluster on the map relative to the north direction, clockwise.

var animatedAppearance

Obtaining and setting the cluster appearance animability flag.

var zIndex

Obtaining and setting the object rendering level.

SimpleMapObject

Object on the map, for which you can set the visibility.

Extends: MapObject
Properties
var isVisible
var zIndex

Obtaining the drawing level of an object.

var levelId

Obtaining the snap of an object to a floor in a building.

var bounds

Rectangle of minimum size containing geometry.

SimulationSettings

Settings of the route guidance simulation.

Extends: Hashable
public static func == (lhs: SimulationSettings, rhs: SimulationSettings) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var speedMode

Simulator mode of operation.

SoundNotificationSettings

Sound alert settings in the navigator. By default, all values of sound alert categories are enabled. You can change the values while using the navigator.

Extends: Hashable
public static func == (lhs: SoundNotificationSettings, rhs: SoundNotificationSettings) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var enabledSoundCategories

A set of flags for sound alerts.

Source

Source of data on the map.

Extends: Hashable
public static func == (lhs: Source, rhs: Source) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

StatefulChannel

Extends: Channel<Value>
Properties
var value
Value

StringRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: StringRouteLongAttribute, rhs: StringRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> StringRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [StringRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first

First element.

var last
var entries

Style

Style with a set of map object properties (see ISource).

Extends: Hashable
public static func == (lhs: Style, rhs: Style) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var styleAttributes

Getting default properties for objects to which the given layer is applied.

StyleZoomFollowController

Controller for tracking the style zoom level of the map.

public convenience init(
map: Map
)

Creating a controller for tracking the style zoom level of the map.

Parameters
map
Methods
public func setStyleZoom(
styleZoom: StyleZoom
)

Set a new value for the style zoom level.

Parameters
styleZoom
public func setStyleZoomRange(
minStyleZoom: StyleZoom,
maxStyleZoom: StyleZoom
)

Set the range of acceptable values of the style zoom level.

Parameters
minStyleZoom
maxStyleZoom
public func setAnimationDuration(
duration: TimeInterval
)

Set new animation duration.

Parameters
duration
TimeInterval

Suggest

Search hint.

Extends: Hashable
public static func == (lhs: Suggest, rhs: Suggest) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var handler

The hint selection handler.

var suggestedType

Hint type.

var title

Hint title.

var subtitle

Hint subheading.

SuggestObjectHandler

A particular directory object is suggested.

Extends: Hashable
public static func == (lhs: SuggestObjectHandler, rhs: SuggestObjectHandler) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var item

Suggested object.

SuggestQuery

Search hint query.

Extends: Hashable
public static func == (lhs: SuggestQuery, rhs: SuggestQuery) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

SuggestQueryBuilder

Builder of queries to the suggestor.

Extends: Hashable
public static func == (lhs: SuggestQueryBuilder, rhs: SuggestQueryBuilder) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public static func fromQueryText(
queryText: String
) -> SuggestQueryBuilder

Start building a hint query for a given text and area of interest.

Parameters
public static func fromQuery(
query: SuggestQuery
) -> SuggestQueryBuilder

Start building a hint query based on the #query to change part of the parameters.

Parameters
public func setSpatialRestriction(
spatialRestriction: [GeoPoint]?
) -> SuggestQueryBuilder

Set the search area limit in the form of a polygon. The first and the last points of the polygon do not have to coincide.

Parameters
spatialRestriction
Returns
public func setAreaOfInterest(
rect: GeoRect?
) -> SuggestQueryBuilder

Set the rectangular region of interest in geographic coordinates. A typical value is visible_rect from ICamera - the enclosing rectangle of the view area.

Parameters
public func setAllowedResultTypes(
allowedResultTypes: [SuggestedType]
) -> SuggestQueryBuilder

Set the object types allowed as a result of the query.

Parameters
allowedResultTypes
Returns
public func setSuggestorType(
suggestorType: SuggestorType
) -> SuggestQueryBuilder

Set the suggestor type.

Parameters
public func setLimit(
limit: Int32
) -> SuggestQueryBuilder

Set the desired number of hints. Values from the range [1; 50] are allowed.

Parameters
limit
Int32
Returns
public func build() -> SuggestQuery

Build a query to the suggestor.

SuggestResult

Result of the suggestor work.

Extends: Hashable
public static func == (lhs: SuggestResult, rhs: SuggestResult) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var suggests

The set of suggested variants of hints.

SystemMemoryManager

Interface for managing the use of system memory.

Extends: Hashable
public static func == (lhs: SystemMemoryManager, rhs: SystemMemoryManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func reduceMemoryUsage()

Reducing memory usage by clearing all kinds of caches and buffers.

TerritoriesAlongRouteProvider

Interface for finding a route, taking into account traffic jam data.

Extends: Hashable
public static func == (lhs: TerritoriesAlongRouteProvider, rhs: TerritoriesAlongRouteProvider) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func getTerritories(
route: Route
) -> Future<[Territory]>

Returns the minimum required list of offline territories in route order.

Parameters
route

Territory

Territory. The data in 2GIS is split into some indivisible units called segments. But for more convenient and flexible work with the data, not the segments themselves, but their sets, called territories, are used for updating. Sets of segments in two territories may overlap, including the possibility of one territory being completely nested in another.

Extends: Package

TerritoryManager

Interface for interacting with the list of territories: Subscribe to changes of information about territories; Search for territories by coordinates and geometry; Subscribe to changes of information about the general progress of territory installation/updating; Suspend and resume the process of territory installation/updating.

Extends: Hashable
public static func == (lhs: TerritoryManager, rhs: TerritoryManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func pause()

Suspend all running operations to install or update territories.

public func resume()

Resuming all suspended operations to install or update territories.

Properties
var territoriesChannel
StatefulChannel<[Territory]>

Channel with a list of all known territories. Updated when information about at least one of the territories changes, or when the contents of the list change. The content of a channel is a subset of the total list of packages received from IPackageManager::packages. To avoid descriptions of packages being out of sync, you should not use data received simultaneously from multiple channels that contain subsets of the generic package list.

var territories

Channel with a list of all known territories. Updated when information about at least one of the territories changes, or when the contents of the list change. The content of a channel is a subset of the total list of packages received from IPackageManager::packages. To avoid descriptions of packages being out of sync, you should not use data received simultaneously from multiple channels that contain subsets of the generic package list.

TiltFollowController

Controller tracking the map tilt angle.

public convenience init()

Creating a controller for tracking the tilt angle of the map.

Methods
public func setTilt(
tilt: Tilt
)

Setting new tilt value.

Parameters
tilt
public func setAnimationDuration(
duration: TimeInterval
)

Setting new animation duration.

Parameters
duration
TimeInterval

Traffic

Description of traffic jam data.

Extends: Hashable
public static func == (lhs: Traffic, rhs: Traffic) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var durations

Movement durations on route segments. 0 - duration of movement on the route section is unknown.

var speedColors

Color representation of vehicle speeds on the route (extended attribute).

TrafficCollector

Interface for managing the traffic data collection service.

Extends: Hashable
public static func == (lhs: TrafficCollector, rhs: TrafficCollector) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
context: Context
)

The function of creating a traffic information collection service. The service analyzes the state of traffic on the road on which the user is moving and sends the results of the analysis in an anonymized form to the server.

Parameters
context

context - the environment required to run the SDK.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var trafficCollectingAllowed

Function to determine the status of allowing/forbidding the sending of traffic information to the server.

TrafficControl

Extends: UIControl
Methods
public override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?)
Parameters
previousTraitCollection
public override func layoutSubviews()
public func switchTrafficVisibility()
Properties
var intrinsicContentSize

TrafficControlModel

Traffic control model.

Extends: Hashable
public static func == (lhs: TrafficControlModel, rhs: TrafficControlModel) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
map: Map
)

Function of creating a model of a traffic jam control.

Parameters
map

Map.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func onClicked()

Action on the control click. Switches the visibility of traffic jams on the map.

Properties
var stateChannel
StatefulChannel<TrafficControlState>

The state of the traffic control.

var state

The state of the traffic control.

TrafficRoute

Extends: Hashable
public static func == (lhs: TrafficRoute, rhs: TrafficRoute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public static func fromNavigationState(
navigationState: PackedNavigationState,
context: Context
) -> TrafficRoute

Creating a route from the deserialized navigation state with adding the contained objects to the road events database (necessary to display events on the route on the map when it is impossible to get events online).

Parameters
navigationState
context
Returns
Properties
var route

Route.

var traffic

Traffic data.

TrafficRouter

Interface for finding a route, taking into account traffic data.

Extends: Hashable
public static func == (lhs: TrafficRouter, rhs: TrafficRouter) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
context: Context
)
Parameters
context
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func findRoute(
startPoint: RouteSearchPoint,
finishPoint: RouteSearchPoint,
routeSearchOptions: RouteSearchOptions,
intermediatePoints: [RouteSearchPoint] = []
) -> Future<[TrafficRoute]>

Search the route according to the specified parameters.

Parameters
startPoint

Start point of route.

finishPoint

End point of the route.

routeSearchOptions

Route search parameters.

intermediatePoints

Intermediate points for a route in the same order as the points are set in the vector.

public func findBriefRouteInfos(
searchPoints: [BriefRouteInfoSearchPoints],
routeSearchOptions: RouteSearchOptions
) -> Future<[BriefRouteInfo?]>

Searches for basic route information for the corresponding set of search points.

Parameters
searchPoints

Searches a set of search points for basic route information.

routeSearchOptions
Returns
BriefRouteInfo<[?]>

Future with basic route set information, corresponding to a set of search points, or SimpleError exception in case of an error.

Properties
var truckPassZonePasses
Future<[TruckPassZonePass]>

Returns a list of all supported passes that allow truck traffic within the pass zones.

TrafficScoreProvider

Subscribe for traffic jam score updates.

Extends: Hashable
public static func == (lhs: TrafficScoreProvider, rhs: TrafficScoreProvider) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
map: Map
)

Function to create an object to track the traffic jam score in the map visibility area.

Parameters
map

Map for which the visibility area will be tracked.

public convenience init(
context: Context,
point: GeoPoint
)

Function to create an object to track the traffic jam score for a given location.

Parameters
context

context - the environment required to run the SDK.

point

Geo-point for which you want to get the size of the traffic jams.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var scoreChannel
StatefulChannel<TrafficScore>

The current state and size of the traffic jams.

var score

The current state and size of the traffic jams.

TrafficSource

Interface of the class that controls the display of traffic jams on the map.

Extends: Source
public convenience init(
context: Context
)
Parameters
context

TrafficSpeedColorRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: TrafficSpeedColorRouteLongAttribute, rhs: TrafficSpeedColorRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> TrafficSpeedColorRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [TrafficSpeedColorRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

TransportTypeRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: TransportTypeRouteLongAttribute, rhs: TransportTypeRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> TransportTypeRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [TransportTypeRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

TruckPassZoneIdRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: TruckPassZoneIdRouteLongAttribute, rhs: TruckPassZoneIdRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> TruckPassZoneIdRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [TruckPassZoneIdRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first
var last
var entries

UIntRouteLongAttribute

A container that stores an extended route attribute. Each element is stored as a pair consisting of a point and an attribute element value. The action of the attribute starts at the given point and ends at the next point, starting from which the action of the attribute of the next element begins.

Extends: Hashable
public static func == (lhs: UIntRouteLongAttribute, rhs: UIntRouteLongAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entry(
point: RoutePoint
) -> UIntRouteLongEntry?

The element in which the point falls.

Parameters
public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [UIntRouteLongEntry]

Elements partially or completely covered by the segment [begin, end].

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first

First element.

var last

Last element.

var entries

Voice

Voice package with the navigator voiceover.

Extends: Package
Methods
public func playWelcome()

Play a voice sample.

Properties

Obtaining a voice for use in the navigator.

var language

The voiceover language in ISO 639-1 format.

VoiceManager

Interface to interact with a list of navigator voice packages.

Extends: Hashable
public static func == (lhs: VoiceManager, rhs: VoiceManager) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var voicesChannel
StatefulChannel<[Voice]>

Channel with a list of all known voice packages. Updated if the information about at least one of the voices has changed, or if the composition of the list has changed. The contents of the channel are a subset of the general package list. To avoid descriptive package descriptions being out of sync, you should not use data from multiple channels that contain subsets of the total package list at the same time.

var voices

Channel with a list of all known voice packages. Updated if the information about at least one of the voices has changed, or if the composition of the list has changed. The contents of the channel are a subset of the general package list. To avoid descriptive package descriptions being out of sync, you should not use data from multiple channels that contain subsets of the total package list at the same time.

VoiceSelector

Manages voice packages in the current navigator session.

Extends: Hashable
public static func == (lhs: VoiceSelector, rhs: VoiceSelector) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var voice

The voice package with which voice alerts are played in the current navigator session.

VoidRouteAttribute

Container that describes a point attribute of a route. Each item is stored as a point on the route, in which the item is located, and the value of the item itself.

Extends: Hashable
public static func == (lhs: VoidRouteAttribute, rhs: VoidRouteAttribute) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func entries(
begin: RoutePoint,
end: RoutePoint
) -> [RoutePoint]

Elements that fall within the segment [begin, end).

Parameters
public func findNearBackward(
point: RoutePoint
) -> RoutePoint?

Find the nearest element with position < = point.

Parameters
public func findNearForward(
point: RoutePoint
) -> RoutePoint?

Find the nearest element with position >= point.

Parameters
Properties
var size

Number of elements.

var isEmpty

Elements missing.

var first

First element.

var last

Last element.

var entries

All elements.

ZoomControl

Map scale control unit.

Extends: UIControl
Methods
public override func layoutSubviews()
Properties
var buttonSpacing

The distance between the zoom buttons.

var intrinsicContentSize

ZoomControlModel

Model of the zoom control. The control consists of +/- buttons that change the map scale when pressed. When the allowable scale limit is reached, the zoom button becomes inactive in that direction. The object's methods must be called on the same thread.

Extends: Hashable
public static func == (lhs: ZoomControlModel, rhs: ZoomControlModel) -> Bool

Returns a Boolean value indicating whether two values are equal.

public convenience init(
map: Map
)
Parameters
map
Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

public func isEnabled(
button: ZoomControlButton
) -> StatefulChannel<Bool>
Parameters
button
Returns
Bool<>
public func setPressed(
button: ZoomControlButton,
value: Bool
)
Parameters

ZoomFollowSettings

Interface that allows you to control the map zoom settings during guidance.

Extends: Hashable
public static func == (lhs: ZoomFollowSettings, rhs: ZoomFollowSettings) -> Bool

Returns a Boolean value indicating whether two values are equal.

Methods
public func hash(into hasher: inout Hasher)

Hashes the essential components of this value by feeding them into the given hasher.

Parameters
hasher
Hasher

The hasher to use when combining the components of this instance.

Properties
var speedRangeToStyleZoomSequence

Sequence of speed intervals and corresponding scales. Used to automatically change the scale in the navigator depending on the speed.

var styleZoomSpeedRangesAnimationDuration

Duration of the smooth change of scale in the guidance mode when there are no maneuvers ahead/behind at a sufficiently close distance, or on low-value roads.

var zoomInBeforeManeuverAnimationDuration

Duration of the smooth zoom level increase when approaching a maneuver. Used only if the speed is lower than in get_min_speed_to_consider_in_zoom_in_before_maneuver_animation.

var zoomOutAfterManeuverAnimationDuration

Duration of smooth zoom level decrease after passing the maneuver.

var minSpeedToConsiderInZoomInBeforeManeuverAnimation

Minimum speed in m/s, at which the duration of the smooth zoom level change is calculated taking into account not only the proximity to the maneuver, but also the current speed. Must be at least 0.1 m/s, values less than that will be ignored.

var zoomInBeforeManeuverAnimationAcceleration

Acceleration coefficient of the zoom level increase animation when approaching the maneuver. Must be at least 1, values less than that will be ignored.

var distanceGapToManeuver

Distance to the maneuver, at reaching which the animation of the smooth zoom level increase must be completed, so that during the maneuver the zoom does not change. For example, if the maneuver is 300 m, then the animation with the smooth zoom level increase must be completed 50 m before the maneuver. Must be at least 1 m, values less than that will be ignored.

var minAnimationDuration

Minimum Animation Time. Used to prevent sudden changes in the zoom level during the animation. Must be at least 200, values less than that will be ignored.