# GPUBufferDescriptor

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

*** ** * ** ***


```
public final class GPUBufferDescriptor
```

<br />

*** ** * ** ***

Describes a buffer to be created.

## Summary

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

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/webgpu/GPUBufferDescriptor#GPUBufferDescriptor(kotlin.Int,kotlin.Long,kotlin.String,kotlin.Boolean)( int usage, long size, https://developer.android.com/reference/java/lang/String.html label, boolean mappedAtCreation )` |

| ### Public methods |
|---|---|
| `final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/webgpu/GPUBufferDescriptor#getLabel()()` A human-readable label for debugging. |
| `final long` | `https://developer.android.com/reference/androidx/webgpu/GPUBufferDescriptor#getSize()()` The size of the buffer in bytes. |
| `final int` | `https://developer.android.com/reference/androidx/webgpu/GPUBufferDescriptor#getUsage()()` The allowed usages for the buffer. |
| `final boolean` | `https://developer.android.com/reference/androidx/webgpu/GPUBufferDescriptor#isMappedAtCreation()()` |
| `final void` | `https://developer.android.com/reference/androidx/webgpu/GPUBufferDescriptor#setLabel(kotlin.String)(https://developer.android.com/reference/java/lang/String.html value)` A human-readable label for debugging. |
| `final void` | `https://developer.android.com/reference/androidx/webgpu/GPUBufferDescriptor#setMappedAtCreation(kotlin.Boolean)(boolean value)` |
| `final void` | `https://developer.android.com/reference/androidx/webgpu/GPUBufferDescriptor#setSize(kotlin.Long)(long value)` The size of the buffer in bytes. |
| `final void` | `https://developer.android.com/reference/androidx/webgpu/GPUBufferDescriptor#setUsage(kotlin.Int)(int value)` The allowed usages for the buffer. |

## Public constructors

### GPUBufferDescriptor

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

```
public GPUBufferDescriptor(
    int usage,
    long size,
    String label,
    boolean mappedAtCreation
)
```

## Public methods

### getLabel

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

```
public final String getLabel()
```

A human-readable label for debugging.

### getSize

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

```
public final long getSize()
```

The size of the buffer in bytes.

### getUsage

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

```
public final int getUsage()
```

The allowed usages for the buffer.

### isMappedAtCreation

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

```
public final boolean isMappedAtCreation()
```

### setLabel

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

```
public final void setLabel(String value)
```

A human-readable label for debugging.

### setMappedAtCreation

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

```
public final void setMappedAtCreation(boolean value)
```

### setSize

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

```
public final void setSize(long value)
```

The size of the buffer in bytes.

### setUsage

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

```
public final void setUsage(int value)
```

The allowed usages for the buffer.