# InputDeviceCharacteristics

> A set of bit flags describing InputDevice characteristics.

## Definition

* **Type:** Enum
* **Namespace:** [UnityEngine.XR](/engine/6000.6/script-reference/unityengine/xr.md)
* **Assembly:** UnityEngine.XRModule

```csharp
[Flags]
public enum InputDeviceCharacteristics : uint
```

## Remarks

The XR system combines the **InputDeviceFlags** members into the [InputDevice.characteristics](/engine/6000.6/script-reference/unityengine/xr/inputdevice/characteristics.md) bitmask to describe the characteristics and capabilities of an input device. You can also pass a bitwise combination of flags from this enumeration to [InputDevices.GetDevicesWithCharacteristics](/engine/6000.6/script-reference/unityengine/xr/inputdevices/getdeviceswithcharacteristics.md) to get a list of devices with specific characteristics. For example, you could use the following to get the right-hand controller:

`(InputDeviceCharacteristics.HeldInHand | InputDeviceCharacteristics.Right)`.

## Fields

| Value                                                                                                               | Description                                                                                                                                                                                             |
| ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Camera](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/camera.md)                       | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) has a camera and associated camera tracking information.                                                               |
| [Controller](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/controller.md)               | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) is a game controller.                                                                                                  |
| [EyeTracking](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/eyetracking.md)             | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) provides eye tracking information via an [Eyes](/engine/6000.6/script-reference/unityengine/xr/eyes.md) input feature. |
| [HandTracking](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/handtracking.md)           | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) provides hand tracking information via a [Hand](/engine/6000.6/script-reference/unityengine/xr/hand.md) input feature. |
| [HeadMounted](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/headmounted.md)             | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) is attached to the head.                                                                                               |
| [HeldInHand](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/heldinhand.md)               | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) is held in the user's hand. Typically, a tracked controller.                                                           |
| [Left](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/left.md)                           | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) is associated with the left side of the user.                                                                          |
| [None](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/none.md)                           | A default value specifying no flags.                                                                                                                                                                    |
| [Right](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/right.md)                         | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) is associated with the right side of the user.                                                                         |
| [Simulated6DOF](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/simulated6dof.md)         | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) reports software approximated, positional data.                                                                        |
| [TrackedDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/trackeddevice.md)         | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) provides 3DOF or 6DOF tracking data.                                                                                   |
| [TrackingReference](/engine/6000.6/script-reference/unityengine/xr/inputdevicecharacteristics/trackingreference.md) | The [InputDevice](/engine/6000.6/script-reference/unityengine/xr/inputdevice.md) is an unmoving reference object used to locate and track other objects in the world.                                   |
