---
title: GCSwitchPositionInput
framework: gamecontroller
role: symbol
role_heading: Protocol
path: gamecontroller/gcswitchpositioninput
---

# GCSwitchPositionInput

The common properties of inputs that switch between two or more positions.

## Declaration

```swift
protocol GCSwitchPositionInput : NSObjectProtocol
```

## Topics

### Getting the characteristics

- [positionRange](gamecontroller/gcswitchpositioninput/positionrange.md)
- [isSequential](gamecontroller/gcswitchpositioninput/issequential.md)
- [canWrap](gamecontroller/gcswitchpositioninput/canwrap.md)

### Getting the position

- [position](gamecontroller/gcswitchpositioninput/position.md)
- [positionDidChangeHandler](gamecontroller/gcswitchpositioninput/positiondidchangehandler.md)
- [lastPositionTimestamp](gamecontroller/gcswitchpositioninput/lastpositiontimestamp.md)
- [lastPositionLatency](gamecontroller/gcswitchpositioninput/lastpositionlatency.md)

### Getting user actions

- [sources](gamecontroller/gcswitchpositioninput/sources.md)

## Relationships

### Inherits From

- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Steering and switch elements

- [GCSteeringWheelElement](gamecontroller/gcsteeringwheelelement.md)
