# GPUShaderModuleDescriptor

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

*** ** * ** ***


```
public final class GPUShaderModuleDescriptor
```

<br />

*** ** * ** ***

Describes a shader module.

## Summary

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

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/webgpu/GPUShaderModuleDescriptor#GPUShaderModuleDescriptor(kotlin.String,androidx.webgpu.GPUShaderSourceSPIRV,androidx.webgpu.GPUShaderSourceWGSL)( https://developer.android.com/reference/java/lang/String.html label, https://developer.android.com/reference/androidx/webgpu/GPUShaderSourceSPIRV shaderSourceSPIRV, https://developer.android.com/reference/androidx/webgpu/GPUShaderSourceWGSL shaderSourceWGSL )` |

| ### Public methods |
|---|---|
| `final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/webgpu/GPUShaderModuleDescriptor#getLabel()()` A human-readable label for debugging. |
| `final https://developer.android.com/reference/androidx/webgpu/GPUShaderSourceSPIRV` | `https://developer.android.com/reference/androidx/webgpu/GPUShaderModuleDescriptor#getShaderSourceSPIRV()()` Extension for providing SPIR-V shader source code. |
| `final https://developer.android.com/reference/androidx/webgpu/GPUShaderSourceWGSL` | `https://developer.android.com/reference/androidx/webgpu/GPUShaderModuleDescriptor#getShaderSourceWGSL()()` Extension for providing WGSL shader source code. |
| `final void` | `https://developer.android.com/reference/androidx/webgpu/GPUShaderModuleDescriptor#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/GPUShaderModuleDescriptor#setShaderSourceSPIRV(androidx.webgpu.GPUShaderSourceSPIRV)(https://developer.android.com/reference/androidx/webgpu/GPUShaderSourceSPIRV value)` Extension for providing SPIR-V shader source code. |
| `final void` | `https://developer.android.com/reference/androidx/webgpu/GPUShaderModuleDescriptor#setShaderSourceWGSL(androidx.webgpu.GPUShaderSourceWGSL)(https://developer.android.com/reference/androidx/webgpu/GPUShaderSourceWGSL value)` Extension for providing WGSL shader source code. |

## Public constructors

### GPUShaderModuleDescriptor

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

```
public GPUShaderModuleDescriptor(
    String label,
    GPUShaderSourceSPIRV shaderSourceSPIRV,
    GPUShaderSourceWGSL shaderSourceWGSL
)
```

## 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.

### getShaderSourceSPIRV

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

```
public final GPUShaderSourceSPIRV getShaderSourceSPIRV()
```

Extension for providing SPIR-V shader source code.

### getShaderSourceWGSL

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

```
public final GPUShaderSourceWGSL getShaderSourceWGSL()
```

Extension for providing WGSL shader source code.

### 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.

### setShaderSourceSPIRV

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

```
public final void setShaderSourceSPIRV(GPUShaderSourceSPIRV value)
```

Extension for providing SPIR-V shader source code.

### setShaderSourceWGSL

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

```
public final void setShaderSourceWGSL(GPUShaderSourceWGSL value)
```

Extension for providing WGSL shader source code.