---
title: withExtendedGamepad()
framework: gamecontroller
role: symbol
role_heading: Type Method
path: gamecontroller/gccontroller/withextendedgamepad()
---

# withExtendedGamepad()

Returns a snapshot of a newly created controller with an extended gamepad profile.

## Declaration

```swift
class func withExtendedGamepad() -> GCController
```

## Return Value

Return Value A snapshot with an extended gamepad profile.

## Discussion

Discussion A snapshot is a copy of a real or virtual controller at a moment in time with its current element values. Unlike other controllers, you can set the values of a snapshot’s GCControllerElement objects.

## See Also

### Creating snapshots

- [withMicroGamepad()](gamecontroller/gccontroller/withmicrogamepad().md)
- [capture()](gamecontroller/gccontroller/capture().md)
- [isSnapshot](gamecontroller/gccontroller/issnapshot.md)
