# GoogleRidesharingDriver Framework Reference

# Classes

The following classes are available globally.
- `


  ### [GMTDAuthorizationContext](https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTDAuthorizationContext)


  ` An immutable object representing the context needed to fetch an auth token.

  #### Declaration

  Swift

      class GMTDAuthorizationContext : https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTSImmutableData

  Objective-C

      @interface GMTDAuthorizationContext : https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTSImmutableData

- `


  ### [GMTDDriverAPI](https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTDDriverAPI)


  ` An abstract superclass for the Driver SDK API classes.

  #### Declaration

  Swift

      class GMTDDriverAPI : NSObject, NSCopying

  Objective-C

      @interface GMTDDriverAPI : NSObject <NSCopying>

- `


  ### [GMTDDriverContext](https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTDDriverContext)


  ` An object containing the dependencies needed to construct a `GMTDDriverApi` instance.

  #### Declaration

  Swift

      class GMTDDriverContext : https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTSImmutableData

  Objective-C

      @interface GMTDDriverContext : https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTSImmutableData

- `


  ### [GMTDRidesharingDriverAPI](https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTDRidesharingDriverAPI)


  ` A class that provide access to all the core components and serves as the entry point for the
  ridesharing use case.

  #### Declaration

  Swift

      class GMTDRidesharingDriverAPI : https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTDDriverAPI

  Objective-C

      @interface GMTDRidesharingDriverAPI : https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTDDriverAPI

- `


  ### [GMTDVehicleReporter](https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTDVehicleReporter)


  ` Object for sending information to the Fleet Engine backend.

  Use this class only from the main thread.

  #### Declaration

  Swift

      class GMTDVehicleReporter : NSObject, GMSNavigatorListener, GMSRoadSnappedLocationProviderListener

  Objective-C

      @interface GMTDVehicleReporter
          : NSObject <GMSNavigatorListener, GMSRoadSnappedLocationProviderListener>

- `


  ### [GMTDVehicleUpdate](https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTDVehicleUpdate)


  ` Object representing a vehicle update.

  #### Declaration

  Swift

      class GMTDVehicleUpdate : NSObject, NSCopying

  Objective-C

      @interface GMTDVehicleUpdate : NSObject <NSCopying>

- `


  ### [GMTSImmutableData](https://developers.google.com/maps/documentation/mobility/driver-sdk/on-demand/reference/ios/Classes/GMTSImmutableData)


  ` A base class of immutable data, subclass must implement the `isEqual:` and `hash` of the
  `NSObject` protocol.

  #### Declaration

  Swift

      class GMTSImmutableData : NSObject, NSCopying, NSSecureCoding

  Objective-C

      @interface GMTSImmutableData : NSObject <NSCopying, NSSecureCoding>