Enumerations

The following enumerations are available globally.

  • The logs console output data amount level where error is a minimum amount and verbose is a maximum. This affects only the console output and does not affect the internal logs file. Internal logs file will still log verbose level to have all details for future debugging.

    See more

    Declaration

    Swift

    public enum LoggingLevel
  • Fetched from the server and own tracked data are stored locally on the device up to the maximum supported time and removed when not needed anymore. Using TurbulenceQuery.type it is possible to query for server-only data or own-only data. For example, when showing server and own tracked data on different map layers differently.

    See more

    Declaration

    Swift

    public enum TurbulenceResultType
  • The aircraft size category.

    See more

    Declaration

    Swift

    public enum AircraftSize : String, Codable
  • Based on AlertQuery and DataQuery configuration the alerts can be searched in different ways. You don’t set this type but receive only for information purposes of how this alert was found.

    See more

    Declaration

    Swift

    public enum AlertResultType
  • There are thousands of turbulence reports around the globe. To reduce network traffic usage and keep only data that is currently needed the data fetch is separated into the different types controlled by the SkyPath.dataQuery object that is set initially to default values and can be updated at any time. Each area type is fetched by a separate server request. It can be used to update different data map layers if for example route and viewport data are on different layers.

    See more

    Declaration

    Swift

    public enum DataAreaType
  • When started, SDK fetches initial data from time back in time and then receives only updates since the last update. The server does some data precalculations so only the specified time frames are supported.

    It determines the data history to be fetched from the server. So if it is set to .twoHours for example (the default one), there will be no data locally available for more than 2 hours ago. If need 4 hours of history, set SkyPath.dataHistoryTime to .fourHours.

    See more

    Declaration

    Swift

    public enum DataHistoryTime : Double, Codable, CaseIterable
  • It controls time intervals to fetch data for global turbulence polygons, route polygons, viewport, and other data. When the data query route polygon or the viewport is changed, they are fetched as fast as possible not waiting for the next time interval. The default is fast.

    Usage example:

    SkyPath.shared.dataUpdateFrequency = .fast
    

    To save network traffic, you can set it to none to disable periodic new data fetch from the server at all or set it to minimal to update with bigger time intervals. At first, the whole data for configured DataHistoryTime will be fetched and then only the difference will be received every time interval cycle. Each case has a predefined time interval that you can’t change. At the moment, there are no differences between minimal, medium, and fast, but it’s subject to future change. fast is recommended to use which is also set by default.

    See more

    Declaration

    Swift

    public enum DataUpdateFrequency : String, Codable
  • Server environment used by SDK internal API routing. serverUrl is a base URL to access SkyPath service. Use nil to use the default domain (see each case details).

    You can use a proxy server to avoid whitelisting a SkyPath domain. It should forward all HTTPS network traffic for api.skypath.io with a wildcard * for a path. docs.skypath.io describes APIs to get data only as it’s not possible to send recorded data outside of SDK. SDK will use other not documented API endpoints, so whitelisting only those or any other fixed endpoints paths list is not sufficient.

    See more

    Declaration

    Swift

    public enum Environment : Codable
  • Errors returned when making a query for alerts via SkyPath.alerts(with:). Query is made among locally stored data, so an error will typically indicate that some properties of AlertQuery or configuration of DataQuery are invalid or insufficient.

    See more

    Declaration

    Swift

    public enum AlertError : SPError
  • General SkyPath errors.

    See more

    Declaration

    Swift

    public enum GeneralError : SPError
  • Errors returned when making a data query.

    See more

    Declaration

    Swift

    public enum QueryError : SPError
  • Errors returned in a completion block when starting the SDK by SkyPath.start().

    See more

    Declaration

    Swift

    public enum StartError : SPError
  • The source from which location has been taken by the SDK.

    See more

    Declaration

    Swift

    public enum SPLocationSource
  • Indicates if the current location is sufficient for SDK to track data or not. Data will not be recorded when the location state is none.

    It is important to have a good location to track turbulence data. Cellular devices have a built-in GPS and can have a stable location without an internet connection, but WiFi-only devices do not and need an internet connection or an external GPS receiver. When a device has poor location data (outdated or invalid) SDK will not track data and show the current position on the map. However, SDK tries to operate with a poor or shaky GPS signal as much as possible. SDK handles all location-related stuff out of the box.

    See more

    Declaration

    Swift

    public enum SPLocationState : Codable
  • A severity level of a turbulence report. It can vary for different aircraft types.

    See more

    Declaration

    Swift

    public enum TurbulenceSeverity : Int, Equatable, Comparable, Codable, CaseIterable
  • Determined when new data is received by comparing it to the previously locally stored data.

    Fetched from the server and own tracked data are stored locally on the device up to the maximum supported time and removed when not needed anymore. When new data is received for a specific tile that has some data stored, and new data has a different aggregated max severity. Shows if the severity of this tile is getting worse or better.

    See more

    Declaration

    Swift

    public enum TurbulenceTrend : String, Codable