---
title: GCMicroGamepadSnapshot
framework: gamecontroller
role: symbol
role_heading: Class
path: gamecontroller/gcmicrogamepadsnapshot
---

# GCMicroGamepadSnapshot

A recording of all of the values provided by a GCMicroGamepad object.

## Declaration

```swift
class GCMicroGamepadSnapshot
```

## Overview

Overview To create a gamepad snapshot, call the saveSnapshot() method on a GCMicroGamepad object. The GCMicroGamepadSnapshot class is a subclass of the GCMicroGamepad class, so you use the parent class’s properties to read the individual element values. The snapshot is stored in a device independent format. To get the flattened data representation of the snapshot data, read the snapshotData property.

## Topics

### Converting Between Snapshots and Data Objects

- [init(snapshotData:)](gamecontroller/gcmicrogamepadsnapshot/init(snapshotdata:).md)
- [init(controller:snapshotData:)](gamecontroller/gcmicrogamepadsnapshot/init(controller:snapshotdata:).md)
- [snapshotData](gamecontroller/gcmicrogamepadsnapshot/snapshotdata.md)

### Flattening a Snapshot to Memory

- [GCMicroGamepadSnapShotDataV100](gamecontroller/gcmicrogamepadsnapshotdatav100.md)
- [NSDataFromGCMicroGamepadSnapShotDataV100(_:)](gamecontroller/nsdatafromgcmicrogamepadsnapshotdatav100(_:).md)
- [GCMicroGamepadSnapShotDataV100FromNSData(_:_:)](gamecontroller/gcmicrogamepadsnapshotdatav100fromnsdata(_:_:).md)

## Relationships

### Inherits From

- [GCMicroGamepad](gamecontroller/gcmicrogamepad.md)

### Conforms To

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

## See Also

### Deprecated symbols

- [GCGamepad](gamecontroller/gcgamepad.md)
- [GCExtendedGamepadSnapshot](gamecontroller/gcextendedgamepadsnapshot.md)
- [GCGamepadSnapshot](gamecontroller/gcgamepadsnapshot.md)
- [GCExtendedGamepadSnapshotData](gamecontroller/gcextendedgamepadsnapshotdata.md)
- [GCMicroGamepadSnapshotData](gamecontroller/gcmicrogamepadsnapshotdata.md)
- [GCExtendedGamepadSnapshotDataVersion](gamecontroller/gcextendedgamepadsnapshotdataversion.md)
- [GCMicroGamepadSnapshotDataVersion](gamecontroller/gcmicrogamepadsnapshotdataversion.md)
- [GCCurrentExtendedGamepadSnapshotDataVersion](gamecontroller/gccurrentextendedgamepadsnapshotdataversion.md)
- [GCCurrentMicroGamepadSnapshotDataVersion](gamecontroller/gccurrentmicrogamepadsnapshotdataversion.md)
- [GCExtendedGamepadSnapshotDataFromNSData(_:_:)](gamecontroller/gcextendedgamepadsnapshotdatafromnsdata(_:_:).md)
- [GCMicroGamepadSnapshotDataFromNSData(_:_:)](gamecontroller/gcmicrogamepadsnapshotdatafromnsdata(_:_:).md)
- [NSDataFromGCExtendedGamepadSnapshotData(_:)](gamecontroller/nsdatafromgcextendedgamepadsnapshotdata(_:).md)
- [NSDataFromGCMicroGamepadSnapshotData(_:)](gamecontroller/nsdatafromgcmicrogamepadsnapshotdata(_:).md)
