Classes

The following classes are available globally.

  • Author type, holds information of the creator of the GPX file. A subclass of GPXPerson.

    See more

    Declaration

    Swift

    public final class GPXAuthor : GPXPerson
  • A value type that represents bounds based off GPX v1.1 schema’s boundsType.

    This is meant for having two pairs of longitude and latitude, signifying the maximum and minimum, defining the extent / boundaries of a particular element.

    See more

    Declaration

    Swift

    public final class GPXBounds : GPXElement, Codable
  • Simple class for some basic lossy compression.

    See more

    Declaration

    Swift

    public class GPXCompression
  • A value type for representing copyright info

    Copyight information also includes additional attributes.

    Supported attributes:

    • Year of first publication
    • License of the file

    Author

    Author / Copyright Holder’s name
    See more

    Declaration

    Swift

    public final class GPXCopyright : GPXElement, Codable
  • A root class for all element types

    All element types such as waypoints, tracks or routes are subclasses of GPXElement. This class brings important methods that aids towards creation of a GPX file.

    Note

    This class should not be used as is. To use its functionalities, please subclass it instead.
    See more

    Declaration

    Swift

    open class GPXElement : NSObject
  • Used for handling email types

    Email is seperated as two variables in order to prevent email harvesting. The GPX v1.1 schema requires that.

    For example, an email of yourname@thisisawebsite.com, would have an id of ‘yourname’ and a domain of ‘thisisawebsite.com’.

    See more

    Declaration

    Swift

    public final class GPXEmail : GPXElement, Codable
  • For adding/obtaining data stored as extensions in GPX file.

    Typical GPX extended data, would have data that should be inbetween the open and close tags of <extensions>

    This class represents the extended data in a GPX file.

    See more

    Declaration

    Swift

    public final class GPXExtensions : GPXElement, Codable
  • A duplicated class of GPXRawElement

    This class is a public class as it is representative of all child extension tag types.

    It is also inherits GPXElement, and therefore, works like any other ‘native’ element types.

    See more

    Declaration

    Swift

    open class GPXExtensionsElement : GPXElement, Codable
  • A value type that can hold a web link to a external resource, or external information about a certain attribute.

    In addition to having a URL as its attribute, it also accepts the following as child tag:

    • type of content
    • text of web link (probably a description kind of thing)
    See more

    Declaration

    Swift

    public final class GPXLink : GPXElement, Codable
  • A value type that represents the metadata header of a GPX file.

    Information about the GPX file should be stored here.

    • Supported Info types:
      • Name
      • Description

      Author

      Author Info

      Date

      Date and Time

      Keyword

      Keyword
      • Bounds
      • Also supports extensions
    See more

    Declaration

    Swift

    public final class GPXMetadata : GPXElement, Codable
  • An event-driven parser (SAX parser), currently parses GPX v1.1 files only.

    This parser is already setted up, hence, does not require any handling, and will parse files directly as objects. To get the parsed data from a GPX file, simply initialize the parser, and get the GPXRoot from parsedData().

    See more

    Declaration

    Swift

    public final class GPXParser : NSObject
    extension GPXParser: XMLParserDelegate
  • A value type that is designated to hold information regarding the person or organisation who has created the GPX file.

    See more

    Declaration

    Swift

    public class GPXPerson : GPXElement, Codable
    • This class (ptType) is added to conform with the GPX v1.1 schema.

    ptType of GPX schema. Not supported in GPXRoot, nor GPXParser’s parsing.

    See more

    Declaration

    Swift

    open class GPXPoint : GPXElement, Codable
    • This class (ptsegType) is added to conform with the GPX v1.1 schema.

    ptsegType of GPX schema. Not supported in GPXRoot, nor GPXParser’s parsing.

    See more

    Declaration

    Swift

    open class GPXPointSegment : GPXElement, Codable
  • Creation of a GPX file or GPX formatted string starts here

    GPXRoot holds all metadata, waypoints, tracks, routes and extensions types together before being packaged as a GPX file, or formatted as per GPX schema’s requirements.

    See more

    Declaration

    Swift

    public final class GPXRoot : GPXElement, Codable
  • Value type that represents a route, or rteType in GPX v1.1 schema.

    The route can represent the planned route of a specific trip.

    See more

    Declaration

    Swift

    public final class GPXRoute : GPXElement, Codable
  • A route point is just like a waypoint or track point, but is suited to be part of a route.

    These route points in collective, forms a valid route.

    See more

    Declaration

    Swift

    public final class GPXRoutePoint : GPXWaypoint
  • Represents trkType of GPX v1.1 schema.

    A track can hold track segments, along with additional information regarding the track.

    Tracks are meant to show the start and finish of a journey, through the track segments that it holds.

    See more

    Declaration

    Swift

    public final class GPXTrack : GPXElement, Codable
  • A track point is just like a waypoint or route point, but is suited to be part of a track segment.

    A bunch of track points can be used to form a track segement, while track segments form a track. (though a single track segment itself is enough to form a track.)

    See more

    Declaration

    Swift

    public final class GPXTrackPoint : GPXWaypoint
  • A track segment that holds data on all track points in the particular segment.

    Does not hold additional information by default.

    See more

    Declaration

    Swift

    public final class GPXTrackSegment : GPXElement, Codable
  • A value type that represents waypoint based off GPX v1.1 schema’s wptType.

    According to the GPX schema, the waypoint type can represent the following:

    • a waypoint
    • a point of interest
    • a named feature on a map

    The waypoint should at least contain the attributes of both latitude and longitude in order to be considered a valid waypoint. Most attributes are optional, and are not required to be implemented.

    See more

    Declaration

    Swift

    public class GPXWaypoint : GPXElement, Codable