# GPUInstanceDescriptor

Artifact: [androidx.webgpu:webgpu](https://developer.android.com/jetpack/androidx/releases/webgpu) [View Source](https://cs.android.com/search?q=file:androidx/webgpu/GPUInstanceDescriptor.kt+class:androidx.webgpu.GPUInstanceDescriptor) Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

*** ** * ** ***


```
public final class GPUInstanceDescriptor
```

<br />

*** ** * ** ***

Describes an instance to be created.

## Summary

| ### Nested types |
|---|
| `public final class https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor.Builder` Builder for `https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor`. |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor#GPUInstanceDescriptor()()` |
| `https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor#GPUInstanceDescriptor(kotlin.IntArray,androidx.webgpu.GPUInstanceLimits)( @https://developer.android.com/reference/androidx/annotation/NonNull int[] requiredFeatures, https://developer.android.com/reference/androidx/webgpu/GPUInstanceLimits requiredLimits )` |
| `@https://developer.android.com/reference/androidx/webgpu/ExperimentalWebGpuApi https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor#GPUInstanceDescriptor(kotlin.IntArray,androidx.webgpu.GPUInstanceLimits,androidx.webgpu.GPUDawnTogglesDescriptor)( @https://developer.android.com/reference/androidx/annotation/NonNull int[] requiredFeatures, https://developer.android.com/reference/androidx/webgpu/GPUInstanceLimits requiredLimits, https://developer.android.com/reference/androidx/webgpu/GPUDawnTogglesDescriptor dawnTogglesDescriptor )` |

| ### Public methods |
|---|---|
| `final https://developer.android.com/reference/androidx/webgpu/GPUDawnTogglesDescriptor` | `https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor#getDawnTogglesDescriptor()()` |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull int[]` | `https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor#getRequiredFeatures()()` |
| `final https://developer.android.com/reference/androidx/webgpu/GPUInstanceLimits` | `https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor#getRequiredLimits()()` |
| `final void` | `https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor#setDawnTogglesDescriptor(androidx.webgpu.GPUDawnTogglesDescriptor)(https://developer.android.com/reference/androidx/webgpu/GPUDawnTogglesDescriptor value)` |
| `final void` | `https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor#setRequiredFeatures(kotlin.IntArray)(@https://developer.android.com/reference/androidx/annotation/NonNull int[] value)` |
| `final void` | `https://developer.android.com/reference/androidx/webgpu/GPUInstanceDescriptor#setRequiredLimits(androidx.webgpu.GPUInstanceLimits)(https://developer.android.com/reference/androidx/webgpu/GPUInstanceLimits value)` |

## Public constructors

### GPUInstanceDescriptor

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public GPUInstanceDescriptor()
```

### GPUInstanceDescriptor

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public GPUInstanceDescriptor(
    @NonNull int[] requiredFeatures,
    GPUInstanceLimits requiredLimits
)
```

### GPUInstanceDescriptor

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
@ExperimentalWebGpuApi
public GPUInstanceDescriptor(
    @NonNull int[] requiredFeatures,
    GPUInstanceLimits requiredLimits,
    GPUDawnTogglesDescriptor dawnTogglesDescriptor
)
```

## Public methods

### getDawnTogglesDescriptor

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public final GPUDawnTogglesDescriptor getDawnTogglesDescriptor()
```

### getRequiredFeatures

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public final @NonNull int[] getRequiredFeatures()
```

### getRequiredLimits

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public final GPUInstanceLimits getRequiredLimits()
```

### setDawnTogglesDescriptor

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public final void setDawnTogglesDescriptor(GPUDawnTogglesDescriptor value)
```

### setRequiredFeatures

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public final void setRequiredFeatures(@NonNull int[] value)
```

### setRequiredLimits

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public final void setRequiredLimits(GPUInstanceLimits value)
```