---
title: CPTrip
framework: carplay
role: symbol
role_heading: Class
path: carplay/cptrip
---

# CPTrip

An object that represents a journey between an origin and a destination.

## Declaration

```swift
class CPTrip
```

## Overview

Overview A trip represents a journey consisting of an origin, a destination, and up to three route choices. Use CPRouteChoice to define each possible route choice. You create trips after the user has selected a destination, and present up to twelve trip previews by calling showTripPreviews(_:textConfiguration:) on the map template. You provide estimates for each trip using the map template’s updateEstimates(_:for:) method, and must update these estimates if the remaining time or distance changes.

## Topics

### Creating a Trip

- [init(origin:destination:routeChoices:)](carplay/cptrip/init(origin:destination:routechoices:).md)
- [CPRouteChoice](carplay/cproutechoice.md)

### Getting the Trip’s Origin and Destination

- [origin](carplay/cptrip/origin.md)
- [destination](carplay/cptrip/destination.md)

### Getting Route Choices

- [routeChoices](carplay/cptrip/routechoices.md)
- [destinationNameVariants](carplay/cptrip/destinationnamevariants.md)

### Providing Additional Information

- [userInfo](carplay/cptrip/userinfo.md)

### Initializers

- [init(coder:)](carplay/cptrip/init(coder:).md)
- [init(originWaypoint:destinationWaypoint:routeChoices:)](carplay/cptrip/init(originwaypoint:destinationwaypoint:routechoices:).md)

### Instance Properties

- [destinationWaypoint](carplay/cptrip/destinationwaypoint.md)
- [hasShareableDestination](carplay/cptrip/hasshareabledestination.md)
- [originWaypoint](carplay/cptrip/originwaypoint.md)
- [routeSegmentsAvailableForRegion](carplay/cptrip/routesegmentsavailableforregion.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)

## See Also

### Getting the Trip

- [trip](carplay/cpnavigationsession/trip.md)
