From b428a8e11b1923dd6c590d14cf51f74c024aeac4 Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Thu, 19 Sep 2024 02:27:44 +0200 Subject: [PATCH 01/22] Update Kotlin version, JVM target, dependencies, and refactor Moved to Kotlin 2.0.0 and updated dependencies including wgpu4k to preview-3. Changed JVM target to 22 in multiple Gradle scripts and replaced deprecated methods with `allocateFrom` in native code handling. --- build.gradle.kts | 4 ---- core/build.gradle.kts | 9 +++++---- .../jsMain/kotlin/com/littlekt/WebGPUGraphics.kt | 14 +++++++++++++- .../jvmMain/kotlin/com/littlekt/LwjglContext.kt | 2 +- .../jvmMain/kotlin/com/littlekt/LwjglGraphics.kt | 2 +- .../kotlin/com/littlekt/graphics/webgpu/-utils.kt | 4 ++-- .../com/littlekt/graphics/webgpu/command.jvm.kt | 2 +- .../com/littlekt/graphics/webgpu/webgpu.jvm.kt | 8 ++++---- examples/build.gradle.kts | 13 +++++++++---- gradle/libs.versions.toml | 3 +++ gradle/wrapper/gradle-wrapper.properties | 2 +- scene-graph/build.gradle.kts | 10 ++++++---- settings.gradle.kts | 3 +++ wgpu-ffm/build.gradle.kts | 4 ---- 14 files changed, 49 insertions(+), 31 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index df49cb083..18b0ecc62 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -12,10 +12,6 @@ plugins { val littleKtVersion: String by project allprojects { - repositories { - google() - mavenCentral() - } group = "com.littlekt" version = littleKtVersion extra["isReleaseVersion"] = !littleKtVersion.endsWith("SNAPSHOT") diff --git a/core/build.gradle.kts b/core/build.gradle.kts index 1da745dbb..0219c22ea 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -1,3 +1,5 @@ +import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi +import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.plugin.KotlinJsCompilerType import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType @@ -15,12 +17,11 @@ kotlin { env = System.getProperty("env") } systemProperty("env", env ?: "dev") - jvmArgs("--enable-preview") } jvm { - compilations.all { - kotlinOptions.jvmTarget = "11" - compileJavaTaskProvider?.get()?.options?.compilerArgs?.add("--enable-preview") + @OptIn(ExperimentalKotlinGradlePluginApi::class) + compilerOptions { + jvmTarget = JvmTarget.JVM_22 } } js(KotlinJsCompilerType.IR) { diff --git a/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt b/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt index 3467135d2..ff6ea6d94 100644 --- a/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt +++ b/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt @@ -2,7 +2,19 @@ package com.littlekt import com.littlekt.graphics.Cursor import com.littlekt.graphics.SystemCursor -import com.littlekt.graphics.webgpu.* +import com.littlekt.graphics.webgpu.Adapter +import com.littlekt.graphics.webgpu.AlphaMode +import com.littlekt.graphics.webgpu.Device +import com.littlekt.graphics.webgpu.GPU +import com.littlekt.graphics.webgpu.GPUAdapter +import com.littlekt.graphics.webgpu.GPUCanvasContext +import com.littlekt.graphics.webgpu.GPUDevice +import com.littlekt.graphics.webgpu.PresentMode +import com.littlekt.graphics.webgpu.Surface +import com.littlekt.graphics.webgpu.SurfaceCapabilities +import com.littlekt.graphics.webgpu.SurfaceConfiguration +import com.littlekt.graphics.webgpu.TextureFormat +import com.littlekt.graphics.webgpu.TextureUsage import com.littlekt.util.internal.jsObject import kotlinx.browser.window import org.w3c.dom.Element diff --git a/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt b/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt index e7a0045c0..316bef61f 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt @@ -211,7 +211,7 @@ class LwjglContext(override val configuration: JvmConfiguration) : Context() { private fun initLogging() { val callback = WGPULogCallback.Function { level, message, _ -> - val messageJvm = message.getUtf8String(0) + val messageJvm = message.getString(0) val logLevel = when (level) { WGPULogLevel_Error() -> Logger.Level.ERROR diff --git a/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt b/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt index 7d6d5c5f9..21d012c9c 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt @@ -80,7 +80,7 @@ class LwjglGraphics(private val context: LwjglContext) : Graphics, Releasable { output.update { adapter } } else { logger.error { - "requestAdapter status=$status, message=${message.getUtf8String(0)}" + "requestAdapter status=$status, message=${message.getString(0)}" } } }, diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/-utils.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/-utils.kt index 73c2e1b65..b0ecbccf7 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/-utils.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/-utils.kt @@ -40,9 +40,9 @@ internal fun Collection.mapToNativeEntries( internal val WGPU_NULL: MemorySegment = WGPU.NULL() internal fun List.toNativeArray(scope: SegmentAllocator) = - scope.allocateArray(ValueLayout.JAVA_LONG, *map { it.address() }.toLongArray()) + scope.allocateFrom(ValueLayout.JAVA_LONG, *map { it.address() }.toLongArray()) -internal fun String.toNativeString(scope: SegmentAllocator) = scope.allocateUtf8String(this) +internal fun String.toNativeString(scope: SegmentAllocator) = scope.allocateFrom(this) internal fun Boolean.toInt() = if (this) 1 else 0 diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt index 5ec4183e0..2c30805b5 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt @@ -288,7 +288,7 @@ actual class RenderPassEncoder(val segment: MemorySegment, actual val label: Str if (dynamicOffsets.isNotEmpty()) { Arena.ofConfined().use { scope -> val offsets = - scope.allocateArray(ValueLayout.JAVA_LONG, *dynamicOffsets.toLongArray()) + scope.allocateFrom(ValueLayout.JAVA_LONG, *dynamicOffsets.toLongArray()) wgpuRenderPassEncoderSetBindGroup( segment, index, diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt index 71b78d168..320e93dae 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt @@ -85,7 +85,7 @@ actual class Device(val segment: MemorySegment) : Releasable { WGPUChainedStruct.next(wgslChain, WGPU_NULL) WGPUChainedStruct.sType(wgslChain, WGPUSType_ShaderModuleWGSLDescriptor()) - WGPUShaderModuleWGSLDescriptor.code(wgsl, scope.allocateUtf8String(src)) + WGPUShaderModuleWGSLDescriptor.code(wgsl, scope.allocateFrom(src)) WGPUShaderModuleDescriptor.nextInChain(desc, wgslChain) ShaderModule(wgpuDeviceCreateShaderModule(segment, desc)) } @@ -566,7 +566,7 @@ actual class Adapter(var segment: MemorySegment) : Releasable { output.update { device } } else { logger.log(Logger.Level.ERROR) { - "requestDevice status=$status, message=${message.getUtf8String(0)}" + "requestDevice status=$status, message=${message.getString(0)}" } } }, @@ -578,7 +578,7 @@ actual class Adapter(var segment: MemorySegment) : Releasable { if (descriptor != null) { descriptor.label?.let { WGPUDeviceDescriptor.label(desc, it.toNativeString(scope)) } descriptor.requiredFeatures?.let { - val nativeArray = scope.allocateArray(ValueLayout.JAVA_INT, it.size.toLong()) + val nativeArray = scope.allocate(ValueLayout.JAVA_INT, it.size.toLong()) it.forEachIndexed { index, jvmEntry -> val nativeEntry = nativeArray.asSlice((Int.SIZE_BYTES * index).toLong()) @@ -785,7 +785,7 @@ actual class Queue(val segment: MemorySegment) : Releasable { wgpuQueueWriteTexture( segment, destination.toNative(scope), - scope.allocateArray(ValueLayout.JAVA_BYTE, *data), + scope.allocateFrom(ValueLayout.JAVA_BYTE, *data), size, layout.toNative(scope), copySize.toNative(scope) diff --git a/examples/build.gradle.kts b/examples/build.gradle.kts index 2dd2da208..8000b1d03 100644 --- a/examples/build.gradle.kts +++ b/examples/build.gradle.kts @@ -1,14 +1,18 @@ import org.apache.tools.ant.taskdefs.condition.Os +import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi +import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType plugins { alias(libs.plugins.kotlin.multiplatform) } -repositories { maven(url = "https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven") } - kotlin { - tasks.withType { jvmArgs("--enable-preview", "--enable-native-access=ALL-UNNAMED") } + tasks.withType { jvmArgs("--enable-native-access=ALL-UNNAMED") } jvm { - compilations.all { kotlinOptions.jvmTarget = "21" } + @OptIn(ExperimentalKotlinGradlePluginApi::class) + compilerOptions { + jvmTarget = JvmTarget.JVM_22 + } + compilations { val main by getting val mainClassName = "com.littlekt.examples.JvmRunnerKt" @@ -79,6 +83,7 @@ kotlin { sourceSets { val commonMain by getting { dependencies { + implementation(libs.wgpu4k) implementation(libs.kotlinx.coroutines.core) implementation(project(":core")) implementation(project(":scene-graph")) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index a484da00f..d3b57aaa7 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,6 @@ [versions] download-gradle = "5.6.0" +wgpu4k = "preview-3" kotlin = "2.0.0" kotlinxHtmlVersion = "0.11.0" kotlinx-atomicfu = "0.24.0" @@ -19,6 +20,8 @@ lwjgl-glfw = { module = "org.lwjgl:lwjgl-glfw", version.ref = "lwjgl" } lwjgl-openal = { module = "org.lwjgl:lwjgl-openal", version.ref = "lwjgl" } lwjgl-stb = { module = "org.lwjgl:lwjgl-stb", version.ref = "lwjgl" } mp3-decoder = { module = "fr.delthas:javamp3", version.ref = "mp3-decoder" } +wgpu4k = { module = "io.ygdrasil:wgpu4k", version.ref = "wgpu4k" } + [plugins] download = { id = "de.undercouch.download", version.ref = "download-gradle" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 20db9ad5c..171d8761b 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip networkTimeout=10000 zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/scene-graph/build.gradle.kts b/scene-graph/build.gradle.kts index 3d3a557dc..21c60f594 100644 --- a/scene-graph/build.gradle.kts +++ b/scene-graph/build.gradle.kts @@ -1,3 +1,5 @@ +import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi +import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.plugin.KotlinJsCompilerType import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType @@ -7,11 +9,11 @@ plugins { } kotlin { - tasks.withType { jvmArgs("--enable-preview", "--enable-native-access=ALL-UNNAMED") } + tasks.withType { jvmArgs("--enable-native-access=ALL-UNNAMED") } jvm { - compilations.all { - kotlinOptions.jvmTarget = "11" - compileJavaTaskProvider?.get()?.options?.compilerArgs?.add("--enable-preview") + @OptIn(ExperimentalKotlinGradlePluginApi::class) + compilerOptions { + jvmTarget = JvmTarget.JVM_22 } } js(KotlinJsCompilerType.IR) { diff --git a/settings.gradle.kts b/settings.gradle.kts index 8f94d61fc..ccfc8a3d3 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -13,6 +13,9 @@ dependencyResolutionManagement { repositories { google() mavenCentral() + //wgpu4k snapshot & preview repository + maven("https://gitlab.com/api/v4/projects/25805863/packages/maven") + maven(url = "https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven") } } diff --git a/wgpu-ffm/build.gradle.kts b/wgpu-ffm/build.gradle.kts index f49afb7b4..eecbff912 100644 --- a/wgpu-ffm/build.gradle.kts +++ b/wgpu-ffm/build.gradle.kts @@ -3,10 +3,6 @@ plugins { id("module.publication") } -tasks.withType { jvmArgs("--enable-preview") } - -tasks.withType { options.compilerArgs.add("--enable-preview") } - java { sourceCompatibility = JavaVersion.VERSION_21 targetCompatibility = JavaVersion.VERSION_21 From 6b3b39137e7e47d1994a29eff3a2cf74272704da Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Thu, 19 Sep 2024 02:35:28 +0200 Subject: [PATCH 02/22] Update to JDK 22 throughout the project Updated README.md, build scripts, and GitHub workflows to use JDK 22. This ensures compatibility with the latest Java FFM API and keeps project dependencies current. Also updated Kotlin Coroutines version to 1.9.0. --- .github/workflows/build.yml | 4 ++-- .github/workflows/publish-release.yml | 4 ++-- .github/workflows/publish-snapshot.yml | 4 ++-- README.md | 6 +++--- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 009242484..b689e2dbe 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -26,10 +26,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Java JDK 21 + - name: Setup Java JDK 22 uses: actions/setup-java@v4.2.1 with: - java-version: 21 + java-version: 22 distribution: adopt - name: Grant gradlew execution permissions run: chmod +x gradlew diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index 79ae666db..ef477049f 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -16,10 +16,10 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Setup Java JDK 21 + - name: Setup Java JDK 22 uses: actions/setup-java@v4.2.1 with: - java-version: 21 + java-version: 22 distribution: adopt - name: Grant gradlew execution permissions run: chmod +x gradlew diff --git a/.github/workflows/publish-snapshot.yml b/.github/workflows/publish-snapshot.yml index a03f81b07..072272fb5 100644 --- a/.github/workflows/publish-snapshot.yml +++ b/.github/workflows/publish-snapshot.yml @@ -21,10 +21,10 @@ jobs: if: ${{ github.event.workflow_run.conclusion == 'success' }} steps: - uses: actions/checkout@v2 - - name: Setup Java JDK 21 + - name: Setup Java JDK 22 uses: actions/setup-java@v4.2.1 with: - java-version: 21 + java-version: 22 distribution: adopt - name: Grant gradlew execution permissions run: chmod +x gradlew diff --git a/README.md b/README.md index e3de6a71e..acd3362e8 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ [![build](https://github.com/littlektframework/littlekt/actions/workflows/build.yml/badge.svg?branch=master)](https://github.com/littlektframework/littlekt/actions/workflows/build.yml) [![Download](https://img.shields.io/maven-central/v/com.littlekt/core/0.10.1)](https://search.maven.org/artifact/com.littlekt/core/0.10.1/pom) -Requires JDK 21+ in order to use due to the usage of the new Java FFM API. +Requires JDK 22+ in order to use due to the usage of the new Java FFM API. **Currently, in development.** @@ -36,13 +36,13 @@ repositories { kotlin { jvm { compilations.all { - kotlinOptions.jvmTarget = "21" // littlekt targets jvm 21 so we must target at least 21 + kotlinOptions.jvmTarget = "22" // littlekt targets jvm 21 so we must target at least 21 } } } val littleKtVersion = "0.10.1" // get the latest release at the top -val kotlinCoroutinesVersion = "1.9.0-RC" // or whatever version you are using +val kotlinCoroutinesVersion = "1.9.0" // or whatever version you are using sourceSets { val commonMain by getting { From bdd3c00bd90fa93a7a3cae703e27d03d67dde6ee Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Fri, 20 Sep 2024 01:15:52 +0200 Subject: [PATCH 03/22] Refactor WebGPU imports and simplify texture format determination Replaced 'com.littlekt.graphics.webgpu' imports with 'io.ygdrasil.wgpu' throughout the codebase. Simplified the determination of the preferred texture format and improved consistency in the usage of WebGPU methods and properties. --- core/build.gradle.kts | 14 +++-- .../kotlin/com/littlekt/Graphics.kt | 17 +++--- .../littlekt/file/ldtk/-LDtkLevelLoader.kt | 5 +- .../com/littlekt/file/vfs/VfsLoaders.kt | 7 +-- .../com/littlekt/graphics/EmptyTexture.kt | 30 ++++++---- .../com/littlekt/graphics/IndexedMesh.kt | 2 +- .../com/littlekt/graphics/IndexedMeshExt.kt | 2 +- .../kotlin/com/littlekt/graphics/MeshExt.kt | 2 +- .../kotlin/com/littlekt/graphics/PixmapExt.kt | 4 +- .../com/littlekt/graphics/PixmapTexture.kt | 26 ++++++--- .../kotlin/com/littlekt/graphics/Texture.kt | 16 +++-- .../com/littlekt/graphics/TextureExt.kt | 2 +- .../resources/internal/InternalResources.kt | 29 +++++----- .../com/littlekt/util/MutableTextureAtlas.kt | 6 +- .../kotlin/com/littlekt/WebGPUGraphics.kt | 58 ++++++++----------- .../com/littlekt/file/vfs/VfsLoaders.js.kt | 2 +- .../com/littlekt/file/vfs/VfsLoaders.jvm.kt | 1 - examples/build.gradle.kts | 1 - .../gradle/texturepacker/build.gradle.kts | 2 - extensions/tools/build.gradle.kts | 2 - 20 files changed, 117 insertions(+), 111 deletions(-) diff --git a/core/build.gradle.kts b/core/build.gradle.kts index 0219c22ea..ff98c1143 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -38,6 +38,7 @@ kotlin { sourceSets { val commonMain by getting { dependencies { + implementation(libs.wgpu4k) implementation(libs.kotlinx.atomicfu) implementation(libs.kotlinx.coroutines.core) implementation(libs.kotlinx.serialization.json) @@ -85,16 +86,17 @@ kotlin { all { languageSettings.apply { - progressiveMode = true optIn("kotlin.contracts.ExperimentalContracts") optIn("kotlin.time.ExperimentalTime") } } - targets.configureEach { - compilations.configureEach { - compilerOptions.configure { freeCompilerArgs.add("-Xexpect-actual-classes") } - } - } + } + + @OptIn(ExperimentalKotlinGradlePluginApi::class) + compilerOptions { + allWarningsAsErrors = true + progressiveMode = true + freeCompilerArgs.add("-Xexpect-actual-classes") } } diff --git a/core/src/commonMain/kotlin/com/littlekt/Graphics.kt b/core/src/commonMain/kotlin/com/littlekt/Graphics.kt index 3971c0684..8ca384d1d 100644 --- a/core/src/commonMain/kotlin/com/littlekt/Graphics.kt +++ b/core/src/commonMain/kotlin/com/littlekt/Graphics.kt @@ -2,7 +2,13 @@ package com.littlekt import com.littlekt.graphics.Cursor import com.littlekt.graphics.SystemCursor -import com.littlekt.graphics.webgpu.* +import io.ygdrasil.wgpu.Adapter +import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.TextureFormat +import io.ygdrasil.wgpu.TextureUsage +import io.ygdrasil.wgpu.CompositeAlphaMode +import io.ygdrasil.wgpu.Surface /** * Contains graphic related properties and methods. @@ -36,18 +42,15 @@ interface Graphics { /** @return the preferred [TextureFormat] of the underlying [surface]. */ val preferredFormat: TextureFormat - /** @return the capability of the underlying [surface] */ - val surfaceCapabilities: SurfaceCapabilities - /** * Configures the underlying [surface], via [Surface.configure], which initializes the surface * for presentation. */ fun configureSurface( - usage: TextureUsage = TextureUsage.RENDER_ATTACHMENT, + usage: Set = setOf(TextureUsage.renderattachment), format: TextureFormat = preferredFormat, - presentMode: PresentMode = PresentMode.FIFO, - alphaMode: AlphaMode = surfaceCapabilities.alphaModes[0] + presentMode: PresentMode = PresentMode.fifo, + alphaMode: CompositeAlphaMode = surface.supportedAlphaMode.first() ) /** diff --git a/core/src/commonMain/kotlin/com/littlekt/file/ldtk/-LDtkLevelLoader.kt b/core/src/commonMain/kotlin/com/littlekt/file/ldtk/-LDtkLevelLoader.kt index 4c28a44ca..cad7d32a6 100644 --- a/core/src/commonMain/kotlin/com/littlekt/file/ldtk/-LDtkLevelLoader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/file/ldtk/-LDtkLevelLoader.kt @@ -666,10 +666,7 @@ internal class LDtkLevelLoader( .readPixmap() .sliceWithBorderToTexture( device = vfs.vfs.context.graphics.device, - preferredFormat = - if (vfs.vfs.context.graphics.preferredFormat.srgb) - TextureFormat.RGBA8_UNORM_SRGB - else TextureFormat.RGBA8_UNORM, + preferredFormat = vfs.vfs.context.graphics.preferredFormat, sliceWidth = tilesetDef.tileGridSize, sliceHeight = tilesetDef.tileGridSize, border = sliceBorder diff --git a/core/src/commonMain/kotlin/com/littlekt/file/vfs/VfsLoaders.kt b/core/src/commonMain/kotlin/com/littlekt/file/vfs/VfsLoaders.kt index 813ff55d2..f8948cb13 100644 --- a/core/src/commonMain/kotlin/com/littlekt/file/vfs/VfsLoaders.kt +++ b/core/src/commonMain/kotlin/com/littlekt/file/vfs/VfsLoaders.kt @@ -16,9 +16,9 @@ import com.littlekt.graphics.g2d.TextureSlice import com.littlekt.graphics.g2d.font.* import com.littlekt.graphics.g2d.tilemap.ldtk.LDtkWorld import com.littlekt.graphics.g2d.tilemap.tiled.TiledMap -import com.littlekt.graphics.webgpu.TextureFormat import com.littlekt.math.MutableVec4i import com.littlekt.util.internal.unquote +import io.ygdrasil.wgpu.TextureFormat import kotlin.math.max /** @@ -308,9 +308,8 @@ expect suspend fun VfsFile.readPixmap(): Pixmap * @return the loaded texture */ expect suspend fun VfsFile.readTexture( - preferredFormat: TextureFormat = - if (vfs.context.graphics.preferredFormat.srgb) TextureFormat.RGBA8_UNORM_SRGB - else TextureFormat.RGBA8_UNORM + preferredFormat: TextureFormat = vfs.context.graphics.preferredFormat + ): Texture /** diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt index 8fe1b06fa..365dbe581 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt @@ -1,7 +1,18 @@ package com.littlekt.graphics import com.littlekt.graphics.Texture.Companion.nextId -import com.littlekt.graphics.webgpu.* +import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.Sampler +import io.ygdrasil.wgpu.SamplerDescriptor +import io.ygdrasil.wgpu.Size3D +import io.ygdrasil.wgpu.TextureDescriptor +import io.ygdrasil.wgpu.TextureDimension +import io.ygdrasil.wgpu.TextureFormat +import io.ygdrasil.wgpu.TextureUsage +import io.ygdrasil.wgpu.TextureView +import io.ygdrasil.wgpu.TextureViewDescriptor + +import io.ygdrasil.wgpu.Texture as WebGPUTexture /** * A [Texture] that doesn't contain any underlying raw image data, but instead, is intended to be @@ -19,7 +30,7 @@ class EmptyTexture(val device: Device, preferredFormat: TextureFormat, width: In * The [Extent3D] size of the texture. Uses the initial width & height from the constructor and * a depth of `1`. */ - override var size: Extent3D = Extent3D(width, height, 1) + override var size: Size3D = Size3D(width, height, 1) private set override var id: Int = nextId() @@ -29,16 +40,13 @@ class EmptyTexture(val device: Device, preferredFormat: TextureFormat, width: In override var textureDescriptor: TextureDescriptor = TextureDescriptor( size, - 1, - 1, - TextureDimension.D2, preferredFormat, - TextureUsage.TEXTURE or TextureUsage.RENDER_ATTACHMENT + setOf(TextureUsage.texturebinding, TextureUsage.renderattachment) ) set(value) { field = value val textureToDestroy = gpuTexture - textureToDestroy.release() + textureToDestroy.close() gpuTexture = device.createTexture(field) } @@ -46,7 +54,7 @@ class EmptyTexture(val device: Device, preferredFormat: TextureFormat, width: In override var gpuTexture: WebGPUTexture = device.createTexture(textureDescriptor) set(value) { field = value - view.release() + view.close() view = field.createView(textureViewDescriptor) } @@ -54,7 +62,7 @@ class EmptyTexture(val device: Device, preferredFormat: TextureFormat, width: In override var textureViewDescriptor: TextureViewDescriptor? = null set(value) { field = value - view.release() + view.close() view = gpuTexture.createView(value) } @@ -71,7 +79,7 @@ class EmptyTexture(val device: Device, preferredFormat: TextureFormat, width: In override var samplerDescriptor: SamplerDescriptor = SamplerDescriptor() set(value) { field = value - sampler.release() + sampler.close() sampler = device.createSampler(value) } @@ -89,7 +97,7 @@ class EmptyTexture(val device: Device, preferredFormat: TextureFormat, width: In * creating a whole new one. */ fun resize(width: Int, height: Int) { - size = Extent3D(width, height, 1) + size = Size3D(width, height, 1) textureDescriptor = textureDescriptor.copy(size = size) } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMesh.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMesh.kt index 466b5045c..218231f3f 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMesh.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMesh.kt @@ -2,7 +2,7 @@ package com.littlekt.graphics import com.littlekt.graphics.util.IndexedMeshGeometry import com.littlekt.graphics.webgpu.BufferUsage -import com.littlekt.graphics.webgpu.Device +import io.ygdrasil.wgpu.Device import kotlin.math.min /** diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt index 29435bc97..c6c14ce49 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt @@ -3,9 +3,9 @@ package com.littlekt.graphics import com.littlekt.ContextListener import com.littlekt.graphics.util.CommonIndexedMeshBuilder import com.littlekt.graphics.util.CommonIndexedMeshGeometry -import com.littlekt.graphics.webgpu.Device import com.littlekt.graphics.webgpu.VertexFormat import com.littlekt.graphics.webgpu.VertexStepMode +import io.ygdrasil.wgpu.Device /** Creates a new indexed mesh using the list of [VertexAttribute]. */ inline fun indexedMesh( diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt index bf43b2dff..007d34fca 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt @@ -2,9 +2,9 @@ package com.littlekt.graphics import com.littlekt.ContextListener import com.littlekt.graphics.util.CommonMeshGeometry -import com.littlekt.graphics.webgpu.Device import com.littlekt.graphics.webgpu.VertexFormat import com.littlekt.graphics.webgpu.VertexStepMode +import io.ygdrasil.wgpu.Device /** * Creates a new mesh using the list of [VertexAttribute]. diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapExt.kt index c243f5189..14c414767 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapExt.kt @@ -1,9 +1,9 @@ package com.littlekt.graphics import com.littlekt.graphics.g2d.TextureSlice -import com.littlekt.graphics.webgpu.Device -import com.littlekt.graphics.webgpu.TextureFormat import com.littlekt.math.nextPowerOfTwo +import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.TextureFormat import kotlin.math.ceil import kotlin.math.sqrt diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt index 4232f64f6..e0b510ccf 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt @@ -1,7 +1,17 @@ package com.littlekt.graphics import com.littlekt.graphics.Texture.Companion.nextId -import com.littlekt.graphics.webgpu.* +import io.ygdrasil.wgpu.Texture as WebGPUTexture +import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.Sampler +import io.ygdrasil.wgpu.SamplerDescriptor +import io.ygdrasil.wgpu.Size3D +import io.ygdrasil.wgpu.TextureDescriptor +import io.ygdrasil.wgpu.TextureDimension +import io.ygdrasil.wgpu.TextureFormat +import io.ygdrasil.wgpu.TextureUsage +import io.ygdrasil.wgpu.TextureView +import io.ygdrasil.wgpu.TextureViewDescriptor /** * A [Texture] that uses a [Pixmap] as the underlying data. @@ -17,7 +27,7 @@ class PixmapTexture(val device: Device, preferredFormat: TextureFormat, val pixm /** * The [Extent3D] size of the texture. Uses [Pixmap.width], [Pixmap.height] and a depth of `1`. */ - override val size: Extent3D = Extent3D(pixmap.width, pixmap.height, 1) + override val size: Size3D = Size3D(pixmap.width, pixmap.height, 1) override var id: Int = nextId() private set @@ -26,16 +36,16 @@ class PixmapTexture(val device: Device, preferredFormat: TextureFormat, val pixm size, 1, 1, - TextureDimension.D2, + TextureDimension._2d, preferredFormat, - TextureUsage.TEXTURE or TextureUsage.COPY_DST + TextureUsage.texturebinding or TextureUsage.copydst ) set(value) { field = value val textureToDestroy = gpuTexture val viewToDestroy = view - viewToDestroy.release() - textureToDestroy.release() + viewToDestroy.close() + textureToDestroy.close() gpuTexture = device.createTexture(textureDescriptor) } @@ -50,7 +60,7 @@ class PixmapTexture(val device: Device, preferredFormat: TextureFormat, val pixm override var textureViewDescriptor: TextureViewDescriptor? = null set(value) { field = value - view.release() + view.close() view = gpuTexture.createView(value) } @@ -65,7 +75,7 @@ class PixmapTexture(val device: Device, preferredFormat: TextureFormat, val pixm override var samplerDescriptor: SamplerDescriptor = SamplerDescriptor() set(value) { field = value - sampler.release() + sampler.close() sampler = device.createSampler(value) } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/Texture.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/Texture.kt index 1db73881b..9cd4abde8 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/Texture.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/Texture.kt @@ -1,7 +1,13 @@ package com.littlekt.graphics import com.littlekt.Releasable -import com.littlekt.graphics.webgpu.* +import io.ygdrasil.wgpu.Sampler +import io.ygdrasil.wgpu.SamplerDescriptor +import io.ygdrasil.wgpu.Size3D +import io.ygdrasil.wgpu.TextureDescriptor +import io.ygdrasil.wgpu.TextureView +import io.ygdrasil.wgpu.TextureViewDescriptor +import io.ygdrasil.wgpu.Texture as WebGPUTexture import kotlinx.atomicfu.atomic /** @@ -17,7 +23,7 @@ interface Texture : Releasable { * The [Extent3D] size of the texture. Usually, the width & height of the image with a depth of * `1`. */ - val size: Extent3D + val size: Size3D /** The width of the texture. */ val width: Int @@ -61,10 +67,10 @@ interface Texture : Releasable { fun writeDataToBuffer() override fun release() { - view.release() - sampler.release() + view.close() + sampler.close() // destroy after any update/postUpdate calls to ensure we aren't in the middle of a pass! - gpuTexture.release() + gpuTexture.close() } companion object { diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/TextureExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/TextureExt.kt index ddb3342a2..b9d1edfdf 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/TextureExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/TextureExt.kt @@ -1,7 +1,7 @@ package com.littlekt.graphics import com.littlekt.graphics.g2d.TextureSlice -import com.littlekt.graphics.webgpu.Device +import io.ygdrasil.wgpu.Device /** Creates a new [TextureSlice] that encompasses the entire [Texture]. */ fun Texture.slice(): TextureSlice = TextureSlice(this) diff --git a/core/src/commonMain/kotlin/com/littlekt/resources/internal/InternalResources.kt b/core/src/commonMain/kotlin/com/littlekt/resources/internal/InternalResources.kt index 59d1ca1d9..cb9fb61a6 100644 --- a/core/src/commonMain/kotlin/com/littlekt/resources/internal/InternalResources.kt +++ b/core/src/commonMain/kotlin/com/littlekt/resources/internal/InternalResources.kt @@ -12,7 +12,6 @@ import com.littlekt.graphics.g2d.font.BitmapFont import com.littlekt.graphics.g2d.font.FontMetrics import com.littlekt.graphics.g2d.font.Kerning import com.littlekt.graphics.slice -import com.littlekt.graphics.webgpu.TextureFormat import com.littlekt.math.MutableVec4i import com.littlekt.util.MutableTextureAtlas import com.littlekt.util.internal.SingletonBase @@ -45,14 +44,11 @@ internal class InternalResources private constructor(private val context: Contex lateinit var transparent: TextureSlice suspend fun load() { - val textureFormat = - if (context.graphics.preferredFormat.srgb) TextureFormat.RGBA8_UNORM_SRGB - else TextureFormat.RGBA8_UNORM + val textureFormat = context.graphics.preferredFormat val device = context.graphics.device - val page = - context.vfsUrl.json.decodeFromString( - defaultTilesJson.decodeFromBase64().decodeToString() - ) + val page = context.vfsUrl.json.decodeFromString( + defaultTilesJson.decodeFromBase64().decodeToString() + ) val info = AtlasInfo(page.meta, listOf(page)) val tilesTexture = PixmapTexture(device, textureFormat, defaultTilesBmp.decodeFromBase64().readPixmap()) @@ -147,11 +143,13 @@ internal class InternalResources private constructor(private val context: Contex ) } } + line.startsWith("common ") -> { lineHeight = map["lineHeight"]?.toFloatOrNull() ?: 16f base = map["base"]?.toFloatOrNull() pages = map["pages"]?.toIntOrNull() ?: 1 } + line.startsWith("char ") -> { val page = map["page"]?.toIntOrNull() ?: 0 val texture = textures[page] ?: textures.values.first() @@ -172,13 +170,13 @@ internal class InternalResources private constructor(private val context: Contex fontSize = fontSize, id = id, slice = - TextureSlice( - texture, - map["x"]?.toIntOrNull() ?: 0, - map["y"]?.toIntOrNull() ?: 0, - width, - height - ), + TextureSlice( + texture, + map["x"]?.toIntOrNull() ?: 0, + map["y"]?.toIntOrNull() ?: 0, + width, + height + ), xoffset = map["xoffset"]?.toIntOrNull() ?: 0, yoffset = -(height + (map["yoffset"]?.toIntOrNull() ?: 0)), width = width, @@ -187,6 +185,7 @@ internal class InternalResources private constructor(private val context: Contex page = page ) } + line.startsWith("kerning ") -> { kernings += Kerning( diff --git a/core/src/commonMain/kotlin/com/littlekt/util/MutableTextureAtlas.kt b/core/src/commonMain/kotlin/com/littlekt/util/MutableTextureAtlas.kt index ed34ba6bb..8363cee51 100644 --- a/core/src/commonMain/kotlin/com/littlekt/util/MutableTextureAtlas.kt +++ b/core/src/commonMain/kotlin/com/littlekt/util/MutableTextureAtlas.kt @@ -9,10 +9,10 @@ import com.littlekt.graphics.Texture import com.littlekt.graphics.drawSlice import com.littlekt.graphics.g2d.TextureAtlas import com.littlekt.graphics.g2d.TextureSlice -import com.littlekt.graphics.webgpu.TextureFormat import com.littlekt.util.packer.BinRect import com.littlekt.util.packer.MaxRectsPacker import com.littlekt.util.packer.PackingOptions +import io.ygdrasil.wgpu.TextureFormat /** * Allows building of a [TextureAtlas] by combining existing textures, texture slices, and texture @@ -65,9 +65,7 @@ class MutableTextureAtlas(val context: Context, options: PackingOptions = Packin } fun toImmutable( - format: TextureFormat = - if (context.graphics.preferredFormat.srgb) TextureFormat.RGBA8_UNORM_SRGB - else TextureFormat.RGBA8_UNORM, + format: TextureFormat = context.graphics.preferredFormat, useMiMaps: Boolean = true ): TextureAtlas { packer.add(entries) diff --git a/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt b/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt index ff6ea6d94..f998c2dcd 100644 --- a/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt +++ b/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt @@ -2,21 +2,18 @@ package com.littlekt import com.littlekt.graphics.Cursor import com.littlekt.graphics.SystemCursor -import com.littlekt.graphics.webgpu.Adapter -import com.littlekt.graphics.webgpu.AlphaMode -import com.littlekt.graphics.webgpu.Device -import com.littlekt.graphics.webgpu.GPU -import com.littlekt.graphics.webgpu.GPUAdapter -import com.littlekt.graphics.webgpu.GPUCanvasContext -import com.littlekt.graphics.webgpu.GPUDevice -import com.littlekt.graphics.webgpu.PresentMode -import com.littlekt.graphics.webgpu.Surface -import com.littlekt.graphics.webgpu.SurfaceCapabilities -import com.littlekt.graphics.webgpu.SurfaceConfiguration -import com.littlekt.graphics.webgpu.TextureFormat -import com.littlekt.graphics.webgpu.TextureUsage -import com.littlekt.util.internal.jsObject -import kotlinx.browser.window +import io.ygdrasil.wgpu.Adapter +import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.Surface +import io.ygdrasil.wgpu.requestAdapter +import io.ygdrasil.wgpu.TextureFormat +import io.ygdrasil.wgpu.TextureUsage +import io.ygdrasil.wgpu.CanvasConfiguration +import io.ygdrasil.wgpu.CompositeAlphaMode +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.getSurface +import kotlinx.coroutines.GlobalScope +import kotlinx.coroutines.async import org.w3c.dom.Element import org.w3c.dom.HTMLCanvasElement import org.w3c.dom.events.Event @@ -31,9 +28,10 @@ class WebGPUGraphics(val canvas: HTMLCanvasElement) : Graphics { internal var _width: Int = 0 internal var _height: Int = 0 - private val canvasContext = - canvas.getContext("webgpu").unsafeCast() - ?: error("WebGPU context required") + override lateinit var adapter: Adapter + override lateinit var device: Device + override val surface: Surface = canvas.getSurface() ?: error("fail to get context") + override val preferredFormat: TextureFormat = surface.preferredCanvasFormat ?: error("fail to get preferredCanvasFormat") init { // suppress context menu @@ -42,6 +40,11 @@ class WebGPUGraphics(val canvas: HTMLCanvasElement) : Graphics { _width = canvas.clientWidth _height = canvas.clientHeight + + GlobalScope.async { + adapter = requestAdapter() ?: error("No appropriate Adapter found.") + device = adapter.requestDevice() ?: error("No appropriate Device found.") + }.onAwait } override val width: Int @@ -56,27 +59,14 @@ class WebGPUGraphics(val canvas: HTMLCanvasElement) : Graphics { override val backBufferHeight: Int get() = height - override val surface: Surface = - Surface(window.navigator.asDynamic().gpu.unsafeCast(), canvasContext) - - override var adapter: Adapter = Adapter(jsObject().unsafeCast()) - - override var device: Device = Device(jsObject().unsafeCast()) - - override val preferredFormat: TextureFormat by lazy { surface.getPreferredFormat(adapter) } - - override val surfaceCapabilities: SurfaceCapabilities by lazy { - surface.getCapabilities(adapter) - } - override fun configureSurface( - usage: TextureUsage, + usages: Set, format: TextureFormat, presentMode: PresentMode, - alphaMode: AlphaMode + alphaMode: CompositeAlphaMode ) { surface.configure( - SurfaceConfiguration(device, usage, format, presentMode, alphaMode, width, height) + CanvasConfiguration(device, format,usages, alphaMode = alphaMode) ) } diff --git a/core/src/jsMain/kotlin/com/littlekt/file/vfs/VfsLoaders.js.kt b/core/src/jsMain/kotlin/com/littlekt/file/vfs/VfsLoaders.js.kt index de3b527a3..fd1a71101 100644 --- a/core/src/jsMain/kotlin/com/littlekt/file/vfs/VfsLoaders.js.kt +++ b/core/src/jsMain/kotlin/com/littlekt/file/vfs/VfsLoaders.js.kt @@ -9,7 +9,7 @@ import com.littlekt.file.ByteBufferImpl import com.littlekt.graphics.Pixmap import com.littlekt.graphics.PixmapTexture import com.littlekt.graphics.Texture -import com.littlekt.graphics.webgpu.TextureFormat +import io.ygdrasil.wgpu.TextureFormat import kotlinx.browser.document import kotlinx.coroutines.CompletableDeferred import org.w3c.dom.* diff --git a/core/src/jvmMain/kotlin/com/littlekt/file/vfs/VfsLoaders.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/file/vfs/VfsLoaders.jvm.kt index acea617c8..0a677edd3 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/file/vfs/VfsLoaders.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/file/vfs/VfsLoaders.jvm.kt @@ -11,7 +11,6 @@ import com.littlekt.file.JvmByteSequenceStream import com.littlekt.graphics.Pixmap import com.littlekt.graphics.PixmapTexture import com.littlekt.graphics.Texture -import com.littlekt.graphics.webgpu.TextureFormat import com.littlekt.log.Logger import fr.delthas.javamp3.Sound import java.io.ByteArrayInputStream diff --git a/examples/build.gradle.kts b/examples/build.gradle.kts index 8000b1d03..052df18e5 100644 --- a/examples/build.gradle.kts +++ b/examples/build.gradle.kts @@ -83,7 +83,6 @@ kotlin { sourceSets { val commonMain by getting { dependencies { - implementation(libs.wgpu4k) implementation(libs.kotlinx.coroutines.core) implementation(project(":core")) implementation(project(":scene-graph")) diff --git a/extensions/gradle/texturepacker/build.gradle.kts b/extensions/gradle/texturepacker/build.gradle.kts index a6769ce51..33d06734d 100644 --- a/extensions/gradle/texturepacker/build.gradle.kts +++ b/extensions/gradle/texturepacker/build.gradle.kts @@ -13,8 +13,6 @@ version = littleKtVersion java { withSourcesJar() } -repositories { gradlePluginPortal() } - dependencies { implementation(kotlin("gradle-plugin")) implementation(project(":extensions:tools")) { diff --git a/extensions/tools/build.gradle.kts b/extensions/tools/build.gradle.kts index 09cda4ae2..9cc4e9c64 100644 --- a/extensions/tools/build.gradle.kts +++ b/extensions/tools/build.gradle.kts @@ -7,8 +7,6 @@ plugins { id("module.publication") } -repositories { mavenCentral() } - kotlin { jvm { compilations.all { kotlinOptions.jvmTarget = "11" } From 0504cee577d20be1ae95a65dc4e0947a85f723fc Mon Sep 17 00:00:00 2001 From: Alexandre Mommers Date: Sun, 22 Sep 2024 23:41:02 +0200 Subject: [PATCH 04/22] Switch to ygdrasil.wgpu library and code adjustments Replaced the webgpu library with ygdrasil.wgpu and made necessary adjustments to accommodate the new library's API. This includes updating import statements, method calls, and fixing code formatting issues to ensure compatibility and improve readability. --- core/build.gradle.kts | 2 +- .../com/littlekt/graphics/IndexedMesh.kt | 31 ++- .../kotlin/com/littlekt/graphics/Mesh.kt | 20 +- .../com/littlekt/graphics/PixmapTexture.kt | 5 +- .../kotlin/com/littlekt/graphics/WebgpuExt.kt | 38 ++++ .../com/littlekt/graphics/g2d/NinePatch.kt | 6 +- .../com/littlekt/graphics/g2d/SpriteBatch.kt | 53 ++--- .../graphics/g2d/SpriteCacheShader.kt | 27 +-- .../com/littlekt/graphics/shader/Shader.kt | 12 +- .../littlekt/graphics/shader/SpriteShader.kt | 14 +- ...derSpriteBatchAndMultipleShadersExample.kt | 2 +- settings.gradle.kts | 1 + .../src/main/java/com/littlekt/wgpu/WGPU.java | 197 ------------------ 13 files changed, 124 insertions(+), 284 deletions(-) create mode 100644 core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt diff --git a/core/build.gradle.kts b/core/build.gradle.kts index ff98c1143..1a01fabc9 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -38,7 +38,7 @@ kotlin { sourceSets { val commonMain by getting { dependencies { - implementation(libs.wgpu4k) + api(libs.wgpu4k) implementation(libs.kotlinx.atomicfu) implementation(libs.kotlinx.coroutines.core) implementation(libs.kotlinx.serialization.json) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMesh.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMesh.kt index 218231f3f..e6a02bf3b 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMesh.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMesh.kt @@ -1,7 +1,7 @@ package com.littlekt.graphics import com.littlekt.graphics.util.IndexedMeshGeometry -import com.littlekt.graphics.webgpu.BufferUsage +import io.ygdrasil.wgpu.BufferUsage import io.ygdrasil.wgpu.Device import kotlin.math.min @@ -18,11 +18,10 @@ class IndexedMesh(device: Device, geometry: T) : Mesh(device, geometry) { /** The GPU index buffer for this mesh, if created. */ - var ibo = - device.createGPUShortBuffer( + var ibo = device.createGPUShortBuffer( "ibo", geometry.indices.toArray(), - BufferUsage.INDEX or BufferUsage.COPY_DST + setOf(BufferUsage.index, BufferUsage.copydst) ) private set @@ -38,13 +37,12 @@ class IndexedMesh(device: Device, geometry: T) : logger.trace { "Destroying and creating VBO from size: ${vbo.size} to size: ${geometry.vertices.capacity}" } - vbo.destroy() - vbo.release() + vbo.close() vbo = device.createGPUFloatBuffer( "vbo", geometry.vertices.toArray(), - BufferUsage.VERTEX or BufferUsage.COPY_DST + setOf(BufferUsage.vertex,BufferUsage.copydst) ) // need to remake ibo because indices won't correspond correctly to the new // vertices @@ -54,10 +52,10 @@ class IndexedMesh(device: Device, geometry: T) : min( vbo.size / Float.SIZE_BYTES, geometry.numVertices * - geometry.layout.attributes.calculateComponents().toLong() + geometry.layout.attributes.calculateComponents().toLong() ) logger.trace { "Writing VBO to queue of size: $size" } - device.queue.writeBuffer(vbo, geometry.vertices, size = size) + device.queue.writeBuffer(vbo, 0L, geometry.vertices.toArray(), size = size) } } if (geometry.indicesDirty) { @@ -66,7 +64,7 @@ class IndexedMesh(device: Device, geometry: T) : } else { val size = min(ibo.size / Short.SIZE_BYTES, geometry.indices.limit.toLong()) logger.trace { "Writing IBO to queue of size: $size" } - device.queue.writeBuffer(ibo, geometry.indices, size = size) + device.queue.writeBuffer(ibo, 0L, geometry.indices.toArray(), size) } geometry.indicesDirty = false } @@ -75,8 +73,8 @@ class IndexedMesh(device: Device, geometry: T) : private fun destroyAndRecreateIbo() { logger.trace { "Destroy and recreating IBO." } - ibo.destroy() - ibo.release() + ibo.close() + ibo.close() if (geometry.indicesType == IndexedMeshGeometry.IndicesType.QUAD) { logger.trace { "Regenerating indices as quads." } geometry.indicesAsQuad() @@ -89,14 +87,13 @@ class IndexedMesh(device: Device, geometry: T) : device.createGPUShortBuffer( "ibo", geometry.indices.toArray(), - BufferUsage.INDEX or BufferUsage.COPY_DST + setOf( BufferUsage.index, BufferUsage.copydst) ) } override fun release() { - vbo.destroy() - ibo.destroy() - vbo.release() - ibo.release() + ibo.close() + vbo.close() + ibo.close() } } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/Mesh.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/Mesh.kt index 6f161fe0e..466803a94 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/Mesh.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/Mesh.kt @@ -2,10 +2,10 @@ package com.littlekt.graphics import com.littlekt.Releasable import com.littlekt.graphics.util.MeshGeometry -import com.littlekt.graphics.webgpu.BufferUsage -import com.littlekt.graphics.webgpu.Device -import com.littlekt.graphics.webgpu.GPUBuffer +import io.ygdrasil.wgpu.Device import com.littlekt.log.Logger +import io.ygdrasil.wgpu.Buffer +import io.ygdrasil.wgpu.BufferUsage import kotlin.jvm.JvmStatic import kotlin.math.min @@ -22,11 +22,11 @@ import kotlin.math.min open class Mesh(val device: Device, val geometry: T) : Releasable { /** The GPU Vertex buffer for this mesh. */ - var vbo: GPUBuffer = + var vbo: Buffer = device.createGPUFloatBuffer( "vbo", geometry.vertices.toArray(), - BufferUsage.VERTEX or BufferUsage.COPY_DST + setOf(BufferUsage.vertex, BufferUsage.copydst) ) protected set @@ -42,13 +42,12 @@ open class Mesh(val device: Device, val geometry: T) : Releasa logger.trace { "Destroying and creating VBO from size: ${vbo.size} to size: ${geometry.vertices.capacity}" } - vbo.destroy() - vbo.release() + vbo.close() vbo = device.createGPUFloatBuffer( "vbo", geometry.vertices.toArray(), - BufferUsage.VERTEX or BufferUsage.COPY_DST + setOf(BufferUsage.vertex, BufferUsage.copydst) ) } else { val size = @@ -58,7 +57,7 @@ open class Mesh(val device: Device, val geometry: T) : Releasa geometry.layout.attributes.calculateComponents().toLong() ) logger.trace { "Writing VBO to queue of size: $size" } - device.queue.writeBuffer(vbo, geometry.vertices, size = size) + device.queue.writeBuffer(vbo, 0L, geometry.vertices.toArray(), size = size) } } } @@ -70,8 +69,7 @@ open class Mesh(val device: Device, val geometry: T) : Releasa } override fun release() { - vbo.destroy() - vbo.release() + vbo.close() } companion object { diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt index e0b510ccf..c0d72cd84 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt @@ -34,11 +34,8 @@ class PixmapTexture(val device: Device, preferredFormat: TextureFormat, val pixm override var textureDescriptor: TextureDescriptor = TextureDescriptor( size, - 1, - 1, - TextureDimension._2d, preferredFormat, - TextureUsage.texturebinding or TextureUsage.copydst + setOf(TextureUsage.texturebinding, TextureUsage.copydst) ) set(value) { field = value diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt new file mode 100644 index 000000000..193afd995 --- /dev/null +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt @@ -0,0 +1,38 @@ +package com.littlekt.graphics + +import io.ygdrasil.wgpu.Buffer +import io.ygdrasil.wgpu.BufferDescriptor +import io.ygdrasil.wgpu.BufferUsage +import io.ygdrasil.wgpu.Device + + +internal fun Device.createGPUShortBuffer(label: String, data: ShortArray, usages: Set): Buffer { + val buffer = createBuffer( + BufferDescriptor( + label = label, + size = data.size.toLong() * Short.SIZE_BYTES, + usage = usages, + mappedAtCreation = true + ) + ) + buffer.mapFrom(data) + buffer.unmap() + + return buffer +} + + +internal fun Device.createGPUFloatBuffer(label: String, data: FloatArray, usages: Set): Buffer { + val buffer = createBuffer( + BufferDescriptor( + label = label, + size = data.size.toLong() * Short.SIZE_BYTES, + usage = usages, + mappedAtCreation = true + ) + ) + buffer.mapFrom(data) + buffer.unmap() + + return buffer +} diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/NinePatch.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/NinePatch.kt index 58d24aef9..07a7d9ba5 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/NinePatch.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/NinePatch.kt @@ -3,11 +3,11 @@ package com.littlekt.graphics.g2d import com.littlekt.graphics.Color import com.littlekt.graphics.Texture import com.littlekt.graphics.slice -import com.littlekt.graphics.webgpu.FilterMode import com.littlekt.math.geom.Angle import com.littlekt.math.geom.cosine import com.littlekt.math.geom.sine import com.littlekt.util.datastructure.FloatArrayList +import io.ygdrasil.wgpu.FilterMode import kotlin.math.max import kotlin.math.min @@ -439,8 +439,8 @@ class NinePatch( // filtering is used for the texture. This nudges the texture coordinate to the center // of the texel where the neighboring pixel has 0% contribution in linear blending mode. if ( - slice.texture.samplerDescriptor.magFilter == FilterMode.LINEAR || - slice.texture.samplerDescriptor.minFilter == FilterMode.LINEAR + slice.texture.samplerDescriptor.magFilter == FilterMode.linear || + slice.texture.samplerDescriptor.minFilter == FilterMode.linear ) { if (stretchW) { val halfTexelWidth = 0.5f * 1f / slice.texture.width diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt index 79f7f2e42..7361c9de6 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt @@ -9,7 +9,6 @@ import com.littlekt.graphics.shader.Shader import com.littlekt.graphics.shader.SpriteShader import com.littlekt.graphics.textureIndexedMesh import com.littlekt.graphics.util.CommonIndexedMeshGeometry -import com.littlekt.graphics.webgpu.* import com.littlekt.log.Logger import com.littlekt.math.Mat4 import com.littlekt.math.geom.Angle @@ -20,6 +19,9 @@ import com.littlekt.math.isFuzzyZero import com.littlekt.util.LazyMat4 import com.littlekt.util.datastructure.fastForEach import com.littlekt.util.datastructure.pool +import io.ygdrasil.wgpu.* +import io.ygdrasil.wgpu.RenderPipelineDescriptor.* +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState /** * Draws batched quads using indices. @@ -107,9 +109,9 @@ class SpriteBatch( private val renderPipelineByBlendState: MutableMap = mutableMapOf( RenderInfo(shader, blendState) to - device.createRenderPipeline( - createRenderPipelineDescriptor(RenderInfo(shader, blendState)) - ) + device.createRenderPipeline( + createRenderPipelineDescriptor(RenderInfo(shader, blendState)) + ) ) private val spriteIndices = mutableMapOf(lastMeshIdx to 0) @@ -566,7 +568,7 @@ class SpriteBatch( if (spriteIdx == 0) return mesh.update() - renderPassEncoder.setIndexBuffer(mesh.ibo, IndexFormat.UINT16) + renderPassEncoder.setIndexBuffer(mesh.ibo, IndexFormat.uint16) renderPassEncoder.setVertexBuffer(0, mesh.vbo) var lastPipelineSet: RenderPipeline? = null var lastCombinedMatrixSet: Mat4? = null @@ -606,8 +608,8 @@ class SpriteBatch( } if ( lastBindGroupsSet != bindGroups || - lastShader != shader || - lastCombinedMatrixSet != drawCall.combinedMatrix + lastShader != shader || + lastCombinedMatrixSet != drawCall.combinedMatrix ) { lastBindGroupsSet = bindGroups lastDynamicMeshOffsets[0] = @@ -721,27 +723,28 @@ class SpriteBatch( val (shader, blendState) = renderInfo return RenderPipelineDescriptor( layout = shader.pipelineLayout, - vertex = - VertexState( - module = shader.shaderModule, - entryPoint = shader.vertexEntryPoint, - mesh.geometry.layout.gpuVertexBufferLayout - ), + vertex = VertexState( + module = shader.shaderModule, + entryPoint = shader.vertexEntryPoint, + mesh.geometry.layout.gpuVertexBufferLayout + ), fragment = - FragmentState( - module = shader.shaderModule, - entryPoint = shader.fragmentEntryPoint, - target = - ColorTargetState( - format = format, - blendState = blendState, - writeMask = ColorWriteMask.ALL - ) - ), - primitive = PrimitiveState(topology = PrimitiveTopology.TRIANGLE_LIST), + FragmentState( + module = shader.shaderModule, + entryPoint = shader.fragmentEntryPoint, + targets = listOf + ( + ColorTargetState( + format = format, + blend = blendState, + writeMask = ColorWriteMask.all + ) + ) + ), + primitive = PrimitiveState(topology = PrimitiveTopology.trianglelist), depthStencil = null, multisample = - MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) + MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) ) } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt index e1bca9937..d10bc1e4e 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt @@ -3,8 +3,11 @@ package com.littlekt.graphics.g2d import com.littlekt.file.FloatBuffer import com.littlekt.graphics.Texture import com.littlekt.graphics.shader.SpriteShader -import com.littlekt.graphics.webgpu.* +import com.littlekt.graphics.webgpu.TextureBindingLayout import com.littlekt.log.Logger +import io.ygdrasil.wgpu.* +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.BufferBindingLayout import kotlin.math.min /** @@ -149,31 +152,31 @@ class SpriteCacheShader( listOf( BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry( + Entry( 0, - ShaderStage.VERTEX, + ShaderStage.vertex, BufferBindingLayout( - type = BufferBindingType.UNIFORM, + type = BufferBindingType.uniform, hasDynamicOffset = true, minBindingSize = Float.SIZE_BYTES * 16L ) ), - BindGroupLayoutEntry( + Entry( 1, - ShaderStage.VERTEX, - BufferBindingLayout(type = BufferBindingType.READ_ONLY_STORAGE) + ShaderStage.vertex, + BufferBindingLayout(type = BufferBindingType.readonlystorage) ), - BindGroupLayoutEntry( + Entry( 2, - ShaderStage.VERTEX, - BufferBindingLayout(type = BufferBindingType.READ_ONLY_STORAGE) + ShaderStage.vertex, + BufferBindingLayout(type = BufferBindingType.readonlystorage) ) ) ), BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry(0, ShaderStage.FRAGMENT, TextureBindingLayout()), - BindGroupLayoutEntry(1, ShaderStage.FRAGMENT, SamplerBindingLayout()) + Entry(0, setOf(ShaderStage.fragment), TextureBindingLayout()), + Entry(1, setOf(ShaderStage.fragment), Entry.SamplerBindingLayout()) ) ) ) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/shader/Shader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/shader/Shader.kt index cca6c12ce..13746c721 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/shader/Shader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/shader/Shader.kt @@ -1,8 +1,8 @@ package com.littlekt.graphics.shader import com.littlekt.Releasable -import com.littlekt.graphics.webgpu.* import com.littlekt.util.datastructure.fastForEach +import io.ygdrasil.wgpu.* /** * A base shader class to handle creating and customizing the required bind groups without the need @@ -28,7 +28,7 @@ open class Shader( val id: Int = lastId++ /** The [ShaderModule]/ */ - val shaderModule = device.createShaderModule(src) + val shaderModule = device.createShaderModule(ShaderModuleDescriptor(src)) /** The list of [BindGroupLayout]s described by the layout */ val layouts = layout.map { device.createBindGroupLayout(it) } @@ -96,10 +96,10 @@ open class Shader( ) = Unit override fun release() { - shaderModule.release() - layouts.fastForEach { it.release() } - pipelineLayout.release() - bindGroups.forEach { it.release() } + shaderModule.close() + layouts.fastForEach { it.close() } + pipelineLayout.close() + bindGroups.forEach { it.close() } bindGroups.clear() } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt index 2b49a96b0..84cca280c 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt @@ -2,9 +2,9 @@ package com.littlekt.graphics.shader import com.littlekt.file.FloatBuffer import com.littlekt.graphics.Texture -import com.littlekt.graphics.webgpu.* import com.littlekt.math.Mat4 import com.littlekt.util.align +import io.ygdrasil.wgpu.* /** * A base shader class to handle creating a camera uniform [GPUBuffer] and expecting a texture to @@ -37,15 +37,15 @@ abstract class SpriteShader( val buffer = device.createBuffer( BufferDescriptor( - "viewProj", - (Float.SIZE_BYTES * 16) + label = "viewProj", + size = (Float.SIZE_BYTES * 16) .align(device.limits.minUniformBufferOffsetAlignment) .toLong() * cameraDynamicSize, - BufferUsage.UNIFORM or BufferUsage.COPY_DST, - true + usage = setOf(BufferUsage.uniform, BufferUsage.copydst), + mappedAtCreation = true ) ) - buffer.getMappedRange().putFloat(camFloatBuffer.toArray()) + buffer.mapFrom(camFloatBuffer.toArray()) buffer.unmap() buffer @@ -119,7 +119,7 @@ abstract class SpriteShader( override fun release() { super.release() - cameraUniformBuffer.release() + cameraUniformBuffer.close() } companion object { diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt index 02bb3aa94..cbc6643f6 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt @@ -7,7 +7,7 @@ import com.littlekt.graphics.Color import com.littlekt.graphics.Texture import com.littlekt.graphics.g2d.SpriteBatch import com.littlekt.graphics.shader.SpriteShader -import com.littlekt.graphics.webgpu.* +import com.littlekt.graphics.webgpu.Device /** * An example showing a [SpriteBatch] drawing multiple textures and using different shaders to diff --git a/settings.gradle.kts b/settings.gradle.kts index ccfc8a3d3..8d7bc5075 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -11,6 +11,7 @@ plugins { id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0" dependencyResolutionManagement { repositories { + mavenLocal() google() mavenCentral() //wgpu4k snapshot & preview repository diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPU.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPU.java index 075bc68c5..2c35aa350 100644 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPU.java +++ b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPU.java @@ -4,13 +4,10 @@ import java.lang.invoke.*; import java.lang.foreign.*; -import java.nio.ByteOrder; import java.util.*; -import java.util.function.*; import java.util.stream.*; import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; public class WGPU { @@ -18,7 +15,6 @@ public class WGPU { // Should not be called directly } - static final Arena LIBRARY_ARENA = Arena.ofAuto(); static final boolean TRACE_DOWNCALLS = Boolean.getBoolean("jextract.trace.downcalls"); static void traceDowncall(String name, Object... args) { @@ -41,20 +37,6 @@ static MethodHandle upcallHandle(Class fi, String name, FunctionDescriptor fd } } - static MemoryLayout align(MemoryLayout layout, long align) { - return switch (layout) { - case PaddingLayout p -> p; - case ValueLayout v -> v.withByteAlignment(align); - case GroupLayout g -> { - MemoryLayout[] alignedMembers = g.memberLayouts().stream() - .map(m -> align(m, align)).toArray(MemoryLayout[]::new); - yield g instanceof StructLayout ? - MemoryLayout.structLayout(alignedMembers) : MemoryLayout.unionLayout(alignedMembers); - } - case SequenceLayout s -> MemoryLayout.sequenceLayout(s.elementCount(), align(s.elementLayout(), align)); - }; - } - static final SymbolLookup SYMBOL_LOOKUP = SymbolLookup.loaderLookup() .or(Linker.nativeLinker().defaultLookup()); @@ -67,116 +49,18 @@ static MemoryLayout align(MemoryLayout layout, long align) { public static final ValueLayout.OfDouble C_DOUBLE = ValueLayout.JAVA_DOUBLE; public static final AddressLayout C_POINTER = ValueLayout.ADDRESS .withTargetLayout(MemoryLayout.sequenceLayout(java.lang.Long.MAX_VALUE, JAVA_BYTE)); - public static final ValueLayout.OfInt C_LONG = ValueLayout.JAVA_INT; - public static final ValueLayout.OfDouble C_LONG_DOUBLE = ValueLayout.JAVA_DOUBLE; private static final int _VCRT_COMPILER_PREPROCESSOR = (int)1L; - /** - * {@snippet lang=c : - * #define _VCRT_COMPILER_PREPROCESSOR 1 - * } - */ - public static int _VCRT_COMPILER_PREPROCESSOR() { - return _VCRT_COMPILER_PREPROCESSOR; - } private static final int _SAL_VERSION = (int)20L; - /** - * {@snippet lang=c : - * #define _SAL_VERSION 20 - * } - */ - public static int _SAL_VERSION() { - return _SAL_VERSION; - } private static final int __SAL_H_VERSION = (int)180000000L; - /** - * {@snippet lang=c : - * #define __SAL_H_VERSION 180000000 - * } - */ - public static int __SAL_H_VERSION() { - return __SAL_H_VERSION; - } private static final int _USE_DECLSPECS_FOR_SAL = (int)0L; - /** - * {@snippet lang=c : - * #define _USE_DECLSPECS_FOR_SAL 0 - * } - */ - public static int _USE_DECLSPECS_FOR_SAL() { - return _USE_DECLSPECS_FOR_SAL; - } private static final int _USE_ATTRIBUTES_FOR_SAL = (int)0L; - /** - * {@snippet lang=c : - * #define _USE_ATTRIBUTES_FOR_SAL 0 - * } - */ - public static int _USE_ATTRIBUTES_FOR_SAL() { - return _USE_ATTRIBUTES_FOR_SAL; - } private static final int _CRT_PACKING = (int)8L; - /** - * {@snippet lang=c : - * #define _CRT_PACKING 8 - * } - */ - public static int _CRT_PACKING() { - return _CRT_PACKING; - } private static final int _HAS_EXCEPTIONS = (int)1L; - /** - * {@snippet lang=c : - * #define _HAS_EXCEPTIONS 1 - * } - */ - public static int _HAS_EXCEPTIONS() { - return _HAS_EXCEPTIONS; - } private static final int _HAS_CXX17 = (int)0L; - /** - * {@snippet lang=c : - * #define _HAS_CXX17 0 - * } - */ - public static int _HAS_CXX17() { - return _HAS_CXX17; - } private static final int _HAS_CXX20 = (int)0L; - /** - * {@snippet lang=c : - * #define _HAS_CXX20 0 - * } - */ - public static int _HAS_CXX20() { - return _HAS_CXX20; - } private static final int _HAS_NODISCARD = (int)0L; - /** - * {@snippet lang=c : - * #define _HAS_NODISCARD 0 - * } - */ - public static int _HAS_NODISCARD() { - return _HAS_NODISCARD; - } private static final int WCHAR_MIN = (int)0L; - /** - * {@snippet lang=c : - * #define WCHAR_MIN 0 - * } - */ - public static int WCHAR_MIN() { - return WCHAR_MIN; - } private static final int WCHAR_MAX = (int)65535L; - /** - * {@snippet lang=c : - * #define WCHAR_MAX 65535 - * } - */ - public static int WCHAR_MAX() { - return WCHAR_MAX; - } private static final int WINT_MIN = (int)0L; /** * {@snippet lang=c : @@ -187,14 +71,6 @@ public static int WINT_MIN() { return WINT_MIN; } private static final int WINT_MAX = (int)65535L; - /** - * {@snippet lang=c : - * #define WINT_MAX 65535 - * } - */ - public static int WINT_MAX() { - return WINT_MAX; - } /** * {@snippet lang=c : * typedef unsigned long long uintptr_t @@ -431,68 +307,11 @@ private static class __report_gsfailure { public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); } - /** - * Function descriptor for: - * {@snippet lang=c : - * void __report_gsfailure(uintptr_t _StackCookie) - * } - */ - public static FunctionDescriptor __report_gsfailure$descriptor() { - return __report_gsfailure.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void __report_gsfailure(uintptr_t _StackCookie) - * } - */ - public static MethodHandle __report_gsfailure$handle() { - return __report_gsfailure.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void __report_gsfailure(uintptr_t _StackCookie) - * } - */ - public static MemorySegment __report_gsfailure$address() { - return __report_gsfailure.ADDR; - } - - /** - * {@snippet lang=c : - * void __report_gsfailure(uintptr_t _StackCookie) - * } - */ - public static void __report_gsfailure(long _StackCookie) { - var mh$ = __report_gsfailure.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("__report_gsfailure", _StackCookie); - } - mh$.invokeExact(_StackCookie); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - private static class __security_cookie$constants { public static final OfLong LAYOUT = WGPU.C_LONG_LONG; public static final MemorySegment SEGMENT = WGPU.findOrThrow("__security_cookie").reinterpret(LAYOUT.byteSize()); } - /** - * Layout for variable: - * {@snippet lang=c : - * extern uintptr_t __security_cookie - * } - */ - public static OfLong __security_cookie$layout() { - return __security_cookie$constants.LAYOUT; - } - /** * Segment for variable: * {@snippet lang=c : @@ -17124,22 +16943,6 @@ public static int WGPU_QUERY_SET_INDEX_UNDEFINED() { return WGPU_QUERY_SET_INDEX_UNDEFINED; } private static final long WGPU_WHOLE_MAP_SIZE = -1L; - /** - * {@snippet lang=c : - * #define WGPU_WHOLE_MAP_SIZE -1 - * } - */ - public static long WGPU_WHOLE_MAP_SIZE() { - return WGPU_WHOLE_MAP_SIZE; - } private static final long WGPU_WHOLE_SIZE = -1L; - /** - * {@snippet lang=c : - * #define WGPU_WHOLE_SIZE -1 - * } - */ - public static long WGPU_WHOLE_SIZE() { - return WGPU_WHOLE_SIZE; - } } From dd1c16b24771f403f0deef0b08012b92b5ab0281 Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Mon, 23 Sep 2024 01:50:46 +0200 Subject: [PATCH 05/22] Refactor GPU buffer handling and add blend states Standardize GPU buffer creation functions and refactor WebGPU imports. Added multiple utility blend states to improve sprite rendering flexibility. Simplified shader and render pipeline configurations by using descriptive blend states and updated method names to align with coding standards. --- .../com/littlekt/graphics/IndexedMeshExt.kt | 5 +- .../kotlin/com/littlekt/graphics/WebgpuExt.kt | 147 +++++++++++++++++- .../kotlin/com/littlekt/graphics/g2d/Batch.kt | 7 +- .../com/littlekt/graphics/g2d/SpriteBatch.kt | 5 +- .../graphics/g2d/SpriteBatchShader.kt | 15 +- .../com/littlekt/graphics/g2d/SpriteCache.kt | 53 ++++--- .../littlekt/graphics/shader/SpriteShader.kt | 16 +- .../littlekt/examples/ComputeBoidsExample.kt | 129 ++++++++------- 8 files changed, 282 insertions(+), 95 deletions(-) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt index c6c14ce49..42eab9aaa 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt @@ -3,9 +3,8 @@ package com.littlekt.graphics import com.littlekt.ContextListener import com.littlekt.graphics.util.CommonIndexedMeshBuilder import com.littlekt.graphics.util.CommonIndexedMeshGeometry -import com.littlekt.graphics.webgpu.VertexFormat -import com.littlekt.graphics.webgpu.VertexStepMode import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.VertexStepMode /** Creates a new indexed mesh using the list of [VertexAttribute]. */ inline fun indexedMesh( @@ -18,7 +17,7 @@ inline fun indexedMesh( CommonIndexedMeshGeometry( VertexBufferLayout( attributes.calculateStride().toLong(), - VertexStepMode.VERTEX, + VertexStepMode.vertex, attributes ), size diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt index 193afd995..5ad2f5520 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt @@ -1,12 +1,16 @@ package com.littlekt.graphics +import io.ygdrasil.wgpu.BlendFactor +import io.ygdrasil.wgpu.BlendOperation import io.ygdrasil.wgpu.Buffer import io.ygdrasil.wgpu.BufferDescriptor import io.ygdrasil.wgpu.BufferUsage import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState.BlendComponent -internal fun Device.createGPUShortBuffer(label: String, data: ShortArray, usages: Set): Buffer { +fun Device.createGPUShortBuffer(label: String, data: ShortArray, usages: Set): Buffer { val buffer = createBuffer( BufferDescriptor( label = label, @@ -22,7 +26,7 @@ internal fun Device.createGPUShortBuffer(label: String, data: ShortArray, usages } -internal fun Device.createGPUFloatBuffer(label: String, data: FloatArray, usages: Set): Buffer { +fun Device.createGPUFloatBuffer(label: String, data: FloatArray, usages: Set): Buffer { val buffer = createBuffer( BufferDescriptor( label = label, @@ -36,3 +40,142 @@ internal fun Device.createGPUFloatBuffer(label: String, data: FloatArray, usages return buffer } + +/** Standard alpha blending. */ +val BlendState.Alpha: BlendState + get() = BlendState( + color = BlendComponent(dstFactor = BlendFactor.oneminussrcalpha), + alpha = BlendComponent(dstFactor = BlendFactor.oneminussrcalpha) + ) + +/** Fully oqaque, no alpha, blending. */ +val BlendState.Opaque: BlendState + get() = BlendState() + + +/** Non-premultiplied, alpha blending. */ +val BlendState.NonPreMultiplied: BlendState + get() = BlendState( + color = + BlendComponent( + srcFactor = BlendFactor.srcalpha, + dstFactor = BlendFactor.oneminussrcalpha + ), + alpha = + BlendComponent( + srcFactor = BlendFactor.srcalpha, + dstFactor = BlendFactor.oneminussrcalpha + ) + ) + +val BlendState.Add: BlendState + get() = BlendState( + color = + BlendComponent(srcFactor = BlendFactor.srcalpha, dstFactor = BlendFactor.one), + alpha = + BlendComponent(srcFactor = BlendFactor.srcalpha, dstFactor = BlendFactor.one) + ) + +val BlendState.Subtract: BlendState + get() = BlendState( + color = + BlendComponent( + srcFactor = BlendFactor.srcalpha, + dstFactor = BlendFactor.one, + operation = BlendOperation.reversesubtract + ), + alpha = + BlendComponent( + srcFactor = BlendFactor.srcalpha, + dstFactor = BlendFactor.one, + operation = BlendOperation.reversesubtract + ), + ) + +val BlendState.Difference: BlendState + get() = BlendState( + color = + BlendComponent( + srcFactor = BlendFactor.ONE_MINUS_DST_COLOR, + dstFactor = BlendFactor.ONE_MINUS_SRC_COLOR, + operation = BlendOperation.add + ), + ) + +val BlendState.Multiply: BlendState + get() = BlendState( + color = + BlendComponent( + srcFactor = BlendFactor.DST_COLOR, + dstFactor = BlendFactor.zero, + operation = BlendOperation.add + ), + alpha = + BlendComponent( + srcFactor = BlendFactor.dstalpha, + dstFactor = BlendFactor.zero, + operation = BlendOperation.add + ) + ) + +val BlendState.Lighten: BlendState + get() = BlendState( + color = + BlendComponent( + srcFactor = BlendFactor.one, + dstFactor = BlendFactor.one, + operation = BlendOperation.max + ), + alpha = + BlendComponent( + srcFactor = BlendFactor.one, + dstFactor = BlendFactor.one, + operation = BlendOperation.max + ), + ) + +val BlendState.Darken: BlendState + get() = BlendState( + color = + BlendComponent( + srcFactor = BlendFactor.one, + dstFactor = BlendFactor.one, + operation = BlendOperation.min + ), + alpha = + BlendComponent( + srcFactor = BlendFactor.one, + dstFactor = BlendFactor.one, + operation = BlendOperation.min + ), + ) + +val BlendState.Screen: BlendState + get() = BlendState( + color = + BlendComponent( + srcFactor = BlendFactor.ONE_MINUS_DST_COLOR, + dstFactor = BlendFactor.one, + operation = BlendOperation.add + ) + ) + +val BlendState.LinearDodge: BlendState + get() = BlendState( + color = + BlendComponent( + srcFactor = BlendFactor.one, + dstFactor = BlendFactor.one, + operation = BlendOperation.add + ) + ) + +val BlendState.LinearBurn: BlendState + get() = BlendState( + color = + BlendComponent( + srcFactor = BlendFactor.one, + dstFactor = BlendFactor.one, + operation = BlendOperation.reversesubtract + ) + ) \ No newline at end of file diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/Batch.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/Batch.kt index 02dca11ec..96b6bb008 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/Batch.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/Batch.kt @@ -4,12 +4,11 @@ import com.littlekt.Releasable import com.littlekt.graphics.Color import com.littlekt.graphics.Texture import com.littlekt.graphics.shader.Shader -import com.littlekt.graphics.webgpu.BlendState -import com.littlekt.graphics.webgpu.CommandEncoder -import com.littlekt.graphics.webgpu.Queue -import com.littlekt.graphics.webgpu.RenderPassEncoder import com.littlekt.math.Mat4 import com.littlekt.math.geom.Angle +import io.ygdrasil.wgpu.RenderPassEncoder +import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState /** * An interface for creating batch renderers. diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt index 7361c9de6..6d776d45c 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt @@ -22,6 +22,7 @@ import com.littlekt.util.datastructure.pool import io.ygdrasil.wgpu.* import io.ygdrasil.wgpu.RenderPipelineDescriptor.* import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState /** * Draws batched quads using indices. @@ -744,7 +745,7 @@ class SpriteBatch( primitive = PrimitiveState(topology = PrimitiveTopology.trianglelist), depthStencil = null, multisample = - MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) + MultisampleState(count = 1, mask = 0xFFFFFFFu, alphaToCoverageEnabled = false) ) } @@ -758,7 +759,7 @@ class SpriteBatch( lastTexture = null mesh.release() defaultShader.release() - renderPipelineByBlendState.values.forEach { it.release() } + renderPipelineByBlendState.values.forEach { it.close() } renderPipelineByBlendState.clear() drawCalls.clear() } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt index 9d44c019a..88659158c 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt @@ -2,8 +2,11 @@ package com.littlekt.graphics.g2d import com.littlekt.graphics.Texture import com.littlekt.graphics.shader.SpriteShader -import com.littlekt.graphics.webgpu.* +import com.littlekt.graphics.webgpu.BindGroupLayoutEntry +import io.ygdrasil.wgpu.Device import com.littlekt.util.align +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor +import io.ygdrasil.wgpu.ShaderStage /** * The default [SpriteShader] that is used [SpriteBatch]. @@ -63,13 +66,13 @@ class SpriteBatchShader(device: Device, cameraDynamicSize: Int = 50) : listOf( BindGroupLayoutEntry( 0, - ShaderStage.VERTEX, - BufferBindingLayout( + ShaderStage.vertex, + BindGroupLayoutDescriptor.Entry.BufferBindingLayout( hasDynamicOffset = true, minBindingSize = - (Float.SIZE_BYTES * 16) - .align(device.limits.minUniformBufferOffsetAlignment) - .toLong() + (Float.SIZE_BYTES * 16) + .align(device.limits.minUniformBufferOffsetAlignment) + .toLong() ) ) ) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt index 54518cba5..131efe274 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt @@ -3,10 +3,14 @@ package com.littlekt.graphics.g2d import com.littlekt.EngineStats import com.littlekt.Releasable import com.littlekt.file.FloatBuffer -import com.littlekt.graphics.* +import com.littlekt.graphics.MutableColor +import com.littlekt.graphics.Texture +import com.littlekt.graphics.VertexAttrUsage +import com.littlekt.graphics.VertexAttribute +import com.littlekt.graphics.createGPUFloatBuffer +import com.littlekt.graphics.indexedMesh import com.littlekt.graphics.shader.Shader import com.littlekt.graphics.shader.SpriteShader -import com.littlekt.graphics.webgpu.* import com.littlekt.log.Logger import com.littlekt.math.Mat4 import com.littlekt.math.MutableVec2f @@ -14,6 +18,12 @@ import com.littlekt.math.MutableVec4f import com.littlekt.math.geom.Angle import com.littlekt.math.geom.radians import com.littlekt.util.datastructure.fastForEach +import io.ygdrasil.wgpu.BindGroup +import io.ygdrasil.wgpu.BufferUsage +import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState +import io.ygdrasil.wgpu.TextureFormat +import io.ygdrasil.wgpu.VertexFormat import kotlinx.atomicfu.atomic import kotlinx.atomicfu.getAndUpdate @@ -39,7 +49,7 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 device, listOf( VertexAttribute( - format = VertexFormat.FLOAT32x3, + format = VertexFormat.float32x3, offset = 0, shaderLocation = 0, usage = VertexAttrUsage.POSITION @@ -82,7 +92,8 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 private val bindGroupsByTexture: MutableMap> = mutableMapOf() private val drawCalls: MutableList = mutableListOf() - private var blendState = BlendState.NonPreMultiplied + private var blendState = + BlendState.NonPreMultiplied private val renderPipeline = device.createRenderPipeline(createRenderPipelineDescriptor(shader, blendState)) @@ -92,7 +103,7 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 device.createGPUFloatBuffer( "sprite buffer", staticData.toArray(), - BufferUsage.STORAGE or BufferUsage.COPY_DST + setOf(BufferUsage.storage, BufferUsage.copydst) ) private val spriteIndices = mutableMapOf() private val spriteView = SpriteView() @@ -459,26 +470,26 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 return RenderPipelineDescriptor( layout = shader.pipelineLayout, vertex = - VertexState( - module = shader.shaderModule, - entryPoint = shader.vertexEntryPoint, - buffer = mesh.geometry.layout.gpuVertexBufferLayout - ), + VertexState( + module = shader.shaderModule, + entryPoint = shader.vertexEntryPoint, + buffer = mesh.geometry.layout.gpuVertexBufferLayout + ), fragment = - FragmentState( - module = shader.shaderModule, - entryPoint = shader.fragmentEntryPoint, - target = - ColorTargetState( - format = format, - blendState = blendState, - writeMask = ColorWriteMask.ALL - ) - ), + FragmentState( + module = shader.shaderModule, + entryPoint = shader.fragmentEntryPoint, + target = + ColorTargetState( + format = format, + blendState = blendState, + writeMask = ColorWriteMask.ALL + ) + ), primitive = PrimitiveState(topology = PrimitiveTopology.TRIANGLE_LIST), depthStencil = null, multisample = - MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) + MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) ) } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt index 84cca280c..c895042a4 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt @@ -2,9 +2,15 @@ package com.littlekt.graphics.shader import com.littlekt.file.FloatBuffer import com.littlekt.graphics.Texture +import io.ygdrasil.wgpu.Device import com.littlekt.math.Mat4 import com.littlekt.util.align -import io.ygdrasil.wgpu.* +import io.ygdrasil.wgpu.BindGroup +import io.ygdrasil.wgpu.BindGroupDescriptor +import io.ygdrasil.wgpu.BindGroupDescriptor.BufferBinding +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor +import io.ygdrasil.wgpu.BufferDescriptor +import io.ygdrasil.wgpu.BufferUsage /** * A base shader class to handle creating a camera uniform [GPUBuffer] and expecting a texture to @@ -54,11 +60,11 @@ abstract class SpriteShader( /** The [BufferBinding] for [cameraUniformBufferBinding]. */ protected val cameraUniformBufferBinding = BufferBinding( - cameraUniformBuffer, + buffer = cameraUniformBuffer, size = - (Float.SIZE_BYTES * 16) - .align(device.limits.minUniformBufferOffsetAlignment) - .toLong(), + (Float.SIZE_BYTES * 16) + .align(device.limits.minUniformBufferOffsetAlignment) + .toLong(), ) /** @see [createBindGroupsWithTexture] to override. */ diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt index 15d7416ee..346572d7d 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt @@ -5,7 +5,32 @@ import com.littlekt.ContextListener import com.littlekt.file.FloatBuffer import com.littlekt.graphics.* import com.littlekt.graphics.shader.Shader -import com.littlekt.graphics.webgpu.* +import com.littlekt.graphics.webgpu.RenderPassColorAttachmentDescriptor +import com.littlekt.graphics.webgpu.TextureStatus +import com.littlekt.graphics.webgpu.VertexState +import io.ygdrasil.wgpu.BindGroupDescriptor +import io.ygdrasil.wgpu.BindGroupDescriptor.BindGroupEntry +import io.ygdrasil.wgpu.BindGroupDescriptor.BufferBinding +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.BufferBindingLayout +import io.ygdrasil.wgpu.BufferBindingType +import io.ygdrasil.wgpu.BufferDescriptor +import io.ygdrasil.wgpu.BufferUsage +import io.ygdrasil.wgpu.ColorWriteMask +import io.ygdrasil.wgpu.ComputePipelineDescriptor +import io.ygdrasil.wgpu.ComputePipelineDescriptor.ProgrammableStage +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PipelineLayoutDescriptor +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.ShaderModuleDescriptor +import io.ygdrasil.wgpu.ShaderStage +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.TextureUsage +import io.ygdrasil.wgpu.VertexFormat +import io.ygdrasil.wgpu.VertexStepMode import kotlin.math.ceil import kotlin.random.Random @@ -26,16 +51,15 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderattachment), preferredFormat, - PresentMode.FIFO, + PresentMode.fifo, surfaceCapabilities.alphaModes[0] ) val spriteShader = Shader(device, SPRITE_WGSL_SRC, emptyList()) val renderPipeline = device.createRenderPipeline( - desc = RenderPipelineDescriptor( layout = spriteShader.pipelineLayout, vertex = @@ -46,19 +70,19 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { listOf( VertexBufferLayout( arrayStride = 4 * 4, - stepMode = VertexStepMode.INSTANCE, + stepMode = VertexStepMode.instance, attributes = listOf( VertexAttribute( - format = VertexFormat.FLOAT32x2, + format = VertexFormat.float32x2, offset = 0L, shaderLocation = 0, usage = VertexAttrUsage.POSITION ), VertexAttribute( - format = VertexFormat.FLOAT32x2, + format = VertexFormat.float32x2, offset = - VertexFormat.FLOAT32x2.bytes + VertexFormat.float32x2.sizeInByte .toLong(), shaderLocation = 1, usage = VertexAttrUsage.GENERIC @@ -68,11 +92,11 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { .gpuVertexBufferLayout, VertexBufferLayout( arrayStride = 2 * 4, - stepMode = VertexStepMode.VERTEX, + stepMode = VertexStepMode.vertex, attributes = listOf( VertexAttribute( - format = VertexFormat.FLOAT32x2, + format = VertexFormat.float32x2, offset = 0, shaderLocation = 2, usage = VertexAttrUsage.GENERIC @@ -83,31 +107,33 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { ) ), fragment = - FragmentState( - module = spriteShader.shaderModule, - entryPoint = spriteShader.fragmentEntryPoint, - target = - ColorTargetState( - format = preferredFormat, - blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.ALL - ) + RenderPipelineDescriptor.FragmentState( + module = spriteShader.shaderModule, + entryPoint = spriteShader.fragmentEntryPoint, + target = + RenderPipelineDescriptor.FragmentState.ColorTargetState( + format = preferredFormat, + blendState = RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState.NonPreMultiplied, + writeMask = ColorWriteMask.all ) + ) ) ) val computeBindGroupLayoutDesc = BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry(0, ShaderStage.COMPUTE, BufferBindingLayout()), - BindGroupLayoutEntry( + Entry(0, setOf(ShaderStage.compute), + BufferBindingLayout() + ), + Entry( 1, - ShaderStage.COMPUTE, - BufferBindingLayout(BufferBindingType.READ_ONLY_STORAGE) + setOf(ShaderStage.compute), + BufferBindingLayout(BufferBindingType.readonlystorage) ), - BindGroupLayoutEntry( + Entry( 2, - ShaderStage.COMPUTE, - BufferBindingLayout(BufferBindingType.STORAGE) + setOf(ShaderStage.compute), + BufferBindingLayout(BufferBindingType.storage) ) ), "compute bind group" @@ -116,16 +142,16 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { device.createBindGroupLayout( BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry(0, ShaderStage.COMPUTE, BufferBindingLayout()), - BindGroupLayoutEntry( + Entry(0, setOf(ShaderStage.compute), BufferBindingLayout()), + Entry( 1, - ShaderStage.COMPUTE, - BufferBindingLayout(BufferBindingType.READ_ONLY_STORAGE) + setOf(ShaderStage.compute), + BufferBindingLayout(BufferBindingType.readonlystorage) ), - BindGroupLayoutEntry( + Entry( 2, - ShaderStage.COMPUTE, - BufferBindingLayout(BufferBindingType.STORAGE) + setOf(ShaderStage.compute), + BufferBindingLayout(BufferBindingType.storage) ) ), "compute bind group" @@ -137,14 +163,13 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { ) val computePipeline = device.createComputePipeline( - desc = ComputePipelineDescriptor( layout = computePipelineLayout, compute = - ProgrammableStage( - module = device.createShaderModule(UPDATE_SPRITES_WGSL_SRC), - entryPoint = "main" - ) + ProgrammableStage( + module = device.createShaderModule(ShaderModuleDescriptor(UPDATE_SPRITES_WGSL_SRC)), + entryPoint = "main" + ) ) ) @@ -153,7 +178,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { device.createGPUFloatBuffer( "sprite vertex buffer", vertexBufferData, - BufferUsage.VERTEX + setOf( BufferUsage.vertex) ) val simParams = SimParams( @@ -170,10 +195,10 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { val simParamBuffer = device.createBuffer( BufferDescriptor( - "sim param buffer", - simParamBufferSize, - BufferUsage.UNIFORM or BufferUsage.COPY_DST, - false + label = "sim param buffer", + size = simParamBufferSize, + usage = setOf(BufferUsage.uniform, BufferUsage.copydst), + mappedAtCreation = false ) ) val simParamBufferData = FloatBuffer(7) @@ -204,7 +229,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { device.createGPUFloatBuffer( "particle buffer $it", initialParticleData, - BufferUsage.VERTEX or BufferUsage.STORAGE + setOf(BufferUsage.vertex, BufferUsage.storage) ) } @@ -234,9 +259,9 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { onResize { width, height -> graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderattachment), preferredFormat, - PresentMode.FIFO, + PresentMode.fifo, surfaceCapabilities.alphaModes[0] ) } @@ -271,8 +296,8 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { listOf( RenderPassColorAttachmentDescriptor( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, clearColor = if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() else Color.DARK_GRAY @@ -287,7 +312,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { passEncoder.setBindGroup(0, particleBindGroups[fidx % 2]) passEncoder.dispatchWorkgroups(ceil(numParticles / 64f).toInt()) passEncoder.end() - passEncoder.release() + passEncoder.close() } run renderPass@{ @@ -297,7 +322,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { passEncoder.setVertexBuffer(1, spriteVertexBuffer) passEncoder.draw(3, numParticles, 0, 0) passEncoder.end() - passEncoder.release() + passEncoder.close() } val commandBuffer = commandEncoder.finish() @@ -307,8 +332,8 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { fidx++ - commandBuffer.release() - commandEncoder.release() + commandBuffer.close() + commandEncoder.close() frame.release() swapChainTexture.release() } From 187c83c1f857dda7d48f06130b1418200f2266bc Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Mon, 23 Sep 2024 01:56:46 +0200 Subject: [PATCH 06/22] Refactor and clean up WebGPU codebase Remove unused imports and redundant code related to WebGPU in LwjglGraphics and VertexBufferLayout. Simplify the Device class by eliminating unnecessary properties and methods. This refactor aims to streamline the code and improve maintainability. --- .../com/littlekt/graphics/IndexedMeshExt.kt | 7 ++- .../littlekt/graphics/VertexBufferLayout.kt | 5 +- .../com/littlekt/graphics/webgpu/webgpu.kt | 22 +------ .../com/littlekt/graphics/webgpu/webgpu.js.kt | 52 ---------------- .../kotlin/com/littlekt/LwjglGraphics.kt | 17 ------ .../littlekt/graphics/webgpu/webgpu.jvm.kt | 60 ------------------- 6 files changed, 7 insertions(+), 156 deletions(-) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt index 42eab9aaa..cd0062342 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt @@ -4,6 +4,7 @@ import com.littlekt.ContextListener import com.littlekt.graphics.util.CommonIndexedMeshBuilder import com.littlekt.graphics.util.CommonIndexedMeshGeometry import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.VertexFormat import io.ygdrasil.wgpu.VertexStepMode /** Creates a new indexed mesh using the list of [VertexAttribute]. */ @@ -39,10 +40,10 @@ fun colorIndexedMesh( return indexedMesh( device, listOf( - VertexAttribute(VertexFormat.FLOAT32x3, 0, 0, VertexAttrUsage.POSITION), + VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), VertexAttribute( - VertexFormat.FLOAT32x4, - VertexFormat.FLOAT32x3.bytes.toLong(), + VertexFormat.float32x4, + VertexFormat.float32x3.sizeInByte.toLong(), 1, VertexAttrUsage.COLOR ) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexBufferLayout.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexBufferLayout.kt index c35b3394a..9aea25790 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexBufferLayout.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexBufferLayout.kt @@ -1,8 +1,7 @@ package com.littlekt.graphics -import com.littlekt.graphics.webgpu.VertexState -import com.littlekt.graphics.webgpu.VertexStepMode -import com.littlekt.graphics.webgpu.WebGPUVertexBufferLayout +import io.ygdrasil.wgpu.VertexStepMode + /** * A wrapper around a [WebGPUVertexBufferLayout] describes how the vertex buffer is interpreted. diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt index 83978a214..c2f860425 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt @@ -16,20 +16,6 @@ import com.littlekt.graphics.webgpu.* * A device may be requested from an adapter with [Adapter.requestDevice] */ expect class Device : Releasable { - /** A [Queue] that has been ready from same adapter this device was created with. */ - val queue: Queue - - /** - * A set containing the [Feature] values of the features supported by the device (i.e. the ones - * with which it was created). - */ - val features: List - - /** - * Exposes the [Limits] supported by the device (which are exactly the ones with which it was - * created). - */ - val limits: Limits /** @return a newly created [ShaderModule] using WGSL source code. */ fun createShaderModule(src: String): ShaderModule @@ -632,13 +618,7 @@ expect class Queue : Releasable { override fun release() } -/** - * Handle to a compiled shader module. - * - * A `ShaderModule` represents a compiled shader module on the GPU. It can be created by pass source - * code to [Device.createShaderModule]. Shader modules are used to define programmable stages of a - * pipeline. - */ + expect class ShaderModule : Releasable { override fun release() } diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt index 8c06c83b4..4c7f5b94c 100644 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt +++ b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt @@ -9,58 +9,6 @@ import org.khronos.webgl.ArrayBuffer import org.khronos.webgl.Uint8Array actual class Device(val delegate: GPUDevice) : Releasable { - actual val queue: Queue by lazy { Queue(delegate.queue) } - - actual val features: List by lazy { - val results = mutableListOf() - val jsFeatures = delegate.features - Feature.entries.forEach { feature -> - if (jsFeatures.has(feature.nativeVal) as Boolean) { - results += feature - } - } - results.toList() - } - - actual val limits: Limits by lazy { - val jsLimits = delegate.limits - Limits( - maxTextureDimension1D = jsLimits.maxTextureDimension1D, - maxTextureDimension2D = jsLimits.maxTextureDimension2D, - maxTextureDimension3D = jsLimits.maxTextureDimension3D, - maxTextureArrayLayers = jsLimits.maxTextureArrayLayers, - maxBindGroups = jsLimits.maxBindGroups, - maxBindGroupsPlusVertexBuffers = jsLimits.maxBindGroupsPlusVertexBuffers, - maxBindingsPerBindGroup = jsLimits.maxBindingsPerBindGroup, - maxDynamicUniformBuffersPerPipelineLayout = - jsLimits.maxDynamicUniformBuffersPerPipelineLayout, - maxDynamicStorageBuffersPerPipelineLayout = - jsLimits.maxDynamicStorageBuffersPerPipelineLayout, - maxSampledTexturesPerShaderStage = jsLimits.maxSampledTexturesPerShaderStage, - maxSamplersPerShaderStage = jsLimits.maxSamplersPerShaderStage, - maxStorageBuffersPerShaderStage = jsLimits.maxStorageBuffersPerShaderStage, - maxStorageTexturesPerShaderStage = jsLimits.maxStorageTexturesPerShaderStage, - maxUniformBuffersPerShaderStage = jsLimits.maxUniformBuffersPerShaderStage, - maxUniformBufferBindingSize = jsLimits.maxUniformBufferBindingSize, - maxStorageBufferBindingSize = jsLimits.maxStorageBufferBindingSize, - minUniformBufferOffsetAlignment = jsLimits.minUniformBufferOffsetAlignment, - minStorageBufferOffsetAlignment = jsLimits.minStorageBufferOffsetAlignment, - maxVertexBuffers = jsLimits.maxVertexBuffers, - maxBufferSize = jsLimits.maxBufferSize, - maxVertexAttributes = jsLimits.maxVertexAttributes, - maxVertexBufferArrayStride = jsLimits.maxVertexBufferArrayStride, - maxInterStageShaderComponents = jsLimits.maxInterStageShaderComponents, - maxInterStageShaderVariables = jsLimits.maxInterStageShaderVariables, - maxColorAttachments = jsLimits.maxColorAttachments, - maxColorAttachmentBytesPerSample = jsLimits.maxColorAttachmentBytesPerSample, - maxComputeWorkgroupStorageSize = jsLimits.maxComputeWorkgroupStorageSize, - maxComputeInvocationsPerWorkgroup = jsLimits.maxComputeInvocationsPerWorkgroup, - maxComputeWorkgroupSizeX = jsLimits.maxComputeWorkgroupSizeX, - maxComputeWorkgroupSizeY = jsLimits.maxComputeWorkgroupSizeY, - maxComputeWorkgroupSizeZ = jsLimits.maxComputeWorkgroupSizeZ, - maxComputeWorkgroupsPerDimension = jsLimits.maxComputeWorkgroupsPerDimension, - ) - } actual fun createShaderModule(src: String): ShaderModule { return ShaderModule(delegate.createShaderModule(GPUShaderModuleDescriptor { code = src })) diff --git a/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt b/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt index 21d012c9c..ec6267c2a 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt @@ -5,8 +5,6 @@ import com.littlekt.graphics.HdpiMode import com.littlekt.graphics.SystemCursor import com.littlekt.graphics.webgpu.* import com.littlekt.log.Logger -import com.littlekt.wgpu.* -import com.littlekt.wgpu.WGPU.* import java.lang.foreign.Arena import java.lang.foreign.MemorySegment import kotlinx.atomicfu.atomic @@ -280,23 +278,8 @@ class LwjglGraphics(private val context: LwjglContext) : Graphics, Releasable { } override fun release() { - if (device.queue.segment != WGPU_NULL) { - device.queue.release() - } - if (device.segment != WGPU_NULL) { - device.release() - } - if (adapter.segment != WGPU_NULL) { - adapter.release() - } - if (surface.segment != WGPU_NULL) { - surface.release() - } - if (instance.segment != WGPU_NULL) { - wgpuInstanceRelease(instance.segment) - } } companion object { diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt index 320e93dae..e2685f85e 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt @@ -16,66 +16,6 @@ import kotlinx.atomicfu.update actual class Device(val segment: MemorySegment) : Releasable { - actual val queue: Queue by lazy { Queue(wgpuDeviceGetQueue(segment)) } - - actual val features: List by lazy { - val list = mutableListOf() - Feature.entries.forEach { - val result = wgpuDeviceHasFeature(segment, it.nativeVal) - if (result == 1) { - list += it - } - } - list.toList() - } - - actual val limits: Limits by lazy { - Arena.ofConfined().use { scope -> - val supported = WGPUSupportedLimits.allocate(scope) - wgpuDeviceGetLimits(segment, supported) - val desc = WGPUSupportedLimits.limits(supported) - Limits( - maxTextureDimension1D = WGPULimits.maxTextureDimension1D(desc), - maxTextureDimension2D = WGPULimits.maxTextureDimension2D(desc), - maxTextureDimension3D = WGPULimits.maxTextureDimension3D(desc), - maxTextureArrayLayers = WGPULimits.maxTextureArrayLayers(desc), - maxBindGroups = WGPULimits.maxBindGroups(desc), - maxBindGroupsPlusVertexBuffers = WGPULimits.maxBindGroupsPlusVertexBuffers(desc), - maxBindingsPerBindGroup = WGPULimits.maxBindingsPerBindGroup(desc), - maxDynamicUniformBuffersPerPipelineLayout = - WGPULimits.maxDynamicUniformBuffersPerPipelineLayout(desc), - maxDynamicStorageBuffersPerPipelineLayout = - WGPULimits.maxDynamicStorageBuffersPerPipelineLayout(desc), - maxSampledTexturesPerShaderStage = - WGPULimits.maxSampledTexturesPerShaderStage(desc), - maxSamplersPerShaderStage = WGPULimits.maxSamplersPerShaderStage(desc), - maxStorageBuffersPerShaderStage = WGPULimits.maxStorageBuffersPerShaderStage(desc), - maxStorageTexturesPerShaderStage = - WGPULimits.maxStorageTexturesPerShaderStage(desc), - maxUniformBuffersPerShaderStage = WGPULimits.maxUniformBuffersPerShaderStage(desc), - maxUniformBufferBindingSize = WGPULimits.maxUniformBufferBindingSize(desc), - maxStorageBufferBindingSize = WGPULimits.maxStorageBufferBindingSize(desc), - minUniformBufferOffsetAlignment = WGPULimits.minUniformBufferOffsetAlignment(desc), - minStorageBufferOffsetAlignment = WGPULimits.minStorageBufferOffsetAlignment(desc), - maxVertexBuffers = WGPULimits.maxVertexBuffers(desc), - maxBufferSize = WGPULimits.maxBufferSize(desc), - maxVertexAttributes = WGPULimits.maxVertexAttributes(desc), - maxVertexBufferArrayStride = WGPULimits.maxVertexBufferArrayStride(desc), - maxInterStageShaderComponents = WGPULimits.maxInterStageShaderComponents(desc), - maxInterStageShaderVariables = WGPULimits.maxInterStageShaderVariables(desc), - maxColorAttachments = WGPULimits.maxColorAttachments(desc), - maxColorAttachmentBytesPerSample = - WGPULimits.maxColorAttachmentBytesPerSample(desc), - maxComputeWorkgroupStorageSize = WGPULimits.maxComputeWorkgroupStorageSize(desc), - maxComputeInvocationsPerWorkgroup = - WGPULimits.maxComputeInvocationsPerWorkgroup(desc), - maxComputeWorkgroupSizeX = WGPULimits.maxComputeWorkgroupSizeX(desc), - maxComputeWorkgroupSizeY = WGPULimits.maxComputeWorkgroupSizeY(desc), - maxComputeWorkgroupSizeZ = WGPULimits.maxComputeWorkgroupSizeZ(desc), - maxComputeWorkgroupsPerDimension = WGPULimits.maxComputeWorkgroupsPerDimension(desc) - ) - } - } actual fun createShaderModule(src: String): ShaderModule { return Arena.ofConfined().use { scope -> From 3c5aeceb61d428cd090b77929b250ad9819406dd Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Mon, 23 Sep 2024 03:11:53 +0200 Subject: [PATCH 07/22] Fix typos and update dependencies Corrected various typos in enums and class names, improving code readability and consistency. Also updated the `wgpu4k` dependency version to `0.0.0-SNAPSHOT` in the `gradle/libs.versions.toml` file, ensuring compatibility with the latest changes. --- core/src/commonMain/kotlin/com/littlekt/Graphics.kt | 2 +- .../kotlin/com/littlekt/graphics/EmptyTexture.kt | 2 +- .../src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt | 4 ++-- .../kotlin/com/littlekt/graphics/PixmapTexture.kt | 2 +- .../kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt | 7 ++++--- gradle/libs.versions.toml | 2 +- 6 files changed, 10 insertions(+), 9 deletions(-) diff --git a/core/src/commonMain/kotlin/com/littlekt/Graphics.kt b/core/src/commonMain/kotlin/com/littlekt/Graphics.kt index 8ca384d1d..fca7449a2 100644 --- a/core/src/commonMain/kotlin/com/littlekt/Graphics.kt +++ b/core/src/commonMain/kotlin/com/littlekt/Graphics.kt @@ -47,7 +47,7 @@ interface Graphics { * for presentation. */ fun configureSurface( - usage: Set = setOf(TextureUsage.renderattachment), + usage: Set = setOf(TextureUsage.renderAttachment), format: TextureFormat = preferredFormat, presentMode: PresentMode = PresentMode.fifo, alphaMode: CompositeAlphaMode = surface.supportedAlphaMode.first() diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt index 365dbe581..25debab85 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt @@ -41,7 +41,7 @@ class EmptyTexture(val device: Device, preferredFormat: TextureFormat, width: In TextureDescriptor( size, preferredFormat, - setOf(TextureUsage.texturebinding, TextureUsage.renderattachment) + setOf(TextureUsage.textureBinding, TextureUsage.renderAttachment) ) set(value) { field = value diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt index 007d34fca..1dfc49df1 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt @@ -3,8 +3,8 @@ package com.littlekt.graphics import com.littlekt.ContextListener import com.littlekt.graphics.util.CommonMeshGeometry import com.littlekt.graphics.webgpu.VertexFormat -import com.littlekt.graphics.webgpu.VertexStepMode import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.VertexStepMode /** * Creates a new mesh using the list of [VertexAttribute]. @@ -21,7 +21,7 @@ inline fun mesh( CommonMeshGeometry( VertexBufferLayout( attributes.calculateStride().toLong(), - VertexStepMode.VERTEX, + VertexStepMode.vertex, attributes ), size diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt index c0d72cd84..7d3fd6372 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt @@ -35,7 +35,7 @@ class PixmapTexture(val device: Device, preferredFormat: TextureFormat, val pixm TextureDescriptor( size, preferredFormat, - setOf(TextureUsage.texturebinding, TextureUsage.copydst) + setOf(TextureUsage.textureBinding, TextureUsage.copyDst) ) set(value) { field = value diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt index d10bc1e4e..5529891a6 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt @@ -6,6 +6,7 @@ import com.littlekt.graphics.shader.SpriteShader import com.littlekt.graphics.webgpu.TextureBindingLayout import com.littlekt.log.Logger import io.ygdrasil.wgpu.* +import io.ygdrasil.wgpu.BindGroupDescriptor.BufferBinding import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.BufferBindingLayout import kotlin.math.min @@ -154,7 +155,7 @@ class SpriteCacheShader( listOf( Entry( 0, - ShaderStage.vertex, + setOf(ShaderStage.vertex), BufferBindingLayout( type = BufferBindingType.uniform, hasDynamicOffset = true, @@ -163,12 +164,12 @@ class SpriteCacheShader( ), Entry( 1, - ShaderStage.vertex, + setOf(ShaderStage.vertex), BufferBindingLayout(type = BufferBindingType.readonlystorage) ), Entry( 2, - ShaderStage.vertex, + setOf(ShaderStage.vertex), BufferBindingLayout(type = BufferBindingType.readonlystorage) ) ) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index d3b57aaa7..3b86457b4 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,6 +1,6 @@ [versions] download-gradle = "5.6.0" -wgpu4k = "preview-3" +wgpu4k = "0.0.0-SNAPSHOT" kotlin = "2.0.0" kotlinxHtmlVersion = "0.11.0" kotlinx-atomicfu = "0.24.0" From 82f5c7bfb01ec9964ed06a3c3130ec880ae01349 Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Mon, 23 Sep 2024 21:34:23 +0200 Subject: [PATCH 08/22] Refactor import paths and use consistent naming conventions. Updated import paths to the new `io.ygdrasil.wgpu` package and replaced deprecated method calls. Reformatted code blocks for consistency and applied uniform naming for buffer usages and vertex attributes. --- .../com/littlekt/graphics/IndexedMeshExt.kt | 12 +-- .../com/littlekt/graphics/VertexAttribute.kt | 2 +- .../graphics/g2d/SpriteCacheShader.kt | 84 +++++++-------- .../littlekt/examples/ComputeBoidsExample.kt | 100 +++++++++--------- 4 files changed, 99 insertions(+), 99 deletions(-) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt index cd0062342..5a24e03b4 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt @@ -65,16 +65,16 @@ fun textureIndexedMesh( return indexedMesh( device, listOf( - VertexAttribute(VertexFormat.FLOAT32x3, 0, 0, VertexAttrUsage.POSITION), + VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), VertexAttribute( - VertexFormat.FLOAT32x4, - VertexFormat.FLOAT32x3.bytes.toLong(), + VertexFormat.float32x4, + VertexFormat.float32x3.sizeInByte.toLong(), 1, VertexAttrUsage.COLOR ), VertexAttribute( - VertexFormat.FLOAT32x2, - VertexFormat.FLOAT32x4.bytes.toLong() + VertexFormat.FLOAT32x3.bytes.toLong(), + VertexFormat.float32x2, + VertexFormat.float32x4.sizeInByte.toLong() + VertexFormat.float32x3.sizeInByte.toLong(), 2, VertexAttrUsage.TEX_COORDS ) @@ -92,7 +92,7 @@ fun positionIndexedMesh( ): IndexedMesh { return indexedMesh( device, - listOf(VertexAttribute(VertexFormat.FLOAT32x3, 0, 0, VertexAttrUsage.POSITION)), + listOf(VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION)), size, generate ) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttribute.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttribute.kt index 9b0058b35..4370260e1 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttribute.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttribute.kt @@ -1,8 +1,8 @@ package com.littlekt.graphics import com.littlekt.graphics.util.CommonVertexView -import com.littlekt.graphics.webgpu.VertexFormat import com.littlekt.graphics.webgpu.WebGPUVertexAttribute +import io.ygdrasil.wgpu.VertexFormat /** * Wraps a [WebGPUVertexAttribute] and tracks a [VertexAttrUsage]. diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt index 5529891a6..a68da31d8 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt @@ -2,11 +2,11 @@ package com.littlekt.graphics.g2d import com.littlekt.file.FloatBuffer import com.littlekt.graphics.Texture +import com.littlekt.graphics.createGPUFloatBuffer import com.littlekt.graphics.shader.SpriteShader -import com.littlekt.graphics.webgpu.TextureBindingLayout import com.littlekt.log.Logger import io.ygdrasil.wgpu.* -import io.ygdrasil.wgpu.BindGroupDescriptor.BufferBinding +import io.ygdrasil.wgpu.BindGroupDescriptor.* import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.BufferBindingLayout import kotlin.math.min @@ -29,7 +29,7 @@ class SpriteCacheShader( device, // language=wgsl src = - """ + """ struct CameraUniform { view_proj: mat4x4 }; @@ -148,39 +148,39 @@ class SpriteCacheShader( return textureSample(my_texture, my_sampler, in.uv) * in.color; } """ - .trimIndent(), + .trimIndent(), layout = - listOf( - BindGroupLayoutDescriptor( - listOf( - Entry( - 0, - setOf(ShaderStage.vertex), - BufferBindingLayout( - type = BufferBindingType.uniform, - hasDynamicOffset = true, - minBindingSize = Float.SIZE_BYTES * 16L - ) - ), - Entry( - 1, - setOf(ShaderStage.vertex), - BufferBindingLayout(type = BufferBindingType.readonlystorage) - ), - Entry( - 2, - setOf(ShaderStage.vertex), - BufferBindingLayout(type = BufferBindingType.readonlystorage) + listOf( + BindGroupLayoutDescriptor( + listOf( + Entry( + 0, + setOf(ShaderStage.vertex), + BufferBindingLayout( + type = BufferBindingType.uniform, + hasDynamicOffset = true, + minBindingSize = Float.SIZE_BYTES * 16L ) + ), + Entry( + 1, + setOf(ShaderStage.vertex), + BufferBindingLayout(type = BufferBindingType.readonlystorage) + ), + Entry( + 2, + setOf(ShaderStage.vertex), + BufferBindingLayout(type = BufferBindingType.readonlystorage) ) - ), - BindGroupLayoutDescriptor( - listOf( - Entry(0, setOf(ShaderStage.fragment), TextureBindingLayout()), - Entry(1, setOf(ShaderStage.fragment), Entry.SamplerBindingLayout()) - ) + ) + ), + BindGroupLayoutDescriptor( + listOf( + Entry(0, setOf(ShaderStage.fragment), Entry.TextureBindingLayout()), + Entry(1, setOf(ShaderStage.fragment), Entry.SamplerBindingLayout()) ) ) + ) ) { /** @@ -192,7 +192,7 @@ class SpriteCacheShader( device.createGPUFloatBuffer( "static sprite storage buffer", FloatArray(staticSize), - BufferUsage.STORAGE or BufferUsage.COPY_DST + setOf(BufferUsage.storage, BufferUsage.copydst) ) private var staticSpriteStorageBufferBinding = BufferBinding(spriteStaticStorage) @@ -206,7 +206,7 @@ class SpriteCacheShader( device.createGPUFloatBuffer( "dynamic sprite storage buffer", FloatArray(dynamicSize), - BufferUsage.STORAGE or BufferUsage.COPY_DST + setOf(BufferUsage.storage, BufferUsage.copydst) ) private var dynamicSpriteStorageBufferBinding = BufferBinding(spriteDynamicStorage) @@ -231,7 +231,7 @@ class SpriteCacheShader( device.createBindGroup( BindGroupDescriptor( layouts[1], - listOf(BindGroupEntry(0, texture.view), BindGroupEntry(1, texture.sampler)) + listOf(BindGroupEntry(0, TextureViewBinding(texture.view)), BindGroupEntry(1, SamplerBinding(texture.sampler))) ) ) ) @@ -257,20 +257,20 @@ class SpriteCacheShader( logger.debug { "Attempting to write data to static sprite storage buffer that exceeds its current size. Destroying and recreating the buffer..." } - spriteStaticStorage.destroy() - spriteStaticStorage.release() + spriteStaticStorage.close() spriteStaticStorage = device.createGPUFloatBuffer( "static sprite storage buffer", data.toArray(), - BufferUsage.STORAGE or BufferUsage.COPY_DST + setOf(BufferUsage.storage, BufferUsage.copydst) ) staticSpriteStorageBufferBinding = BufferBinding(spriteStaticStorage) return true } else { device.queue.writeBuffer( spriteStaticStorage, - data, + 0L, + data.toArray(), size = min(spriteStaticStorage.size / Float.SIZE_BYTES, data.limit.toLong()) ) } @@ -288,20 +288,20 @@ class SpriteCacheShader( logger.debug { "Attempting to write data to dynamic sprite storage buffer that exceeds its current size. Destroying and recreating the buffer..." } - spriteDynamicStorage.destroy() - spriteDynamicStorage.release() + spriteDynamicStorage.close() spriteDynamicStorage = device.createGPUFloatBuffer( "dynamic sprite storage buffer", data.toArray(), - BufferUsage.STORAGE or BufferUsage.COPY_DST + setOf(BufferUsage.storage, BufferUsage.copydst) ) dynamicSpriteStorageBufferBinding = BufferBinding(spriteDynamicStorage) return true } else { device.queue.writeBuffer( spriteDynamicStorage, - data, + 0L, + data.toArray(), size = min(spriteDynamicStorage.size / Float.SIZE_BYTES, data.limit.toLong()) ) } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt index 346572d7d..e90c2a3d8 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt @@ -5,9 +5,7 @@ import com.littlekt.ContextListener import com.littlekt.file.FloatBuffer import com.littlekt.graphics.* import com.littlekt.graphics.shader.Shader -import com.littlekt.graphics.webgpu.RenderPassColorAttachmentDescriptor import com.littlekt.graphics.webgpu.TextureStatus -import com.littlekt.graphics.webgpu.VertexState import io.ygdrasil.wgpu.BindGroupDescriptor import io.ygdrasil.wgpu.BindGroupDescriptor.BindGroupEntry import io.ygdrasil.wgpu.BindGroupDescriptor.BufferBinding @@ -25,6 +23,7 @@ import io.ygdrasil.wgpu.PipelineLayoutDescriptor import io.ygdrasil.wgpu.PresentMode import io.ygdrasil.wgpu.RenderPassDescriptor import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor.VertexState import io.ygdrasil.wgpu.ShaderModuleDescriptor import io.ygdrasil.wgpu.ShaderStage import io.ygdrasil.wgpu.StoreOp @@ -51,10 +50,10 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { val preferredFormat = graphics.preferredFormat graphics.configureSurface( - setOf(TextureUsage.renderattachment), + setOf(TextureUsage.renderAttachment), preferredFormat, PresentMode.fifo, - surfaceCapabilities.alphaModes[0] + graphics.surface.supportedAlphaMode.first() ) val spriteShader = Shader(device, SPRITE_WGSL_SRC, emptyList()) @@ -63,58 +62,59 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { RenderPipelineDescriptor( layout = spriteShader.pipelineLayout, vertex = - VertexState( - module = spriteShader.shaderModule, - entryPoint = spriteShader.vertexEntryPoint, - buffers = + VertexState( + module = spriteShader.shaderModule, + entryPoint = spriteShader.vertexEntryPoint, + buffers = + listOf( + VertexBufferLayout( + arrayStride = 4 * 4, + stepMode = VertexStepMode.instance, + attributes = listOf( - VertexBufferLayout( - arrayStride = 4 * 4, - stepMode = VertexStepMode.instance, - attributes = - listOf( - VertexAttribute( - format = VertexFormat.float32x2, - offset = 0L, - shaderLocation = 0, - usage = VertexAttrUsage.POSITION - ), - VertexAttribute( - format = VertexFormat.float32x2, - offset = - VertexFormat.float32x2.sizeInByte - .toLong(), - shaderLocation = 1, - usage = VertexAttrUsage.GENERIC - ), - ) - ) - .gpuVertexBufferLayout, - VertexBufferLayout( - arrayStride = 2 * 4, - stepMode = VertexStepMode.vertex, - attributes = - listOf( - VertexAttribute( - format = VertexFormat.float32x2, - offset = 0, - shaderLocation = 2, - usage = VertexAttrUsage.GENERIC - ), - ) - ) - .gpuVertexBufferLayout + VertexAttribute( + format = VertexFormat.float32x2, + offset = 0L, + shaderLocation = 0, + usage = VertexAttrUsage.POSITION + ), + VertexAttribute( + format = VertexFormat.float32x2, + offset = + VertexFormat.float32x2.sizeInByte + .toLong(), + shaderLocation = 1, + usage = VertexAttrUsage.GENERIC + ), ) - ), + ) + .gpuVertexBufferLayout, + VertexBufferLayout( + arrayStride = 2 * 4, + stepMode = VertexStepMode.vertex, + attributes = + listOf( + VertexAttribute( + format = VertexFormat.float32x2, + offset = 0, + shaderLocation = 2, + usage = VertexAttrUsage.GENERIC + ), + ) + ) + .gpuVertexBufferLayout + ) + ), fragment = RenderPipelineDescriptor.FragmentState( module = spriteShader.shaderModule, entryPoint = spriteShader.fragmentEntryPoint, - target = - RenderPipelineDescriptor.FragmentState.ColorTargetState( - format = preferredFormat, - blendState = RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.all + targets = listOf( + RenderPipelineDescriptor.FragmentState.ColorTargetState( + format = preferredFormat, + blend = RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState.NonPreMultiplied, + writeMask = ColorWriteMask.all + ) ) ) ) From 41b7539f33236f66ece7af185daf3072e4401714 Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Mon, 23 Sep 2024 23:51:28 +0200 Subject: [PATCH 09/22] Update WGPU integration and refactor vertex attribute handling Switch to io.ygdrasil.wgpu for WGPU functionalities, updating import paths and instance creation. Refactor vertex attribute handling to use sizeInByte instead of bytes for stride calculations, and correct usages of texture formats and pipeline states in render passes. --- .../kotlin/com/littlekt/graphics/MeshExt.kt | 20 +++++++------- .../littlekt/graphics/VertexAttributeExt.kt | 2 +- .../com/littlekt/graphics/g2d/BatchExt.kt | 2 +- .../graphics/g2d/SpriteBatchShader.kt | 21 ++++++++++----- .../com/littlekt/graphics/g2d/SpriteCache.kt | 27 +++++++++++-------- .../com/littlekt/graphics/webgpu/webgpu.kt | 21 --------------- .../kotlin/com/littlekt/LwjglGraphics.kt | 8 ++++-- .../littlekt/examples/ComputeBoidsExample.kt | 13 ++++----- 8 files changed, 54 insertions(+), 60 deletions(-) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt index 1dfc49df1..cb84a5fd8 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt @@ -2,8 +2,8 @@ package com.littlekt.graphics import com.littlekt.ContextListener import com.littlekt.graphics.util.CommonMeshGeometry -import com.littlekt.graphics.webgpu.VertexFormat import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.VertexFormat import io.ygdrasil.wgpu.VertexStepMode /** @@ -43,10 +43,10 @@ fun colorMesh( return mesh( device, listOf( - VertexAttribute(VertexFormat.FLOAT32x3, 0, 0, VertexAttrUsage.POSITION), + VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), VertexAttribute( - VertexFormat.FLOAT32x4, - VertexFormat.FLOAT32x3.bytes.toLong(), + VertexFormat.float32x4, + VertexFormat.float32x3.sizeInByte.toLong(), 1, VertexAttrUsage.COLOR ) @@ -70,16 +70,16 @@ fun textureMesh( return mesh( device, listOf( - VertexAttribute(VertexFormat.FLOAT32x3, 0, 0, VertexAttrUsage.POSITION), + VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), VertexAttribute( - VertexFormat.FLOAT32x4, - VertexFormat.FLOAT32x3.bytes.toLong(), + VertexFormat.float32x4, + VertexFormat.float32x3.sizeInByte.toLong(), 1, VertexAttrUsage.COLOR ), VertexAttribute( - VertexFormat.FLOAT32x2, - VertexFormat.FLOAT32x4.bytes.toLong() + VertexFormat.FLOAT32x3.bytes.toLong(), + VertexFormat.float32x2, + VertexFormat.float32x4.sizeInByte.toLong() + VertexFormat.float32x3.sizeInByte.toLong(), 2, VertexAttrUsage.TEX_COORDS ) @@ -101,7 +101,7 @@ fun positionMesh( ): Mesh { return mesh( device, - listOf(VertexAttribute(VertexFormat.FLOAT32x3, 0, 0, VertexAttrUsage.POSITION)), + listOf(VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION)), size, generate ) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt index f4ce4a956..c5032c229 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt @@ -8,7 +8,7 @@ import com.littlekt.graphics.webgpu.VertexFormat * * @see VertexFormat.bytes */ -fun List.calculateStride(): Int = sumOf { it.format.bytes } +fun List.calculateStride(): Int = sumOf { it.format.sizeInByte } /** * Calculates the number of components in the list of [VertexAttribute] by summing up the components diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/BatchExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/BatchExt.kt index b98488b3d..05ab8865d 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/BatchExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/BatchExt.kt @@ -1,7 +1,7 @@ package com.littlekt.graphics.g2d -import com.littlekt.graphics.webgpu.RenderPassEncoder import com.littlekt.math.Mat4 +import io.ygdrasil.wgpu.RenderPassEncoder import kotlin.contracts.ExperimentalContracts import kotlin.contracts.InvocationKind import kotlin.contracts.contract diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt index 88659158c..63a8c2cf2 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt @@ -2,10 +2,15 @@ package com.littlekt.graphics.g2d import com.littlekt.graphics.Texture import com.littlekt.graphics.shader.SpriteShader -import com.littlekt.graphics.webgpu.BindGroupLayoutEntry import io.ygdrasil.wgpu.Device import com.littlekt.util.align +import io.ygdrasil.wgpu.BindGroup +import io.ygdrasil.wgpu.BindGroupDescriptor +import io.ygdrasil.wgpu.BindGroupDescriptor.BindGroupEntry import io.ygdrasil.wgpu.BindGroupLayoutDescriptor +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.* +import io.ygdrasil.wgpu.RenderPassEncoder import io.ygdrasil.wgpu.ShaderStage /** @@ -64,10 +69,10 @@ class SpriteBatchShader(device: Device, cameraDynamicSize: Int = 50) : listOf( BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry( + Entry( 0, - ShaderStage.vertex, - BindGroupLayoutDescriptor.Entry.BufferBindingLayout( + setOf(ShaderStage.vertex), + BufferBindingLayout( hasDynamicOffset = true, minBindingSize = (Float.SIZE_BYTES * 16) @@ -79,8 +84,12 @@ class SpriteBatchShader(device: Device, cameraDynamicSize: Int = 50) : ), BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry(0, ShaderStage.FRAGMENT, TextureBindingLayout()), - BindGroupLayoutEntry(1, ShaderStage.FRAGMENT, SamplerBindingLayout()) + Entry(0, setOf(ShaderStage.fragment), + TextureBindingLayout() + ), + Entry(1, setOf(ShaderStage.fragment), + SamplerBindingLayout() + ) ) ) ), diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt index 131efe274..f08437a8c 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt @@ -20,8 +20,13 @@ import com.littlekt.math.geom.radians import com.littlekt.util.datastructure.fastForEach import io.ygdrasil.wgpu.BindGroup import io.ygdrasil.wgpu.BufferUsage +import io.ygdrasil.wgpu.ColorWriteMask import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.PrimitiveTopology +import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState +import io.ygdrasil.wgpu.RenderPipelineDescriptor.VertexState import io.ygdrasil.wgpu.TextureFormat import io.ygdrasil.wgpu.VertexFormat import kotlinx.atomicfu.atomic @@ -55,8 +60,8 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 usage = VertexAttrUsage.POSITION ), VertexAttribute( - format = VertexFormat.FLOAT32x2, - offset = VertexFormat.FLOAT32x3.bytes.toLong(), + format = VertexFormat.float32x2, + offset = VertexFormat.float32x3.sizeInByte.toLong(), shaderLocation = 1, usage = VertexAttrUsage.TEX_COORDS ) @@ -473,23 +478,23 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 VertexState( module = shader.shaderModule, entryPoint = shader.vertexEntryPoint, - buffer = mesh.geometry.layout.gpuVertexBufferLayout + buffers = listOf(mesh.geometry.layout.gpuVertexBufferLayout) ), fragment = FragmentState( module = shader.shaderModule, entryPoint = shader.fragmentEntryPoint, - target = - ColorTargetState( - format = format, - blendState = blendState, - writeMask = ColorWriteMask.ALL - ) + targets = listOf( + FragmentState.ColorTargetState( + format = format, + blend = blendState, + writeMask = ColorWriteMask.all + )) ), - primitive = PrimitiveState(topology = PrimitiveTopology.TRIANGLE_LIST), + primitive = RenderPipelineDescriptor.PrimitiveState(topology = PrimitiveTopology.trianglelist), depthStencil = null, multisample = - MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) + RenderPipelineDescriptor.MultisampleState(count = 1, mask = 0xFFFFFFFu, alphaToCoverageEnabled = false) ) } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt index c2f860425..e8bcb5fcb 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt @@ -17,17 +17,6 @@ import com.littlekt.graphics.webgpu.* */ expect class Device : Releasable { - /** @return a newly created [ShaderModule] using WGSL source code. */ - fun createShaderModule(src: String): ShaderModule - - /** @return a newly created [RenderPipeline]. */ - fun createRenderPipeline(desc: RenderPipelineDescriptor): RenderPipeline - - /** @return a newly created [ComputePipeline] */ - fun createComputePipeline(desc: ComputePipelineDescriptor): ComputePipeline - - /** @return a newly created [PipelineLayout]. */ - fun createPipelineLayout(desc: PipelineLayoutDescriptor): PipelineLayout /** * @param debug label for a [CommandEncoder]. @@ -819,16 +808,6 @@ data class BufferDescriptor( val mappedAtCreation: Boolean ) -/** - * Handle to a GPU-accessible buffer. - * - * Create with [Device.createBuffer]. - * - * @see [Device.createGPUFloatBuffer] - * @see [Device.createGPUIntBuffer] - * @see [Device.createGPUShortBuffer] - * @see [Device.createGPUByteBuffer] - */ expect class GPUBuffer : Releasable { /** The length of the buffer allocation in bytes. */ diff --git a/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt b/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt index ec6267c2a..282678fcc 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt @@ -3,8 +3,12 @@ package com.littlekt import com.littlekt.graphics.Cursor import com.littlekt.graphics.HdpiMode import com.littlekt.graphics.SystemCursor -import com.littlekt.graphics.webgpu.* import com.littlekt.log.Logger +import io.ygdrasil.wgpu.Adapter +import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.Surface +import io.ygdrasil.wgpu.WGPU +import io.ygdrasil.wgpu.WGPU.Companion import java.lang.foreign.Arena import java.lang.foreign.MemorySegment import kotlinx.atomicfu.atomic @@ -42,7 +46,7 @@ class LwjglGraphics(private val context: LwjglContext) : Graphics, Releasable { override val backBufferHeight: Int get() = _backBufferHeight - internal var instance: Instance = Instance(WGPU_NULL) + internal var instance: Instance = WGPU.createInstance() ?: error("fail to wgpu instance") override var surface: Surface = Surface(WGPU_NULL) override var adapter: Adapter = Adapter(WGPU_NULL) diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt index e90c2a3d8..ad3fda3b7 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt @@ -159,7 +159,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { ) val computePipelineLayout = device.createPipelineLayout( - PipelineLayoutDescriptor(computeBindGroupLayout, "compute pipeline layout") + PipelineLayoutDescriptor(listOf(computeBindGroupLayout), "compute pipeline layout") ) val computePipeline = device.createComputePipeline( @@ -259,7 +259,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { onResize { width, height -> graphics.configureSurface( - setOf(TextureUsage.renderattachment), + setOf(TextureUsage.renderAttachment), preferredFormat, PresentMode.fifo, surfaceCapabilities.alphaModes[0] @@ -294,13 +294,11 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { val renderPassDescriptor = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, loadOp = LoadOp.clear, storeOp = StoreOp.store, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + clearValue = Color.DARK_GRAY ) ), label = "Init render pass" @@ -322,12 +320,11 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { passEncoder.setVertexBuffer(1, spriteVertexBuffer) passEncoder.draw(3, numParticles, 0, 0) passEncoder.end() - passEncoder.close() } val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() fidx++ From a29091014f5e9239b7a35bd34deba90828723588 Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Tue, 24 Sep 2024 00:57:25 +0200 Subject: [PATCH 10/22] Remove unused WebGPU-related code and imports This commit eliminates redundant WebGPU graphics and surface handling code from the `core` and `examples` directories. It also removes unnecessary imports, streamlining the codebase and improving maintainability. --- build.gradle.kts | 8 + .../com/littlekt/graphics/webgpu/webgpu.kt | 141 ---- .../kotlin/com/littlekt/WebGPUContext.kt | 4 +- .../com/littlekt/graphics/webgpu/webgpu.js.kt | 175 +---- .../littlekt/graphics/webgpu/webgpu.jvm.kt | 617 +----------------- ...derSpriteBatchAndMultipleShadersExample.kt | 57 +- .../kotlin/com/littlekt/examples/utils.kt | 5 +- 7 files changed, 49 insertions(+), 958 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 18b0ecc62..703347b51 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -20,3 +20,11 @@ allprojects { plugins.withType { the().apply { yarnLockMismatchReport = YarnLockMismatchReport.WARNING } } + +// TODO: remove later +configurations.all { + resolutionStrategy { + cacheChangingModulesFor(0, "seconds") + cacheDynamicVersionsFor(0, "minutes") + } +} \ No newline at end of file diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt index e8bcb5fcb..7b1adef5e 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt @@ -18,76 +18,21 @@ import com.littlekt.graphics.webgpu.* expect class Device : Releasable { - /** - * @param debug label for a [CommandEncoder]. - * @return a newly created, empty [CommandEncoder]. - */ - fun createCommandEncoder(label: String? = null): CommandEncoder - /** @return a newly created [GPUBuffer]. */ fun createBuffer(desc: BufferDescriptor): GPUBuffer - /** @return a newly created [BindGroupLayout]. */ - fun createBindGroupLayout(desc: BindGroupLayoutDescriptor): BindGroupLayout - - /** @return a newly created [BindGroup]. */ - fun createBindGroup(desc: BindGroupDescriptor): BindGroup - /** @return a newly created [Sampler]. */ fun createSampler(desc: SamplerDescriptor): Sampler /** @return a newly created [WebGPUTexture]. */ fun createTexture(desc: TextureDescriptor): WebGPUTexture - /** - * This uses [createBuffer] internally, maps it at creation, and unmaps it immediately. - * - * @return a newly created [GPUBuffer] using an [ShortArray]. - */ - fun createGPUShortBuffer(label: String, data: ShortArray, usage: BufferUsage): GPUBuffer - - /** - * This uses [createBuffer] internally, maps it at creation, and unmaps it immediately. - * - * @return a newly created [GPUBuffer] using a [FloatArray]. - */ - fun createGPUFloatBuffer(label: String, data: FloatArray, usage: BufferUsage): GPUBuffer - - /** - * This uses [createBuffer] internally, maps it at creation, and unmaps it immediately. - * - * @return a newly created [GPUBuffer] using an [IntArray]. - */ - fun createGPUIntBuffer(label: String, data: IntArray, usage: BufferUsage): GPUBuffer - - /** - * This uses [createBuffer] internally, maps it at creation, and unmaps it immediately. - * - * @return a newly created [GPUBuffer] using a [ByteArray]. - */ - fun createGPUByteBuffer(label: String, data: ByteArray, usage: BufferUsage): GPUBuffer - override fun release() } /** A handle to a physical graphics and/or compute device. */ expect class Adapter : Releasable { - /** The features which can be used to create devices on this adapter. */ - val features: List - /** - * The best limits which can be used to create devices on this adapter. Each adapter limit must - * be the same or better than its default value in supported limits. - */ - val limits: Limits - - /** - * Requests a connection to a physical device, creating a logical device. - * - * @param descriptor a [DeviceDescriptor] describing the required support a [Device] should have - * @return the [Device] together with a [Queue] that executes command buffers. - */ - suspend fun requestDevice(descriptor: DeviceDescriptor? = null): Device /** Release the memory held by the adapter. */ override fun release() @@ -630,81 +575,6 @@ data class Extent3D(val width: Int, val height: Int, val depth: Int) */ data class Origin3D(val x: Int, val y: Int, val z: Int) -/** - * A handle to a presentable surface. - * - * A `Surface` represents a platform-specific surface (e.g. a window) onto which rendered images may - * be presented. - */ -expect class Surface : Releasable { - - /** Initializes [Surface] for presentation. */ - fun configure(configuration: SurfaceConfiguration) - - /** @return the capabilities of the surface when used with the given [adapter]. */ - fun getCapabilities(adapter: Adapter): SurfaceCapabilities - - /** @return the optimal [TextureFormat] for displaying on the given [Adapter] */ - fun getPreferredFormat(adapter: Adapter): TextureFormat - - /** - * In order to present the [SurfaceTexture] returned by this function, first a [Queue.submit] - * needs to be done with some work rendering to this texture. Then [present] needs to be called. - * - * @return the next [SurfaceTexture] to be presented by the swapchain for drawing. - */ - fun getCurrentTexture(): SurfaceTexture - - /** - * Schedule the underlying [SurfaceTexture] to be presented on this surface. - * - * Needs to be called after any work on the texture is scheduled via [Queue.submit] - */ - fun present() - - /** Release this memory held by this surface. */ - override fun release() -} - -/** Defines the capabilities of a given surface and adapter. */ -expect class SurfaceCapabilities { - /** - * List of supported formats to use with a given adapter. The first format is usually the - * preferred. - */ - val formats: List - - /** List of supported presentation modes to use with the given adapter. */ - val alphaModes: List -} - -/** - * Describes a [Surface]. For use with [Surface.configure]. - * - * @param device the device of the surface - * @param usage the usage of the swap chain. The only supported usage is - * [TextureUsage.RENDER_ATTACHMENT]. - * @param format the texture format of the swap chain. The only formats that are guaranteed are - * [TextureFormat.BGRA8_UNORM] and [TextureFormat.BGRA8_UNORM_SRGB]. - * @param presentMode Presentation mode of the swap chain. Fifo is the only mode guaranteed to be - * supported. FifoRelaxed, Imeediate, and Mailbox will crash if unsupported, while AutoVsync and - * AutoNoVsync will gracefully do a designed sets of fallbacks if their primary modes are - * unsupported. - * @param alphaMode specifies how the alpha channel of textures should be handled during - * compositing. - * @param width width of the swap chain - * @param height height of the swap chain - */ -data class SurfaceConfiguration( - val device: Device, - val usage: TextureUsage, - val format: TextureFormat, - val presentMode: PresentMode, - val alphaMode: AlphaMode, - val width: Int, - val height: Int, -) - /** * Describes a [TextureView]. * @@ -760,19 +630,8 @@ data class TextureDescriptor( val label: String? = null ) -/** A texture that can be rendered to. Result of a successful call to [Surface.getCurrentTexture] */ -expect class SurfaceTexture { - /** The accessible view of the frame. */ - val texture: WebGPUTexture? - - /** The current status of the texture */ - val status: TextureStatus -} - /** Handle to a texture on the GPU. It can be created with [Device.createTexture]. */ expect class WebGPUTexture : Releasable { - /** Creates a view of this texture. */ - fun createView(desc: TextureViewDescriptor? = null): TextureView override fun release() diff --git a/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt b/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt index 1560dfbbd..81224828e 100644 --- a/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt +++ b/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt @@ -6,7 +6,6 @@ import com.littlekt.file.* import com.littlekt.file.vfs.VfsFile import com.littlekt.graphics.webgpu.Adapter import com.littlekt.graphics.webgpu.GPURequestAdapterOptions -import com.littlekt.graphics.webgpu.navigator import com.littlekt.input.JsInput import com.littlekt.log.Logger import com.littlekt.resources.internal.InternalResources @@ -15,7 +14,6 @@ import kotlin.time.Duration.Companion.milliseconds import kotlinx.browser.document import kotlinx.browser.window import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.await import kotlinx.coroutines.launch import org.w3c.dom.HTMLCanvasElement @@ -64,7 +62,7 @@ class WebGPUContext(override val configuration: JsConfiguration) : Context() { val adapterOptions = GPURequestAdapterOptions { powerPreference = configuration.powerPreference.nativeFlag } - graphics.adapter = Adapter(navigator.gpu.requestAdapter(adapterOptions).await()) + graphics.adapter = Adapter() graphics.device = graphics.adapter.requestDevice() if (configuration.loadInternalResources) { InternalResources.createInstance(this@WebGPUContext) diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt index 4c7f5b94c..322e6020e 100644 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt +++ b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt @@ -4,44 +4,15 @@ import com.littlekt.Releasable import com.littlekt.file.* import com.littlekt.resources.BufferResourceInfo import com.littlekt.resources.TextureResourceInfo -import kotlinx.coroutines.await import org.khronos.webgl.ArrayBuffer import org.khronos.webgl.Uint8Array actual class Device(val delegate: GPUDevice) : Releasable { - actual fun createShaderModule(src: String): ShaderModule { - return ShaderModule(delegate.createShaderModule(GPUShaderModuleDescriptor { code = src })) - } - - actual fun createRenderPipeline(desc: RenderPipelineDescriptor): RenderPipeline { - return RenderPipeline(delegate.createRenderPipeline(desc.toNative())) - } - - actual fun createComputePipeline(desc: ComputePipelineDescriptor): ComputePipeline { - return ComputePipeline(delegate.createComputePipeline(desc.toNative())) - } - - actual fun createPipelineLayout(desc: PipelineLayoutDescriptor): PipelineLayout { - return PipelineLayout(delegate.createPipelineLayout(desc.toNative())) - } - - actual fun createCommandEncoder(label: String?): CommandEncoder { - return CommandEncoder(delegate.createCommandEncoder(GPUObjectBase { this.label = label })) - } - actual fun createBuffer(desc: BufferDescriptor): GPUBuffer { return GPUBuffer(delegate.createBuffer(desc.toNative()), desc.size) } - actual fun createBindGroupLayout(desc: BindGroupLayoutDescriptor): BindGroupLayout { - return BindGroupLayout(delegate.createBindGroupLayout(desc.toNative())) - } - - actual fun createBindGroup(desc: BindGroupDescriptor): BindGroup { - return BindGroup(delegate.createBindGroup(desc.toNative())) - } - actual fun createSampler(desc: SamplerDescriptor): Sampler { return Sampler(delegate.createSampler(desc.toNative())) } @@ -52,112 +23,10 @@ actual class Device(val delegate: GPUDevice) : Releasable { return WebGPUTexture(delegate.createTexture(desc.toNative()), textureSize) } - actual fun createGPUShortBuffer( - label: String, - data: ShortArray, - usage: BufferUsage - ): GPUBuffer { - val buffer = - createBuffer( - BufferDescriptor(label, data.size.toLong() * Short.SIZE_BYTES, usage, true) - ) - buffer.getMappedRange(0, buffer.size).putShort(data) - buffer.unmap() - - return buffer - } - - actual fun createGPUFloatBuffer( - label: String, - data: FloatArray, - usage: BufferUsage - ): GPUBuffer { - val buffer = - createBuffer( - BufferDescriptor(label, data.size.toLong() * Float.SIZE_BYTES, usage, true) - ) - buffer.getMappedRange(0, buffer.size).putFloat(data) - buffer.unmap() - - return buffer - } - - actual fun createGPUIntBuffer(label: String, data: IntArray, usage: BufferUsage): GPUBuffer { - val buffer = - createBuffer(BufferDescriptor(label, data.size.toLong() * Int.SIZE_BYTES, usage, true)) - buffer.getMappedRange(0, buffer.size).putInt(data) - buffer.unmap() - - return buffer - } - - actual fun createGPUByteBuffer(label: String, data: ByteArray, usage: BufferUsage): GPUBuffer { - val buffer = createBuffer(BufferDescriptor(label, data.size.toLong(), usage, true)) - buffer.getMappedRange(0, buffer.size).putByte(data) - buffer.unmap() - - return buffer - } - actual override fun release() {} } -actual class Adapter(val delegate: GPUAdapter) : Releasable { - - actual val features: List by lazy { - val results = mutableListOf() - val jsFeatures = delegate.features - Feature.entries.forEach { feature -> - if (jsFeatures.has(feature.nativeVal) as Boolean) { - results += feature - } - } - results.toList() - } - - actual val limits: Limits by lazy { - val jsLimits = delegate.limits - Limits( - maxTextureDimension1D = jsLimits.maxTextureDimension1D, - maxTextureDimension2D = jsLimits.maxTextureDimension2D, - maxTextureDimension3D = jsLimits.maxTextureDimension3D, - maxTextureArrayLayers = jsLimits.maxTextureArrayLayers, - maxBindGroups = jsLimits.maxBindGroups, - maxBindGroupsPlusVertexBuffers = jsLimits.maxBindGroupsPlusVertexBuffers, - maxBindingsPerBindGroup = jsLimits.maxBindingsPerBindGroup, - maxDynamicUniformBuffersPerPipelineLayout = - jsLimits.maxDynamicUniformBuffersPerPipelineLayout, - maxDynamicStorageBuffersPerPipelineLayout = - jsLimits.maxDynamicStorageBuffersPerPipelineLayout, - maxSampledTexturesPerShaderStage = jsLimits.maxSampledTexturesPerShaderStage, - maxSamplersPerShaderStage = jsLimits.maxSamplersPerShaderStage, - maxStorageBuffersPerShaderStage = jsLimits.maxStorageBuffersPerShaderStage, - maxStorageTexturesPerShaderStage = jsLimits.maxStorageTexturesPerShaderStage, - maxUniformBuffersPerShaderStage = jsLimits.maxUniformBuffersPerShaderStage, - maxUniformBufferBindingSize = jsLimits.maxUniformBufferBindingSize, - maxStorageBufferBindingSize = jsLimits.maxStorageBufferBindingSize, - minUniformBufferOffsetAlignment = jsLimits.minUniformBufferOffsetAlignment, - minStorageBufferOffsetAlignment = jsLimits.minStorageBufferOffsetAlignment, - maxVertexBuffers = jsLimits.maxVertexBuffers, - maxBufferSize = jsLimits.maxBufferSize, - maxVertexAttributes = jsLimits.maxVertexAttributes, - maxVertexBufferArrayStride = jsLimits.maxVertexBufferArrayStride, - maxInterStageShaderComponents = jsLimits.maxInterStageShaderComponents, - maxInterStageShaderVariables = jsLimits.maxInterStageShaderVariables, - maxColorAttachments = jsLimits.maxColorAttachments, - maxColorAttachmentBytesPerSample = jsLimits.maxColorAttachmentBytesPerSample, - maxComputeWorkgroupStorageSize = jsLimits.maxComputeWorkgroupStorageSize, - maxComputeInvocationsPerWorkgroup = jsLimits.maxComputeInvocationsPerWorkgroup, - maxComputeWorkgroupSizeX = jsLimits.maxComputeWorkgroupSizeX, - maxComputeWorkgroupSizeY = jsLimits.maxComputeWorkgroupSizeY, - maxComputeWorkgroupSizeZ = jsLimits.maxComputeWorkgroupSizeZ, - maxComputeWorkgroupsPerDimension = jsLimits.maxComputeWorkgroupsPerDimension, - ) - } - - actual suspend fun requestDevice(descriptor: DeviceDescriptor?): Device { - return Device(delegate.requestDevice(descriptor?.toNative()).await()) - } +actual class Adapter : Releasable { actual override fun release() {} } @@ -252,52 +121,10 @@ actual class ShaderModule(val delegate: GPUShaderModule) : Releasable { actual override fun release() {} } -actual class Surface(val delegate: GPU, val canvas: GPUCanvasContext) : Releasable { - actual fun configure(configuration: SurfaceConfiguration) { - canvas.configure(configuration.toNative()) - } - - actual fun getCapabilities(adapter: Adapter): SurfaceCapabilities { - return SURFACE_CAPABILITIES - } - - actual fun getPreferredFormat(adapter: Adapter): TextureFormat { - val format = delegate.getPreferredCanvasFormat() - return TextureFormat.from(format) ?: error("Unsupported canvas format: $format") - } - - actual fun getCurrentTexture(): SurfaceTexture { - return SurfaceTexture(WebGPUTexture(canvas.getCurrentTexture(), 0L)) - } - - actual fun present() {} - - actual override fun release() {} - - companion object { - private val SURFACE_CAPABILITIES = SurfaceCapabilities() - } -} - -actual class SurfaceCapabilities { - actual val formats: List = - listOf(TextureFormat.BGRA8_UNORM, TextureFormat.RGBA8_UNORM, TextureFormat.RGBA16_FLOAT) - - actual val alphaModes: List = listOf(AlphaMode.OPAQUE, AlphaMode.PREMULTIPLIED) -} - -actual class SurfaceTexture(actual val texture: WebGPUTexture?) { - actual val status: TextureStatus = TextureStatus.SUCCESS -} - actual class WebGPUTexture(val delegate: GPUTexture, size: Long) : Releasable { private val info = TextureResourceInfo(this, size) - actual fun createView(desc: TextureViewDescriptor?): TextureView { - return TextureView(delegate.createView(desc?.toNative())) - } - actual override fun release() { destroy() } diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt index e2685f85e..70cb6c651 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt @@ -11,238 +11,9 @@ import java.lang.foreign.Arena import java.lang.foreign.MemorySegment import java.lang.foreign.SegmentAllocator import java.lang.foreign.ValueLayout -import kotlinx.atomicfu.atomic -import kotlinx.atomicfu.update actual class Device(val segment: MemorySegment) : Releasable { - - actual fun createShaderModule(src: String): ShaderModule { - return Arena.ofConfined().use { scope -> - val desc = WGPUShaderModuleDescriptor.allocate(scope) - val wgsl = WGPUShaderModuleWGSLDescriptor.allocate(scope) - val wgslChain = WGPUShaderModuleWGSLDescriptor.chain(wgsl) - - WGPUChainedStruct.next(wgslChain, WGPU_NULL) - WGPUChainedStruct.sType(wgslChain, WGPUSType_ShaderModuleWGSLDescriptor()) - WGPUShaderModuleWGSLDescriptor.code(wgsl, scope.allocateFrom(src)) - WGPUShaderModuleDescriptor.nextInChain(desc, wgslChain) - ShaderModule(wgpuDeviceCreateShaderModule(segment, desc)) - } - } - - actual fun createRenderPipeline(desc: RenderPipelineDescriptor): RenderPipeline { - return Arena.ofConfined().use { scope -> - val fragDesc = - if (desc.fragment != null) { - val fragDesc = WGPUFragmentState.allocate(scope) - WGPUFragmentState.module(fragDesc, desc.fragment.module.segment) - WGPUFragmentState.entryPoint( - fragDesc, - desc.fragment.entryPoint.toNativeString(scope) - ) - - val targets = - WGPUColorTargetState.allocateArray( - desc.fragment.targets.size.toLong(), - scope - ) - desc.fragment.targets.forEach { colorTargetState -> - if (colorTargetState.blendState == null) { - TODO("Null blend states aren't currently supported.") - } - val blendState = WGPUBlendState.allocate(scope) - val colorBlend = WGPUBlendState.color(blendState) - val alphaBlend = WGPUBlendState.alpha(blendState) - WGPUBlendComponent.srcFactor( - colorBlend, - colorTargetState.blendState.color.srcFactor.nativeVal - ) - WGPUBlendComponent.dstFactor( - colorBlend, - colorTargetState.blendState.color.dstFactor.nativeVal - ) - WGPUBlendComponent.operation( - colorBlend, - colorTargetState.blendState.color.operation.nativeVal - ) - WGPUBlendComponent.srcFactor( - alphaBlend, - colorTargetState.blendState.alpha.srcFactor.nativeVal - ) - WGPUBlendComponent.dstFactor( - alphaBlend, - colorTargetState.blendState.alpha.dstFactor.nativeVal - ) - WGPUBlendComponent.operation( - alphaBlend, - colorTargetState.blendState.alpha.operation.nativeVal - ) - - WGPUColorTargetState.format(targets, colorTargetState.format.nativeVal) - WGPUColorTargetState.writeMask( - targets, - colorTargetState.writeMask.usageFlag - ) - WGPUColorTargetState.blend(targets, blendState) - } - WGPUFragmentState.targets(fragDesc, targets) - WGPUFragmentState.targetCount(fragDesc, desc.fragment.targets.size.toLong()) - fragDesc - } else { - WGPU_NULL - } - - val buffers = - desc.vertex.buffers.mapToNativeEntries( - scope, - WGPUVertexBufferLayout.sizeof(), - WGPUVertexBufferLayout::allocateArray - ) { bufferLayout, nativeBufferLayout -> - val attributes = - bufferLayout.attributes.mapToNativeEntries( - scope, - WGPUVertexAttribute.sizeof(), - WGPUVertexAttribute::allocateArray - ) { attribute, nativeAttribute -> - WGPUVertexAttribute.shaderLocation( - nativeAttribute, - attribute.shaderLocation - ) - WGPUVertexAttribute.format(nativeAttribute, attribute.format.nativeVal) - WGPUVertexAttribute.offset(nativeAttribute, attribute.offset) - } - - WGPUVertexBufferLayout.arrayStride(nativeBufferLayout, bufferLayout.arrayStride) - WGPUVertexBufferLayout.stepMode( - nativeBufferLayout, - bufferLayout.stepMode.nativeVal - ) - WGPUVertexBufferLayout.attributeCount( - nativeBufferLayout, - bufferLayout.attributes.size.toLong() - ) - WGPUVertexBufferLayout.attributes(nativeBufferLayout, attributes) - } - - val descriptor = WGPURenderPipelineDescriptor.allocate(scope) - val vertexState = WGPURenderPipelineDescriptor.vertex(descriptor) - val primitiveState = WGPURenderPipelineDescriptor.primitive(descriptor) - val multisampleState = WGPURenderPipelineDescriptor.multisample(descriptor) - - WGPURenderPipelineDescriptor.label( - descriptor, - desc.label?.toNativeString(scope) ?: WGPU_NULL - ) - WGPURenderPipelineDescriptor.layout(descriptor, desc.layout.segment) - - WGPUVertexState.module(vertexState, desc.vertex.module.segment) - WGPUVertexState.entryPoint(vertexState, desc.vertex.entryPoint.toNativeString(scope)) - WGPUVertexState.buffers(vertexState, buffers) - WGPUVertexState.bufferCount(vertexState, desc.vertex.buffers.size.toLong()) - - WGPUPrimitiveState.topology(primitiveState, desc.primitive.topology.nativeVal) - WGPUPrimitiveState.stripIndexFormat( - primitiveState, - desc.primitive.stripIndexFormat?.nativeVal ?: WGPUIndexFormat_Undefined() - ) - WGPUPrimitiveState.frontFace(primitiveState, desc.primitive.frontFace.nativeVal) - WGPUPrimitiveState.cullMode(primitiveState, desc.primitive.cullMode.nativeVal) - - desc.depthStencil?.let { - val depthStencilState = WGPUDepthStencilState.allocate(scope) - WGPUDepthStencilState.format(depthStencilState, it.format.nativeVal) - WGPUDepthStencilState.depthWriteEnabled( - depthStencilState, - it.depthWriteEnabled.toInt() - ) - WGPUDepthStencilState.depthCompare(depthStencilState, it.depthCompare.nativeVal) - WGPUDepthStencilState.stencilReadMask(depthStencilState, it.stencil.readMask) - WGPUDepthStencilState.stencilWriteMask(depthStencilState, it.stencil.writeMask) - WGPUDepthStencilState.depthBias(depthStencilState, it.bias.constant) - WGPUDepthStencilState.depthBiasSlopeScale(depthStencilState, it.bias.slopeScale) - WGPUDepthStencilState.depthBiasClamp(depthStencilState, it.bias.clamp) - - val stencilFront = WGPUDepthStencilState.stencilFront(depthStencilState) - WGPUStencilFaceState.compare(stencilFront, it.stencil.front.compare.nativeVal) - WGPUStencilFaceState.failOp(stencilFront, it.stencil.front.failOp.nativeVal) - WGPUStencilFaceState.depthFailOp( - stencilFront, - it.stencil.front.depthFailOp.nativeVal - ) - WGPUStencilFaceState.passOp(stencilFront, it.stencil.front.passOp.nativeVal) - - val stencilBack = WGPUDepthStencilState.stencilBack(depthStencilState) - WGPUStencilFaceState.compare(stencilBack, it.stencil.back.compare.nativeVal) - WGPUStencilFaceState.failOp(stencilBack, it.stencil.back.failOp.nativeVal) - WGPUStencilFaceState.depthFailOp(stencilBack, it.stencil.back.depthFailOp.nativeVal) - WGPUStencilFaceState.passOp(stencilBack, it.stencil.back.passOp.nativeVal) - - WGPURenderPipelineDescriptor.depthStencil(descriptor, depthStencilState) - } - - WGPUMultisampleState.count(multisampleState, desc.multisample.count) - WGPUMultisampleState.mask(multisampleState, desc.multisample.mask) - WGPUMultisampleState.alphaToCoverageEnabled( - multisampleState, - desc.multisample.alphaToCoverageEnabled.toInt() - ) - - WGPURenderPipelineDescriptor.fragment(descriptor, fragDesc) - - RenderPipeline(wgpuDeviceCreateRenderPipeline(segment, descriptor)) - } - } - - actual fun createComputePipeline(desc: ComputePipelineDescriptor): ComputePipeline { - return Arena.ofConfined().use { scope -> - val wgpuDesc = WGPUComputePipelineDescriptor.allocate(scope) - - val computeDesc = WGPUProgrammableStageDescriptor.allocate(scope) - WGPUProgrammableStageDescriptor.entryPoint( - computeDesc, - desc.compute.entryPoint.toNativeString(scope) - ) - WGPUProgrammableStageDescriptor.module(computeDesc, desc.compute.module.segment) - - WGPUComputePipelineDescriptor.layout(wgpuDesc, desc.layout.segment) - WGPUComputePipelineDescriptor.compute(wgpuDesc, computeDesc) - WGPUComputePipelineDescriptor.label( - wgpuDesc, - desc.label?.toNativeString(scope) ?: WGPU_NULL - ) - - ComputePipeline(wgpuDeviceCreateComputePipeline(segment, wgpuDesc)) - } - } - - actual fun createPipelineLayout(desc: PipelineLayoutDescriptor): PipelineLayout { - return Arena.ofConfined().use { scope -> - val wgpuDesc = WGPUPipelineLayoutDescriptor.allocate(scope) - WGPUPipelineLayoutDescriptor.bindGroupLayouts( - wgpuDesc, - desc.segments.toNativeArray(scope) - ) - WGPUPipelineLayoutDescriptor.bindGroupLayoutCount(wgpuDesc, desc.segments.size.toLong()) - WGPUPipelineLayoutDescriptor.label( - wgpuDesc, - desc.label?.toNativeString(scope) ?: WGPU_NULL - ) - PipelineLayout(wgpuDeviceCreatePipelineLayout(segment, wgpuDesc)) - } - } - - actual fun createCommandEncoder(label: String?): CommandEncoder { - return Arena.ofConfined().use { scope -> - val descriptor = WGPUCommandEncoderDescriptor.allocate(scope) - WGPUCommandEncoderDescriptor.label( - descriptor, - label?.toNativeString(scope) ?: WGPU_NULL - ) - CommandEncoder(wgpuDeviceCreateCommandEncoder(segment, descriptor)) - } - } - actual fun createBuffer(desc: BufferDescriptor): GPUBuffer { return Arena.ofConfined().use { scope -> val descriptor = WGPUBufferDescriptor.allocate(scope) @@ -255,77 +26,6 @@ actual class Device(val segment: MemorySegment) : Releasable { } } - actual fun createBindGroupLayout(desc: BindGroupLayoutDescriptor): BindGroupLayout { - return Arena.ofConfined().use { scope -> - val descriptor = WGPUBindGroupLayoutDescriptor.allocate(scope) - WGPUBindGroupLayoutDescriptor.label( - descriptor, - desc.label?.toNativeString(scope) ?: WGPU_NULL - ) - val entries = - desc.entries.mapToNativeEntries( - scope, - WGPUBindGroupLayoutEntry.sizeof(), - WGPUBindGroupLayoutEntry::allocateArray - ) { entry, nativeEntry -> - WGPUBindGroupLayoutEntry.binding(nativeEntry, entry.binding) - WGPUBindGroupLayoutEntry.visibility(nativeEntry, entry.visibility.usageFlag) - - val bufferBinding = WGPUBindGroupLayoutEntry.buffer(nativeEntry) - val samplerBinding = WGPUBindGroupLayoutEntry.sampler(nativeEntry) - val textureBinding = WGPUBindGroupLayoutEntry.texture(nativeEntry) - val storageTextureBinding = WGPUBindGroupLayoutEntry.storageTexture(nativeEntry) - - WGPUBufferBindingLayout.type(bufferBinding, WGPUBufferBindingType_Undefined()) - WGPUSamplerBindingLayout.type( - samplerBinding, - WGPUSamplerBindingType_Undefined() - ) - WGPUTextureBindingLayout.sampleType( - textureBinding, - WGPUTextureSampleType_Undefined() - ) - WGPUStorageTextureBindingLayout.access( - storageTextureBinding, - WGPUStorageTextureAccess_Undefined() - ) - - entry.bindingLayout.intoNative( - bufferBinding, - samplerBinding, - textureBinding, - storageTextureBinding - ) - } - WGPUBindGroupLayoutDescriptor.entries(descriptor, entries) - WGPUBindGroupLayoutDescriptor.entryCount(descriptor, desc.entries.size.toLong()) - BindGroupLayout(wgpuDeviceCreateBindGroupLayout(segment, descriptor)) - } - } - - actual fun createBindGroup(desc: BindGroupDescriptor): BindGroup { - return Arena.ofConfined().use { scope -> - val descriptor = WGPUBindGroupDescriptor.allocate(scope) - val entries = - desc.entries.mapToNativeEntries( - scope, - WGPUBindGroupEntry.sizeof(), - WGPUBindGroupEntry::allocateArray - ) { entry, nativeEntry -> - WGPUBindGroupEntry.binding(nativeEntry, entry.binding) - entry.resource.intoBindingResource(nativeEntry) - } - WGPUBindGroupDescriptor.label( - descriptor, - desc.label?.toNativeString(scope) ?: WGPU_NULL - ) - WGPUBindGroupDescriptor.layout(descriptor, desc.layout.segment) - WGPUBindGroupDescriptor.entries(descriptor, entries) - WGPUBindGroupDescriptor.entryCount(descriptor, desc.entries.size.toLong()) - BindGroup(wgpuDeviceCreateBindGroup(segment, descriptor)) - } - } - actual fun createSampler(desc: SamplerDescriptor): Sampler { return Arena.ofConfined().use { scope -> val descriptor = WGPUSamplerDescriptor.allocate(scope) @@ -370,53 +70,6 @@ actual class Device(val segment: MemorySegment) : Releasable { } } - actual fun createGPUShortBuffer( - label: String, - data: ShortArray, - usage: BufferUsage - ): GPUBuffer { - val buffer = - createBuffer( - BufferDescriptor(label, data.size.toLong() * Short.SIZE_BYTES, usage, true) - ) - buffer.getMappedRange().putShort(data) - buffer.unmap() - - return buffer - } - - actual fun createGPUFloatBuffer( - label: String, - data: FloatArray, - usage: BufferUsage - ): GPUBuffer { - val buffer = - createBuffer( - BufferDescriptor(label, data.size.toLong() * Float.SIZE_BYTES, usage, true) - ) - buffer.getMappedRange().putFloat(data) - buffer.unmap() - - return buffer - } - - actual fun createGPUIntBuffer(label: String, data: IntArray, usage: BufferUsage): GPUBuffer { - val buffer = - createBuffer(BufferDescriptor(label, data.size.toLong() * Int.SIZE_BYTES, usage, true)) - buffer.getMappedRange().putInt(data) - buffer.unmap() - - return buffer - } - - actual fun createGPUByteBuffer(label: String, data: ByteArray, usage: BufferUsage): GPUBuffer { - val buffer = createBuffer(BufferDescriptor(label, data.size.toLong(), usage, true)) - buffer.getMappedRange().putByte(data) - buffer.unmap() - - return buffer - } - actual override fun release() { wgpuDeviceRelease(segment) } @@ -427,179 +80,6 @@ actual class Device(val segment: MemorySegment) : Releasable { } actual class Adapter(var segment: MemorySegment) : Releasable { - /** The features which can be used to create devices on this adapter. */ - actual val features: List by lazy { - val list = mutableListOf() - Feature.entries.forEach { - val result = wgpuAdapterHasFeature(segment, it.nativeVal) - if (result == 1) { - list += it - } - } - list.toList() - } - - /** - * The best limits which can be used to create devices on this adapter. Each adapter limit must - * be the same or better than its default value in supported limits. - */ - actual val limits: Limits by lazy { - Arena.ofConfined().use { scope -> - val supported = WGPUSupportedLimits.allocate(scope) - wgpuAdapterGetLimits(segment, supported) - val desc = WGPUSupportedLimits.limits(supported) - - Limits( - maxTextureDimension1D = WGPULimits.maxTextureDimension1D(desc), - maxTextureDimension2D = WGPULimits.maxTextureDimension2D(desc), - maxTextureDimension3D = WGPULimits.maxTextureDimension3D(desc), - maxTextureArrayLayers = WGPULimits.maxTextureArrayLayers(desc), - maxBindGroups = WGPULimits.maxBindGroups(desc), - maxBindGroupsPlusVertexBuffers = WGPULimits.maxBindGroupsPlusVertexBuffers(desc), - maxBindingsPerBindGroup = WGPULimits.maxBindingsPerBindGroup(desc), - maxDynamicUniformBuffersPerPipelineLayout = - WGPULimits.maxDynamicUniformBuffersPerPipelineLayout(desc), - maxDynamicStorageBuffersPerPipelineLayout = - WGPULimits.maxDynamicStorageBuffersPerPipelineLayout(desc), - maxSampledTexturesPerShaderStage = - WGPULimits.maxSampledTexturesPerShaderStage(desc), - maxSamplersPerShaderStage = WGPULimits.maxSamplersPerShaderStage(desc), - maxStorageBuffersPerShaderStage = WGPULimits.maxStorageBuffersPerShaderStage(desc), - maxStorageTexturesPerShaderStage = - WGPULimits.maxStorageTexturesPerShaderStage(desc), - maxUniformBuffersPerShaderStage = WGPULimits.maxUniformBuffersPerShaderStage(desc), - maxUniformBufferBindingSize = WGPULimits.maxUniformBufferBindingSize(desc), - maxStorageBufferBindingSize = WGPULimits.maxStorageBufferBindingSize(desc), - minUniformBufferOffsetAlignment = WGPULimits.minUniformBufferOffsetAlignment(desc), - minStorageBufferOffsetAlignment = WGPULimits.minStorageBufferOffsetAlignment(desc), - maxVertexBuffers = WGPULimits.maxVertexBuffers(desc), - maxBufferSize = WGPULimits.maxBufferSize(desc), - maxVertexAttributes = WGPULimits.maxVertexAttributes(desc), - maxVertexBufferArrayStride = WGPULimits.maxVertexBufferArrayStride(desc), - maxInterStageShaderComponents = WGPULimits.maxInterStageShaderComponents(desc), - maxInterStageShaderVariables = WGPULimits.maxInterStageShaderVariables(desc), - maxColorAttachments = WGPULimits.maxColorAttachments(desc), - maxColorAttachmentBytesPerSample = - WGPULimits.maxColorAttachmentBytesPerSample(desc), - maxComputeWorkgroupStorageSize = WGPULimits.maxComputeWorkgroupStorageSize(desc), - maxComputeInvocationsPerWorkgroup = - WGPULimits.maxComputeInvocationsPerWorkgroup(desc), - maxComputeWorkgroupSizeX = WGPULimits.maxComputeWorkgroupSizeX(desc), - maxComputeWorkgroupSizeY = WGPULimits.maxComputeWorkgroupSizeY(desc), - maxComputeWorkgroupSizeZ = WGPULimits.maxComputeWorkgroupSizeZ(desc), - maxComputeWorkgroupsPerDimension = - WGPULimits.maxComputeWorkgroupsPerDimension(desc), - ) - } - } - - actual suspend fun requestDevice(descriptor: DeviceDescriptor?): Device { - val output = atomic(WGPU_NULL) - Arena.ofConfined().use { scope -> - val desc = WGPUDeviceDescriptor.allocate(scope) - val deviceExtras = WGPUDeviceExtras.allocate(scope) - val chainedStruct = WGPUDeviceExtras.chain(deviceExtras) - val callback = - WGPURequestDeviceCallback.allocate( - { status, device, message, _ -> - if (status == WGPURequestAdapterStatus_Success()) { - output.update { device } - } else { - logger.log(Logger.Level.ERROR) { - "requestDevice status=$status, message=${message.getString(0)}" - } - } - }, - scope - ) - - WGPUChainedStruct.sType(chainedStruct, WGPUSType_DeviceExtras()) - WGPUDeviceDescriptor.nextInChain(desc, deviceExtras) - if (descriptor != null) { - descriptor.label?.let { WGPUDeviceDescriptor.label(desc, it.toNativeString(scope)) } - descriptor.requiredFeatures?.let { - val nativeArray = scope.allocate(ValueLayout.JAVA_INT, it.size.toLong()) - it.forEachIndexed { index, jvmEntry -> - val nativeEntry = nativeArray.asSlice((Int.SIZE_BYTES * index).toLong()) - - nativeEntry.set(ValueLayout.JAVA_INT, 0L, jvmEntry.nativeVal) - } - WGPUDeviceDescriptor.requiredFeatureCount(desc, it.size.toLong()) - WGPUDeviceDescriptor.requiredFeatures(desc, nativeArray) - } - descriptor.requiredLimits?.let { requiredLimits -> - val nativeLimits = WGPULimits.allocate(scope) - requiredLimits.maxTextureDimension1D?.let { - WGPULimits.maxTextureDimension1D(nativeLimits, it) - } - requiredLimits.maxTextureDimension2D?.let { - WGPULimits.maxTextureDimension2D(nativeLimits, it) - } - requiredLimits.maxTextureDimension3D?.let { - WGPULimits.maxTextureDimension3D(nativeLimits, it) - } - requiredLimits.maxTextureArrayLayers?.let { - WGPULimits.maxTextureArrayLayers(nativeLimits, it) - } - requiredLimits.maxBindGroups?.let { WGPULimits.maxBindGroups(nativeLimits, it) } - requiredLimits.maxBindGroupsPlusVertexBuffers?.let { - WGPULimits.maxBindGroupsPlusVertexBuffers(nativeLimits, it) - } - requiredLimits.maxBindingsPerBindGroup?.let { - WGPULimits.maxBindingsPerBindGroup(nativeLimits, it) - } - requiredLimits.maxDynamicUniformBuffersPerPipelineLayout?.let { - WGPULimits.maxDynamicUniformBuffersPerPipelineLayout(nativeLimits, it) - } - requiredLimits.maxDynamicStorageBuffersPerPipelineLayout?.let { - WGPULimits.maxDynamicStorageBuffersPerPipelineLayout(nativeLimits, it) - } - requiredLimits.maxSampledTexturesPerShaderStage?.let { - WGPULimits.maxSampledTexturesPerShaderStage(nativeLimits, it) - } - requiredLimits.maxSamplersPerShaderStage?.let { - WGPULimits.maxSamplersPerShaderStage(nativeLimits, it) - } - requiredLimits.maxStorageBuffersPerShaderStage?.let { - WGPULimits.maxStorageBuffersPerShaderStage(nativeLimits, it) - } - requiredLimits.maxStorageTexturesPerShaderStage?.let { - WGPULimits.maxStorageTexturesPerShaderStage(nativeLimits, it) - } - requiredLimits.maxUniformBuffersPerShaderStage?.let { - WGPULimits.maxUniformBuffersPerShaderStage(nativeLimits, it) - } - requiredLimits.maxUniformBufferBindingSize?.let { - WGPULimits.maxUniformBufferBindingSize(nativeLimits, it) - } - requiredLimits.maxStorageBufferBindingSize?.let { - WGPULimits.maxStorageBufferBindingSize(nativeLimits, it) - } - requiredLimits.minUniformBufferOffsetAlignment?.let { - WGPULimits.minUniformBufferOffsetAlignment(nativeLimits, it) - } - requiredLimits.minStorageBufferOffsetAlignment?.let { - WGPULimits.minStorageBufferOffsetAlignment(nativeLimits, it) - } - requiredLimits.maxVertexBuffers?.let { - WGPULimits.maxVertexBuffers(nativeLimits, it) - } - requiredLimits.maxBufferSize?.let { WGPULimits.maxBufferSize(nativeLimits, it) } - requiredLimits.maxVertexAttributes?.let { - WGPULimits.maxVertexAttributes(nativeLimits, it) - } - requiredLimits.maxVertexBufferArrayStride?.let { - WGPULimits.maxVertexBufferArrayStride(nativeLimits, it) - } - val nativeRequiredLimits = WGPURequiredLimits.allocate(scope) - WGPURequiredLimits.limits(nativeRequiredLimits, nativeLimits) - } - } - - wgpuAdapterRequestDevice(segment, desc, callback, WGPU_NULL) - } - return Device(output.value) - } actual override fun release() { wgpuAdapterRelease(segment) @@ -752,95 +232,10 @@ actual class ShaderModule(val segment: MemorySegment) : Releasable { } } -actual class Surface(val segment: MemorySegment) : Releasable { - - actual fun configure(configuration: SurfaceConfiguration) { - Arena.ofConfined().use { scope -> - val desc = WGPUSurfaceConfiguration.allocate(scope) - WGPUSurfaceConfiguration.device(desc, configuration.device.segment) - WGPUSurfaceConfiguration.usage(desc, configuration.usage.usageFlag) - WGPUSurfaceConfiguration.format(desc, configuration.format.nativeVal) - WGPUSurfaceConfiguration.presentMode(desc, configuration.presentMode.nativeVal) - WGPUSurfaceConfiguration.alphaMode(desc, configuration.alphaMode.nativeVal) - WGPUSurfaceConfiguration.width(desc, configuration.width) - WGPUSurfaceConfiguration.height(desc, configuration.height) - wgpuSurfaceConfigure(segment, desc) - } - } - - actual fun getCurrentTexture(): SurfaceTexture { - val surfaceTexture: MemorySegment = WGPUSurfaceTexture.allocate(Arena.ofConfined()) - wgpuSurfaceGetCurrentTexture(segment, surfaceTexture) - val texture = - WGPUSurfaceTexture.texture(surfaceTexture).let { - if (it == WGPU_NULL) null else WebGPUTexture(it, it.byteSize()) - } - val status = - WGPUSurfaceTexture.status(surfaceTexture).let { - TextureStatus.from(it) ?: error("Invalid texture status: $it") - } - return SurfaceTexture(surfaceTexture, texture, status) - } - - actual fun present() { - wgpuSurfacePresent(segment) - } - - actual fun getCapabilities(adapter: Adapter): SurfaceCapabilities { - return Arena.ofConfined().use { scope -> - val surfaceCapabilities = WGPUSurfaceCapabilities.allocate(scope) - wgpuSurfaceGetCapabilities(segment, adapter.segment, surfaceCapabilities) - val formats = - WGPUSurfaceCapabilities.formats(surfaceCapabilities).mapFromIntUntilNull { - TextureFormat.from(it) - } - val alphaModes = - WGPUSurfaceCapabilities.alphaModes(surfaceCapabilities).mapFromIntUntilNull { - AlphaMode.from(it) - } - SurfaceCapabilities(surfaceCapabilities, formats, alphaModes) - } - } - - actual fun getPreferredFormat(adapter: Adapter): TextureFormat { - return wgpuSurfaceGetPreferredFormat(segment, adapter.segment).let { - TextureFormat.from(it) ?: error("Invalid TextureFormat: $") - } - } - - actual override fun release() { - wgpuSurfaceRelease(segment) - } -} - actual class WebGPUTexture(val segment: MemorySegment, val size: Long) : Releasable { private val info = TextureResourceInfo(this, size) - actual fun createView(desc: TextureViewDescriptor?): TextureView { - val descSeg = - if (desc != null) { - Arena.ofConfined().use { scope -> - WGPUTextureViewDescriptor.allocate(scope).also { - WGPUTextureViewDescriptor.label( - it, - desc.label?.toNativeString(scope) ?: WGPU_NULL - ) - WGPUTextureViewDescriptor.format(it, desc.format.nativeVal) - WGPUTextureViewDescriptor.dimension(it, desc.dimension.nativeVal) - WGPUTextureViewDescriptor.aspect(it, desc.aspect.nativeVal) - WGPUTextureViewDescriptor.baseMipLevel(it, desc.baseMipLevel) - WGPUTextureViewDescriptor.mipLevelCount(it, desc.mipLevelCount) - WGPUTextureViewDescriptor.baseArrayLayer(it, desc.baseArrayLayer) - WGPUTextureViewDescriptor.arrayLayerCount(it, desc.arrayLayerCount) - } - } - } else { - WGPU_NULL - } - return TextureView(wgpuTextureCreateView(segment, descSeg)) - } - actual override fun release() { wgpuTextureRelease(segment) info.delete() @@ -909,14 +304,4 @@ fun Extent3D.toNative(scope: SegmentAllocator): MemorySegment { return native } -actual class SurfaceCapabilities( - val segment: MemorySegment, - actual val formats: List, - actual val alphaModes: List -) {} - -actual class SurfaceTexture( - val segment: MemorySegment, - actual val texture: WebGPUTexture?, - actual val status: TextureStatus -) + diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt index cbc6643f6..ea4e0c348 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt @@ -7,7 +7,21 @@ import com.littlekt.graphics.Color import com.littlekt.graphics.Texture import com.littlekt.graphics.g2d.SpriteBatch import com.littlekt.graphics.shader.SpriteShader -import com.littlekt.graphics.webgpu.Device +import io.ygdrasil.wgpu.BindGroup +import io.ygdrasil.wgpu.BindGroupDescriptor +import io.ygdrasil.wgpu.BindGroupDescriptor.BindGroupEntry +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.SamplerBindingLayout +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.TextureBindingLayout +import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.RenderPassEncoder +import io.ygdrasil.wgpu.ShaderStage +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.TextureUsage /** * An example showing a [SpriteBatch] drawing multiple textures and using different shaders to @@ -62,12 +76,16 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList layout = listOf( BindGroupLayoutDescriptor( - listOf(BindGroupLayoutEntry(0, ShaderStage.VERTEX, BufferBindingLayout())) + listOf(Entry(0, ShaderStage.vertex, Entry.BufferBindingLayout())) ), BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry(0, ShaderStage.FRAGMENT, TextureBindingLayout()), - BindGroupLayoutEntry(1, ShaderStage.FRAGMENT, SamplerBindingLayout()) + Entry(0, ShaderStage.fragment, + TextureBindingLayout() + ), + Entry(1, ShaderStage.fragment, + SamplerBindingLayout() + ) ) ) ) @@ -117,9 +135,9 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList val coloredShader = ColorShader(device) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + TextureUsage.renderAttachment, preferredFormat, - PresentMode.FIFO, + PresentMode.fifo, surfaceCapabilities.alphaModes[0] ) @@ -136,9 +154,9 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList far = 1f ) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + TextureUsage.renderAttachment, preferredFormat, - PresentMode.FIFO, + PresentMode.fifo, surfaceCapabilities.alphaModes[0] ) } @@ -163,20 +181,18 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList return@onUpdate } } - val swapChainTexture = checkNotNull(surfaceTexture.texture) - val frame = swapChainTexture.createView() + val frame = surfaceTexture.createView() val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = Color.DARK_GRAY.toLinear() + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.DARK_GRAY.toLinear() ) ) ) @@ -193,14 +209,13 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + surfaceTexture.close() } onRelease { diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/utils.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/utils.kt index 5b78de70a..ba91a3475 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/utils.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/utils.kt @@ -2,11 +2,10 @@ package com.littlekt.examples import com.littlekt.Context import com.littlekt.graphics.Camera -import com.littlekt.graphics.webgpu.SurfaceConfiguration -import com.littlekt.graphics.webgpu.SurfaceTexture -import com.littlekt.graphics.webgpu.TextureStatus import com.littlekt.input.Key import com.littlekt.util.milliseconds +import io.ygdrasil.wgpu.SurfaceTexture +import io.ygdrasil.wgpu.SurfaceConfiguration fun SurfaceTexture.isValid(context: Context, onConfigure: () -> SurfaceConfiguration): Boolean { val surfaceTexture = this From 50b9fd2f439c7808df1cded2a9b8d90e13d177c5 Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Thu, 26 Sep 2024 01:31:47 +0200 Subject: [PATCH 11/22] Refactor SpriteCache WebGPU function calls Updated `setIndexBuffer` to use the correct enum value and renamed `release` method to `close`. This improves consistency and accuracy in the WebGPU function calls within the SpriteCache class. --- .../kotlin/com/littlekt/graphics/g2d/SpriteCache.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt index f08437a8c..8db550600 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt @@ -22,7 +22,10 @@ import io.ygdrasil.wgpu.BindGroup import io.ygdrasil.wgpu.BufferUsage import io.ygdrasil.wgpu.ColorWriteMask import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.IndexFormat import io.ygdrasil.wgpu.PrimitiveTopology +import io.ygdrasil.wgpu.RenderPassEncoder +import io.ygdrasil.wgpu.RenderPipeline import io.ygdrasil.wgpu.RenderPipelineDescriptor import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState @@ -216,7 +219,7 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 staticDirty = false dynamicDirty = false } - encoder.setIndexBuffer(mesh.ibo, IndexFormat.UINT16) + encoder.setIndexBuffer(mesh.ibo, IndexFormat.uint16) encoder.setVertexBuffer(0, mesh.vbo) var lastPipelineSet: RenderPipeline? = null var lastCombinedMatrixSet: Mat4? = null @@ -509,7 +512,7 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 } override fun release() { - spriteBuffer.release() + spriteBuffer.close() staticData.clear() spriteIndices.clear() } From 102378d77c5eeb2faa336f0359e81862478faa2b Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Thu, 26 Sep 2024 01:41:20 +0200 Subject: [PATCH 12/22] Refactor imports and improve shader handling Removed unused imports and cleaned up import statements. Corrected inconsistencies in enum names and refined shader update and binding methods to enhance clarity and functionality. --- .../com/littlekt/graphics/PixmapTexture.kt | 6 +- .../littlekt/graphics/VertexAttributeExt.kt | 2 - .../com/littlekt/graphics/g2d/SpriteBatch.kt | 2 +- .../graphics/g2d/SpriteBatchShader.kt | 61 ++++++----- .../com/littlekt/graphics/g2d/SpriteCache.kt | 2 +- .../littlekt/graphics/shader/SpriteShader.kt | 5 +- .../com/littlekt/graphics/webgpu/enums.kt | 100 ------------------ 7 files changed, 41 insertions(+), 137 deletions(-) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt index 7d3fd6372..82af013d1 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/PixmapTexture.kt @@ -3,9 +3,11 @@ package com.littlekt.graphics import com.littlekt.graphics.Texture.Companion.nextId import io.ygdrasil.wgpu.Texture as WebGPUTexture import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.ImageCopyTexture import io.ygdrasil.wgpu.Sampler import io.ygdrasil.wgpu.SamplerDescriptor import io.ygdrasil.wgpu.Size3D +import io.ygdrasil.wgpu.TextureDataLayout import io.ygdrasil.wgpu.TextureDescriptor import io.ygdrasil.wgpu.TextureDimension import io.ygdrasil.wgpu.TextureFormat @@ -85,9 +87,9 @@ class PixmapTexture(val device: Device, preferredFormat: TextureFormat, val pixm override fun writeDataToBuffer() { device.queue.writeTexture( + ImageCopyTexture(gpuTexture), pixmap.pixels.toArray(), - TextureCopyView(gpuTexture), - TextureDataLayout(4 * pixmap.width, pixmap.height), + TextureDataLayout((4 * pixmap.width).toLong(), pixmap.height), size ) } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt index c5032c229..2ad35e0b6 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt @@ -1,7 +1,5 @@ package com.littlekt.graphics -import com.littlekt.graphics.webgpu.VertexFormat - /** * Calculates the stride of a list [VertexAttribute] by summing up the bytes of * [VertexAttribute.format]. diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt index 6d776d45c..137f26bb8 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatch.kt @@ -742,7 +742,7 @@ class SpriteBatch( ) ) ), - primitive = PrimitiveState(topology = PrimitiveTopology.trianglelist), + primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = MultisampleState(count = 1, mask = 0xFFFFFFFu, alphaToCoverageEnabled = false) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt index 63a8c2cf2..6ca94ac0d 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt @@ -2,14 +2,14 @@ package com.littlekt.graphics.g2d import com.littlekt.graphics.Texture import com.littlekt.graphics.shader.SpriteShader -import io.ygdrasil.wgpu.Device import com.littlekt.util.align import io.ygdrasil.wgpu.BindGroup import io.ygdrasil.wgpu.BindGroupDescriptor -import io.ygdrasil.wgpu.BindGroupDescriptor.BindGroupEntry +import io.ygdrasil.wgpu.BindGroupDescriptor.* import io.ygdrasil.wgpu.BindGroupLayoutDescriptor import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.* +import io.ygdrasil.wgpu.Device import io.ygdrasil.wgpu.RenderPassEncoder import io.ygdrasil.wgpu.ShaderStage @@ -27,7 +27,7 @@ class SpriteBatchShader(device: Device, cameraDynamicSize: Int = 50) : device, // language=wgsl src = - """ + """ struct CameraUniform { view_proj: mat4x4 }; @@ -64,35 +64,37 @@ class SpriteBatchShader(device: Device, cameraDynamicSize: Int = 50) : return textureSample(my_texture, my_sampler, in.uv) * in.color; } """ - .trimIndent(), + .trimIndent(), layout = - listOf( - BindGroupLayoutDescriptor( - listOf( - Entry( - 0, - setOf(ShaderStage.vertex), - BufferBindingLayout( - hasDynamicOffset = true, - minBindingSize = - (Float.SIZE_BYTES * 16) - .align(device.limits.minUniformBufferOffsetAlignment) - .toLong() - ) - ) - ) - ), - BindGroupLayoutDescriptor( - listOf( - Entry(0, setOf(ShaderStage.fragment), - TextureBindingLayout() - ), - Entry(1, setOf(ShaderStage.fragment), - SamplerBindingLayout() + listOf( + BindGroupLayoutDescriptor( + listOf( + Entry( + 0, + setOf(ShaderStage.vertex), + BufferBindingLayout( + hasDynamicOffset = true, + minBindingSize = + (Float.SIZE_BYTES * 16) + .align(device.limits.minUniformBufferOffsetAlignment) + .toLong() ) ) ) ), + BindGroupLayoutDescriptor( + listOf( + Entry( + 0, setOf(ShaderStage.fragment), + TextureBindingLayout() + ), + Entry( + 1, setOf(ShaderStage.fragment), + SamplerBindingLayout() + ) + ) + ) + ), cameraDynamicSize = cameraDynamicSize ) { @@ -112,7 +114,10 @@ class SpriteBatchShader(device: Device, cameraDynamicSize: Int = 50) : device.createBindGroup( BindGroupDescriptor( layouts[1], - listOf(BindGroupEntry(0, texture.view), BindGroupEntry(1, texture.sampler)) + listOf( + BindGroupEntry(0, TextureViewBinding(texture.view)), + BindGroupEntry(1, SamplerBinding(texture.sampler)) + ) ) ) ) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt index 8db550600..6121d3363 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt @@ -494,7 +494,7 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 writeMask = ColorWriteMask.all )) ), - primitive = RenderPipelineDescriptor.PrimitiveState(topology = PrimitiveTopology.trianglelist), + primitive = RenderPipelineDescriptor.PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = RenderPipelineDescriptor.MultisampleState(count = 1, mask = 0xFFFFFFFu, alphaToCoverageEnabled = false) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt index c895042a4..6fd1b100d 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/shader/SpriteShader.kt @@ -6,7 +6,6 @@ import io.ygdrasil.wgpu.Device import com.littlekt.math.Mat4 import com.littlekt.util.align import io.ygdrasil.wgpu.BindGroup -import io.ygdrasil.wgpu.BindGroupDescriptor import io.ygdrasil.wgpu.BindGroupDescriptor.BufferBinding import io.ygdrasil.wgpu.BindGroupLayoutDescriptor import io.ygdrasil.wgpu.BufferDescriptor @@ -119,8 +118,8 @@ abstract class SpriteShader( fun updateCameraUniform(viewProjection: Mat4, dynamicOffset: Long = 0) = device.queue.writeBuffer( cameraUniformBuffer, - viewProjection.toBuffer(camFloatBuffer), - offset = dynamicOffset * device.limits.minUniformBufferOffsetAlignment, + dynamicOffset * device.limits.minUniformBufferOffsetAlignment.toLong(), + viewProjection.toBuffer(camFloatBuffer).toArray() ) override fun release() { diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt index 4227078b4..a066e32b3 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt @@ -395,106 +395,6 @@ enum class IndexFormat { UINT32, } -/** Vertex format for a [WebGPUVertexAttribute] (input). */ -enum class VertexFormat( - /** The number of components of the format. */ - val components: Int, - /** The byte size of the format. */ - val bytes: Int, - /** If the format uses integer or float. */ - val isInt: Boolean = false -) { - /** Two unsigned bytes. uvec2 in shaders */ - UINT8x2(2, 2, true), - - /** Four unsigned bytes. uvec4 in shaders */ - UINT8x4(4, 4, true), - - /** Two signed bytes. ivec2 in shaders */ - SINT8x2(2, 2, true), - - /** Four signed bytes. ivec4 in shaders */ - SINT8x4(4, 4, true), - - /** Two unsigned bytes `[0, 255]` converted to floats `[0, 1]`. vec2 in shaders */ - UNORM8x2(2, 2), - - /** Four unsigned bytes `[0, 255]` converted to floats `[0, 1]`. vec4 in shaders */ - UNORM8x4(4, 4), - - /** two signed bytes converted to float `[-1,1]`. vec2 in shaders */ - SNORM8x2(2, 2), - - /** two signed bytes converted to float `[-1,1]`. vec2 in shaders */ - SNORM8x4(4, 4), - - /** two unsigned shorts. uvec2 in shaders */ - UINT16x2(2, 4, true), - - /** four unsigned shorts. uvec4 in shaders */ - UINT16x4(4, 8, true), - - /** two signed shorts. ivec2 in shaders */ - SINT16x2(2, 4, true), - - /** four signed shorts. ivec4 in shaders */ - SINT16x4(4, 8, true), - - /** two unsigned shorts `[0, 65525]` converted to float `[0, 1]`. vec2 in shaders */ - UNORM16x2(2, 4), - - /** four unsigned shorts `[0, 65525]` converted to float `[0, 1]`. vec4 in shaders */ - UNORM16x4(4, 8), - - /** two signed shorts `[-32767, 32767]` converted to float `[-1, 1]`. vec2 in shaders */ - SNORM16x2(2, 4), - - /** two signed shorts `[-32767, 32767]` converted to float `[-1, 1]`. vec4 in shaders */ - SNORM16x4(4, 8), - - /** two half precision floats. vec2 in shaders */ - FLOAT16x2(2, 4), - - /** four half precision floats. vec4 in shaders */ - FLOAT16x4(4, 8), - - /** one float. float in shaders */ - FLOAT32(1, 4), - - /** two floats. vec2 in shaders */ - FLOAT32x2(2, 8), - - /** three floats. vec3 in shaders */ - FLOAT32x3(3, 12), - - /** four floats. vec4 in shaders */ - FLOAT32x4(4, 16), - - /** one unsigned int. uint in shaders */ - UINT32(1, 4, true), - - /** two unsigned ints. uvec2 in shaders */ - UINT32x2(2, 8, true), - - /** three unsigned ints. uvec3 in shaders */ - UINT32x3(3, 12, true), - - /** four unsigned ints. uvec4 in shaders */ - UINT32x4(4, 16, true), - - /** one signed int. int in shaders */ - SINT32(1, 4, true), - - /** two signed ints. ivec2 in shaders */ - SINT32x2(2, 8, true), - - /** three signed ints. ivec2 in shaders */ - SINT32x3(3, 12, true), - - /** four signed ints. ivec2 in shaders */ - SINT32x4(4, 16, true) -} - /** Whether a vertex buffer is indexed by vertex or by instance. */ enum class VertexStepMode { /** Vertex data is advanced every vertex. */ From 923e1d20f582b6abcd1d8454bd383e04e31cabbe Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Thu, 26 Sep 2024 12:46:02 +0200 Subject: [PATCH 13/22] Refactor imports and update vertex buffer handling Removed unused imports and updated import statements for better clarity. Replaced `VertexBufferLayout` with `VertexBufferLayoutView` and `VertexAttribute` with `VertexAttributeView` for consistency. Updated buffer usage and shader handling methods for enhanced functionality and clarity. --- .../com/littlekt/graphics/IndexedMeshExt.kt | 22 +- .../kotlin/com/littlekt/graphics/MeshExt.kt | 22 +- .../littlekt/graphics/VertexAttributeExt.kt | 12 +- .../littlekt/graphics/VertexAttributeUsage.kt | 2 +- ...texAttribute.kt => VertexAttributeView.kt} | 6 +- ...ferLayout.kt => VertexBufferLayoutView.kt} | 10 +- .../kotlin/com/littlekt/graphics/WebgpuExt.kt | 249 ++++++------- .../com/littlekt/graphics/g2d/SpriteBatch.kt | 5 +- .../com/littlekt/graphics/g2d/SpriteCache.kt | 9 +- .../util/CommonIndexedMeshGeometry.kt | 6 +- .../graphics/util/CommonMeshGeometry.kt | 6 +- .../graphics/util/CommonVertexView.kt | 4 +- .../graphics/util/IndexedMeshGeometry.kt | 6 +- .../littlekt/graphics/util/MeshGeometry.kt | 6 +- .../com/littlekt/graphics/util/VertexView.kt | 37 +- .../com/littlekt/graphics/webgpu/binding.kt | 26 +- .../com/littlekt/graphics/webgpu/command.kt | 1 + .../com/littlekt/graphics/webgpu/enums.kt | 74 ---- .../com/littlekt/graphics/webgpu/webgpu.kt | 21 -- .../graphics/webgpu/DataToNativeExt.kt | 343 ------------------ .../com/littlekt/graphics/webgpu/webgpu.js.kt | 4 - .../littlekt/graphics/webgpu/webgpu.jvm.kt | 12 - .../littlekt/examples/ComputeBoidsExample.kt | 10 +- .../littlekt/examples/RotatingCubeExample.kt | 4 +- .../com/littlekt/examples/TextureExample.kt | 1 - .../examples/TextureMeshAndCameraExample.kt | 5 +- .../TextureViaCommandEncoderExample.kt | 1 - .../com/littlekt/examples/TiledMeshExample.kt | 5 +- 28 files changed, 224 insertions(+), 685 deletions(-) rename core/src/commonMain/kotlin/com/littlekt/graphics/{VertexAttribute.kt => VertexAttributeView.kt} (81%) rename core/src/commonMain/kotlin/com/littlekt/graphics/{VertexBufferLayout.kt => VertexBufferLayoutView.kt} (68%) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt index 5a24e03b4..4f8a22a64 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/IndexedMeshExt.kt @@ -7,16 +7,16 @@ import io.ygdrasil.wgpu.Device import io.ygdrasil.wgpu.VertexFormat import io.ygdrasil.wgpu.VertexStepMode -/** Creates a new indexed mesh using the list of [VertexAttribute]. */ +/** Creates a new indexed mesh using the list of [VertexAttributeView]. */ inline fun indexedMesh( device: Device, - attributes: List, + attributes: List, size: Int = 1000, generate: CommonIndexedMeshGeometry.() -> Unit = {}, ): IndexedMesh { val geometry = CommonIndexedMeshGeometry( - VertexBufferLayout( + VertexBufferLayoutView( attributes.calculateStride().toLong(), VertexStepMode.vertex, attributes @@ -40,8 +40,8 @@ fun colorIndexedMesh( return indexedMesh( device, listOf( - VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), - VertexAttribute( + VertexAttributeView(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), + VertexAttributeView( VertexFormat.float32x4, VertexFormat.float32x3.sizeInByte.toLong(), 1, @@ -65,14 +65,14 @@ fun textureIndexedMesh( return indexedMesh( device, listOf( - VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), - VertexAttribute( + VertexAttributeView(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), + VertexAttributeView( VertexFormat.float32x4, VertexFormat.float32x3.sizeInByte.toLong(), 1, VertexAttrUsage.COLOR ), - VertexAttribute( + VertexAttributeView( VertexFormat.float32x2, VertexFormat.float32x4.sizeInByte.toLong() + VertexFormat.float32x3.sizeInByte.toLong(), 2, @@ -92,15 +92,15 @@ fun positionIndexedMesh( ): IndexedMesh { return indexedMesh( device, - listOf(VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION)), + listOf(VertexAttributeView(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION)), size, generate ) } -/** Creates a new indexed mesh using the list of [VertexAttribute]. */ +/** Creates a new indexed mesh using the list of [VertexAttributeView]. */ fun T.indexedMesh( - attributes: List, + attributes: List, size: Int = 1000, generate: CommonIndexedMeshGeometry.() -> Unit = {}, ): IndexedMesh { diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt index cb84a5fd8..96e1cb2bb 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/MeshExt.kt @@ -7,19 +7,19 @@ import io.ygdrasil.wgpu.VertexFormat import io.ygdrasil.wgpu.VertexStepMode /** - * Creates a new mesh using the list of [VertexAttribute]. + * Creates a new mesh using the list of [VertexAttributeView]. * * @see indexedMesh */ inline fun mesh( device: Device, - attributes: List, + attributes: List, size: Int = 1000, generate: CommonMeshGeometry.() -> Unit = {}, ): Mesh { val geometry = CommonMeshGeometry( - VertexBufferLayout( + VertexBufferLayoutView( attributes.calculateStride().toLong(), VertexStepMode.vertex, attributes @@ -43,8 +43,8 @@ fun colorMesh( return mesh( device, listOf( - VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), - VertexAttribute( + VertexAttributeView(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), + VertexAttributeView( VertexFormat.float32x4, VertexFormat.float32x3.sizeInByte.toLong(), 1, @@ -70,14 +70,14 @@ fun textureMesh( return mesh( device, listOf( - VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), - VertexAttribute( + VertexAttributeView(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION), + VertexAttributeView( VertexFormat.float32x4, VertexFormat.float32x3.sizeInByte.toLong(), 1, VertexAttrUsage.COLOR ), - VertexAttribute( + VertexAttributeView( VertexFormat.float32x2, VertexFormat.float32x4.sizeInByte.toLong() + VertexFormat.float32x3.sizeInByte.toLong(), 2, @@ -101,19 +101,19 @@ fun positionMesh( ): Mesh { return mesh( device, - listOf(VertexAttribute(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION)), + listOf(VertexAttributeView(VertexFormat.float32x3, 0, 0, VertexAttrUsage.POSITION)), size, generate ) } /** - * Creates a new mesh using the list of [VertexAttribute]. + * Creates a new mesh using the list of [VertexAttributeView]. * * @see indexedMesh */ fun T.mesh( - attributes: List, + attributes: List, size: Int = 1000, generate: CommonMeshGeometry.() -> Unit = {}, ): Mesh { diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt index 2ad35e0b6..7a2746b08 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeExt.kt @@ -1,17 +1,17 @@ package com.littlekt.graphics /** - * Calculates the stride of a list [VertexAttribute] by summing up the bytes of - * [VertexAttribute.format]. + * Calculates the stride of a list [VertexAttributeView] by summing up the bytes of + * [VertexAttributeView.format]. * * @see VertexFormat.bytes */ -fun List.calculateStride(): Int = sumOf { it.format.sizeInByte } +fun List.calculateStride(): Int = sumOf { it.format.sizeInByte } /** - * Calculates the number of components in the list of [VertexAttribute] by summing up the components - * of [VertexAttribute.format]. + * Calculates the number of components in the list of [VertexAttributeView] by summing up the components + * of [VertexAttributeView.format]. * * @see VertexFormat.components */ -fun List.calculateComponents(): Int = sumOf { it.format.components } +fun List.calculateComponents(): Int = sumOf { it.format.components } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeUsage.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeUsage.kt index c8774082d..2b7a26d1b 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeUsage.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeUsage.kt @@ -3,7 +3,7 @@ package com.littlekt.graphics import kotlin.jvm.JvmInline /** - * A value class used to designate a usage for a [VertexAttribute] in a shader. Custom attributes + * A value class used to designate a usage for a [VertexAttributeView] in a shader. Custom attributes * may be created. * * @see POSITION diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttribute.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeView.kt similarity index 81% rename from core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttribute.kt rename to core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeView.kt index 4370260e1..dd85712aa 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttribute.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeView.kt @@ -2,6 +2,7 @@ package com.littlekt.graphics import com.littlekt.graphics.util.CommonVertexView import com.littlekt.graphics.webgpu.WebGPUVertexAttribute +import io.ygdrasil.wgpu.RenderPipelineDescriptor import io.ygdrasil.wgpu.VertexFormat /** @@ -16,14 +17,15 @@ import io.ygdrasil.wgpu.VertexFormat * @author Colton Daily * @date 4/10/2024 */ -data class VertexAttribute( +data class VertexAttributeView( val format: VertexFormat, val offset: Long, val shaderLocation: Int, val usage: VertexAttrUsage ) { private val usageIndex = usage.usage.countTrailingZeroBits() - val gpuVertexAttribute = WebGPUVertexAttribute(format, offset, shaderLocation) + val gpuVertexAttribute = + RenderPipelineDescriptor.VertexState.VertexBufferLayout.VertexAttribute(format, offset, shaderLocation) val key: Int = (usageIndex shl 8) + (shaderLocation and 0xFF) } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexBufferLayout.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexBufferLayoutView.kt similarity index 68% rename from core/src/commonMain/kotlin/com/littlekt/graphics/VertexBufferLayout.kt rename to core/src/commonMain/kotlin/com/littlekt/graphics/VertexBufferLayoutView.kt index 9aea25790..bde36479a 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexBufferLayout.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexBufferLayoutView.kt @@ -1,5 +1,6 @@ package com.littlekt.graphics +import io.ygdrasil.wgpu.RenderPipelineDescriptor import io.ygdrasil.wgpu.VertexStepMode @@ -14,12 +15,15 @@ import io.ygdrasil.wgpu.VertexStepMode * @author Colton Daily * @date 4/10/2024 */ -data class VertexBufferLayout( +data class VertexBufferLayoutView( val arrayStride: Long, val stepMode: VertexStepMode, - val attributes: List + val attributes: List ) { /** The underlying GPU vertex buffer layout. */ val gpuVertexBufferLayout = - WebGPUVertexBufferLayout(arrayStride, stepMode, attributes.map { it.gpuVertexAttribute }) + RenderPipelineDescriptor.VertexState.VertexBufferLayout( + arrayStride, + attributes.map { it.gpuVertexAttribute }, + stepMode) } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt index 5ad2f5520..cf84fe943 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt @@ -41,141 +41,144 @@ fun Device.createGPUFloatBuffer(label: String, data: FloatArray, usages: Set = mutableListOf() - private var blendState = BlendState.NonPreMultiplied + private var blendState = BlendStates.NonPreMultiplied private var prevBlendState = blendState private val renderPipelineByBlendState: MutableMap = @@ -727,7 +728,7 @@ class SpriteBatch( vertex = VertexState( module = shader.shaderModule, entryPoint = shader.vertexEntryPoint, - mesh.geometry.layout.gpuVertexBufferLayout + buffers = listOf(mesh.geometry.layout.gpuVertexBufferLayout) ), fragment = FragmentState( diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt index 6121d3363..eac1482ab 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCache.kt @@ -3,10 +3,11 @@ package com.littlekt.graphics.g2d import com.littlekt.EngineStats import com.littlekt.Releasable import com.littlekt.file.FloatBuffer +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.MutableColor import com.littlekt.graphics.Texture import com.littlekt.graphics.VertexAttrUsage -import com.littlekt.graphics.VertexAttribute +import com.littlekt.graphics.VertexAttributeView import com.littlekt.graphics.createGPUFloatBuffer import com.littlekt.graphics.indexedMesh import com.littlekt.graphics.shader.Shader @@ -56,13 +57,13 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 indexedMesh( device, listOf( - VertexAttribute( + VertexAttributeView( format = VertexFormat.float32x3, offset = 0, shaderLocation = 0, usage = VertexAttrUsage.POSITION ), - VertexAttribute( + VertexAttributeView( format = VertexFormat.float32x2, offset = VertexFormat.float32x3.sizeInByte.toLong(), shaderLocation = 1, @@ -101,7 +102,7 @@ class SpriteCache(val device: Device, val format: TextureFormat, size: Int = 100 private val drawCalls: MutableList = mutableListOf() private var blendState = - BlendState.NonPreMultiplied + BlendStates.NonPreMultiplied private val renderPipeline = device.createRenderPipeline(createRenderPipelineDescriptor(shader, blendState)) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonIndexedMeshGeometry.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonIndexedMeshGeometry.kt index 58d1f9c69..4769909ef 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonIndexedMeshGeometry.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonIndexedMeshGeometry.kt @@ -1,18 +1,18 @@ package com.littlekt.graphics.util -import com.littlekt.graphics.VertexBufferLayout +import com.littlekt.graphics.VertexBufferLayoutView import com.littlekt.math.spatial.BoundingBox /** * A [IndexedMeshGeometry] that calculates the [BoundingBox] of the geometry as well as using * [CommonVertexView] when adding a vertex. * - * @param layout a [VertexBufferLayout] describing the vertex buffer. + * @param layout a [VertexBufferLayoutView] describing the vertex buffer. * @param size the initial size of the vertices and indices buffers * @author Colton Daily * @date 4/10/2024 */ -class CommonIndexedMeshGeometry(layout: VertexBufferLayout, size: Int = INITIAL_SIZE) : +class CommonIndexedMeshGeometry(layout: VertexBufferLayoutView, size: Int = INITIAL_SIZE) : IndexedMeshGeometry(layout, size) { /** Bounds of the mesh. */ val bounds = BoundingBox() diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonMeshGeometry.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonMeshGeometry.kt index 995ddc493..a3e4b15c0 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonMeshGeometry.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonMeshGeometry.kt @@ -1,18 +1,18 @@ package com.littlekt.graphics.util -import com.littlekt.graphics.VertexBufferLayout +import com.littlekt.graphics.VertexBufferLayoutView import com.littlekt.math.spatial.BoundingBox /** * A [MeshGeometry] that calculates the [BoundingBox] of the geometry as well as using * [CommonVertexView] when adding a vertex. * - * @param layout a [VertexBufferLayout] describing the vertex buffer. + * @param layout a [VertexBufferLayoutView] describing the vertex buffer. * @param size the initial size of the vertices and indices buffers * @author Colton Daily * @date 4/10/2024 */ -class CommonMeshGeometry(layout: VertexBufferLayout, size: Int = INITIAL_SIZE) : +class CommonMeshGeometry(layout: VertexBufferLayoutView, size: Int = INITIAL_SIZE) : MeshGeometry(layout, size) { /** Bounds of the mesh. */ val bounds = BoundingBox() diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonVertexView.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonVertexView.kt index 35a9d8a30..d4eee10e9 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonVertexView.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/util/CommonVertexView.kt @@ -3,7 +3,7 @@ package com.littlekt.graphics.util import com.littlekt.file.FloatBuffer import com.littlekt.graphics.MutableColor import com.littlekt.graphics.VertexAttrUsage -import com.littlekt.graphics.VertexAttribute +import com.littlekt.graphics.VertexAttributeView import com.littlekt.log.Logger import com.littlekt.math.MutableVec2f import com.littlekt.math.MutableVec3f @@ -24,7 +24,7 @@ import com.littlekt.math.MutableVec4i class CommonVertexView( vertexSize: Int, vertices: FloatBuffer, - attributes: List, + attributes: List, index: Int ) : VertexView(vertexSize, vertices, attributes, index) { /** The position attribute vector view */ diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/util/IndexedMeshGeometry.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/util/IndexedMeshGeometry.kt index f639479a4..bf378cb30 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/util/IndexedMeshGeometry.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/util/IndexedMeshGeometry.kt @@ -1,7 +1,7 @@ package com.littlekt.graphics.util import com.littlekt.file.ShortBuffer -import com.littlekt.graphics.VertexBufferLayout +import com.littlekt.graphics.VertexBufferLayoutView import kotlin.math.floor import kotlin.math.max import kotlin.math.round @@ -9,12 +9,12 @@ import kotlin.math.round /** * Holds vertex and index data that can be used to render to a mesh. * - * @param layout a [VertexBufferLayout] describing the vertex buffer. + * @param layout a [VertexBufferLayoutView] describing the vertex buffer. * @param size the initial size of the vertices and indices buffers * @author Colton Daily * @date 12/19/2022 */ -open class IndexedMeshGeometry(layout: VertexBufferLayout, size: Int = INITIAL_SIZE) : +open class IndexedMeshGeometry(layout: VertexBufferLayoutView, size: Int = INITIAL_SIZE) : MeshGeometry(layout, size) { /** The indices buffer. */ var indices = ShortBuffer(floor(size * 1.5f).toInt()) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/util/MeshGeometry.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/util/MeshGeometry.kt index 8d8307ed1..040dabaac 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/util/MeshGeometry.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/util/MeshGeometry.kt @@ -1,7 +1,7 @@ package com.littlekt.graphics.util import com.littlekt.file.FloatBuffer -import com.littlekt.graphics.VertexBufferLayout +import com.littlekt.graphics.VertexBufferLayoutView import com.littlekt.log.Logger import kotlin.math.max import kotlin.math.min @@ -11,12 +11,12 @@ import kotlin.math.round * Holds ONLY vertex data that can be used to render to a mesh. If indexed data is needed, see * [IndexedMeshGeometry]. * - * @param layout a [VertexBufferLayout] describing the vertex buffer. + * @param layout a [VertexBufferLayoutView] describing the vertex buffer. * @param size the initial size of the vertices and indices buffers * @author Colton Daily * @date 12/19/2022 */ -open class MeshGeometry(val layout: VertexBufferLayout, size: Int = INITIAL_SIZE) { +open class MeshGeometry(val layout: VertexBufferLayoutView, size: Int = INITIAL_SIZE) { /** The number of components in each vertex. */ val vertexSize = layout.attributes.sumOf { it.format.components } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/util/VertexView.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/util/VertexView.kt index da21c035c..9d8ea2183 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/util/VertexView.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/util/VertexView.kt @@ -2,9 +2,14 @@ package com.littlekt.graphics.util import com.littlekt.file.FloatBuffer import com.littlekt.graphics.MutableColor -import com.littlekt.graphics.VertexAttribute +import com.littlekt.graphics.VertexAttributeView import com.littlekt.graphics.webgpu.WebGPUVertexAttribute import com.littlekt.math.* +import io.ygdrasil.wgpu.VertexFormat + +private val VertexFormat.isInt: Boolean + get() = name.lowercase().contains("int") + /** * A view of a vertex within the geometry [IndexedMeshGeometry]. If there are multiple vertex usages @@ -22,7 +27,7 @@ import com.littlekt.math.* open class VertexView( val vertexSize: Int, var vertices: FloatBuffer, - val attributes: List, + val attributes: List, index: Int, ) : MutableVec3f() { @@ -116,32 +121,32 @@ open class VertexView( } } - /** @return a [FloatView] of the given [VertexAttribute], if it exists; `null` otherwise. */ - fun getFloatAttribute(attribute: VertexAttribute): FloatView? = + /** @return a [FloatView] of the given [VertexAttributeView], if it exists; `null` otherwise. */ + fun getFloatAttribute(attribute: VertexAttributeView): FloatView? = attributeViews[attribute.key] as FloatView? - /** @return a [IntView] of the given [VertexAttribute], if it exists; `null` otherwise. */ - fun getIntAttribute(attribute: VertexAttribute): IntView? = + /** @return a [IntView] of the given [VertexAttributeView], if it exists; `null` otherwise. */ + fun getIntAttribute(attribute: VertexAttributeView): IntView? = attributeViews[attribute.shaderLocation] as IntView? - /** @return a [MutableVec2f] of the given [VertexAttribute], if it exists; `null` otherwise. */ - fun getVec2fAttribute(attribute: VertexAttribute): MutableVec2f? = + /** @return a [MutableVec2f] of the given [VertexAttributeView], if it exists; `null` otherwise. */ + fun getVec2fAttribute(attribute: VertexAttributeView): MutableVec2f? = attributeViews[attribute.key] as MutableVec2f? - /** @return a [MutableVec3f] of the given [VertexAttribute], if it exists; `null` otherwise. */ - fun getVec3fAttribute(attribute: VertexAttribute): MutableVec3f? = + /** @return a [MutableVec3f] of the given [VertexAttributeView], if it exists; `null` otherwise. */ + fun getVec3fAttribute(attribute: VertexAttributeView): MutableVec3f? = attributeViews[attribute.key] as MutableVec3f? - /** @return a [MutableVec4f] of the given [VertexAttribute], if it exists; `null` otherwise. */ - fun getVec4fAttribute(attribute: VertexAttribute): MutableVec4f? = + /** @return a [MutableVec4f] of the given [VertexAttributeView], if it exists; `null` otherwise. */ + fun getVec4fAttribute(attribute: VertexAttributeView): MutableVec4f? = attributeViews[attribute.key] as MutableVec4f? - /** @return a [MutableVec4i] of the given [VertexAttribute], if it exists; `null` otherwise. */ - fun getVec4iAttribute(attribute: VertexAttribute): MutableVec4i? = + /** @return a [MutableVec4i] of the given [VertexAttributeView], if it exists; `null` otherwise. */ + fun getVec4iAttribute(attribute: VertexAttributeView): MutableVec4i? = attributeViews[attribute.key] as MutableVec4i? - /** @return a [MutableColor] of the given [VertexAttribute], if it exists; `null` otherwise. */ - fun getColorAttribute(attribute: VertexAttribute): MutableColor? = + /** @return a [MutableColor] of the given [VertexAttributeView], if it exists; `null` otherwise. */ + fun getColorAttribute(attribute: VertexAttributeView): MutableColor? = attributeViews[attribute.key]?.let { ColorWrapView(it as Vec4fView) } /** A view wrapper around a [Float]. */ diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt index 7ea563b8f..affb46e90 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt @@ -122,12 +122,6 @@ expect class BindGroupLayoutEntry( bindingLayout: BindingLayout ) -/** - * Describes a [BindGroupLayout]. For use with [Device.createBindGroupLayout]. - * - * @param entries a list of entries in this [BindGroupLayout]. - * @param label debug label of a [BindGroupLayout]. - */ data class BindGroupLayoutDescriptor( val entries: List, val label: String? = null @@ -135,16 +129,7 @@ data class BindGroupLayoutDescriptor( constructor(entry: BindGroupLayoutEntry) : this(listOf(entry)) } -/** - * Handle to a binding group layout. - * - * A `BindGroupLayout` is a handle to the GPU-side layout of a binding group. It can be used to - * create a [BindGroupDescriptor] object, which in turn can be used to create a [BindGroup] object - * with [Device.createBindGroup]. A series of `BindGroupLayout`s can also be sued to create a - * [PipelineLayoutDescriptor], which can be used to create a [PipelineLayout]. - * - * It can be created with [Device.createBindGroupLayout]. - */ + expect class BindGroupLayout : Releasable { override fun release() } @@ -159,15 +144,6 @@ expect class PipelineLayout : Releasable { override fun release() } -/** - * Describes a [PipelineLayout]. - * - * For use with [Device.createPipelineLayout]. - * - * @param bindGroupLayouts bind groups that this pipeline uses. The first entry will provide all the - * bindings for "set = 0", second entry will provide all the binding for "set = 1" etc. - * @param label debug label of a [PipelineLayout]. - */ expect class PipelineLayoutDescriptor( bindGroupLayouts: List = emptyList(), label: String? = null diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt index d4fd926da..baf0c40fa 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt @@ -2,6 +2,7 @@ package com.littlekt.graphics.webgpu import com.littlekt.Releasable import com.littlekt.graphics.Color +import io.ygdrasil.wgpu.VertexFormat /** * A handle to a command buffer on the GPU. diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt index a066e32b3..3e2488083 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt @@ -747,80 +747,6 @@ enum class TextureStatus { companion object } -/** - * The usages determine what kind of memory the buffer is allocated from and what actions the buffer - * can partake in. - */ -@JvmInline -value class BufferUsage(val usageFlag: Int) { - - infix fun or(other: BufferUsage): BufferUsage = BufferUsage(usageFlag or other.usageFlag) - - infix fun and(other: BufferUsage): BufferUsage = BufferUsage(usageFlag and other.usageFlag) - - companion object { - - /** - * Allow a buffer to be mapped for reading. Does not need to be enabled for - * mapped_at_creation. - */ - val MAP_READ: BufferUsage = BufferUsage(0x0001) - - /** - * Allow a buffer to be mapped for writing. Does not need to be enabled for - * mapped_at_creation. - */ - val MAP_WRITE: BufferUsage = BufferUsage(0x0002) - - /** - * Allow a buffer to be the source buffer for [CommandEncoder.copyBufferToBuffer] or - * [CommandEncoder.copyBufferToTexture] - */ - val COPY_SRC: BufferUsage = BufferUsage(0x0004) - - /** Allow a buffer to be the destination buffer for [CommandEncoder.copyBufferToBuffer] */ - val COPY_DST: BufferUsage = BufferUsage(0x0008) - - /** Allow a buffer to be used as index buffer for draw calls */ - val INDEX: BufferUsage = BufferUsage(0x0010) - - /** Allow a buffer to be used as vertex buffer for draw calls */ - val VERTEX: BufferUsage = BufferUsage(0x0020) - - /** Allow a buffer to be used as uniform buffer */ - val UNIFORM: BufferUsage = BufferUsage(0x0040) - - /** Allows a buffer to be used as a storage buffer */ - val STORAGE: BufferUsage = BufferUsage(0x0080) - - /** Allow a buffer to be the indirect buffer in an indirect draw call. */ - val INDIRECT: BufferUsage = BufferUsage(0x0100) - - /** - * Allow a buffer to be the destination buffer for a [CommandEncoder.resolveQuerySet] - * operation. - */ - val QUERY_RESOLVE: BufferUsage = BufferUsage(0x0200) - } -} - -/** Type of buffer mapping. */ -@JvmInline -value class MapMode(val usageFlag: Int) { - - infix fun or(other: MapMode): MapMode = MapMode(usageFlag or other.usageFlag) - - infix fun and(other: MapMode): MapMode = MapMode(usageFlag and other.usageFlag) - - companion object { - /** Map only for reading. */ - val READ: MapMode = MapMode(0x0001) - - /** Map only for writing. */ - val WRITE: MapMode = MapMode(0x0002) - } -} - /** * Describes the shader stages that a binding will be visible from. These can be combined so that * something is visible from both vertex and fragment shaders: diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt index 7b1adef5e..a53b2b1af 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt @@ -18,9 +18,6 @@ import com.littlekt.graphics.webgpu.* expect class Device : Releasable { - /** @return a newly created [GPUBuffer]. */ - fun createBuffer(desc: BufferDescriptor): GPUBuffer - /** @return a newly created [Sampler]. */ fun createSampler(desc: SamplerDescriptor): Sampler @@ -649,24 +646,6 @@ expect class TextureView : IntoBindingResource { fun release() } -/** - * Describes a [GPUBuffer]. For use with [Device.createBuffer]. - * - * @param label debug label of a buffer. - * @param size size of a buffer, in bytes. - * @param usage usages of a buffer. If the buffer is used in any way that isn't specified here, the - * operation will fail. - * @param mappedAtCreation allows a buffer to be mapped immediately after they are made. It does not - * have to [BufferUsage.MAP_READ] or [BufferUsage.MAP_WRITE], all buffers are allowed to be mapped - * at creation. If this is `true`, [size] must be a multiple of `4`. - */ -data class BufferDescriptor( - val label: String, - val size: Long, - val usage: BufferUsage, - val mappedAtCreation: Boolean -) - expect class GPUBuffer : Releasable { /** The length of the buffer allocation in bytes. */ diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/DataToNativeExt.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/DataToNativeExt.kt index 62e9073e0..5a7beda73 100644 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/DataToNativeExt.kt +++ b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/DataToNativeExt.kt @@ -9,333 +9,6 @@ fun GPURequestAdapterOptions( init: GPURequestAdapterOptions.() -> Unit = {} ): GPURequestAdapterOptions = jsObject(init).unsafeCast() -fun GPUDeviceDescriptor(init: GPUDeviceDescriptor.() -> Unit = {}): GPUDeviceDescriptor = - jsObject(init).unsafeCast() - -fun DeviceDescriptor.toNative(): GPUDeviceDescriptor = GPUDeviceDescriptor { - val it = this@toNative - if (it.requiredFeatures != null) { - requiredFeatures = it.requiredFeatures.map { it.nativeVal }.toTypedArray() - } - if (it.requiredLimits != null) { - val requiredLimits = it.requiredLimits - val map = mutableMapOf() - requiredLimits.maxTextureDimension1D?.let { map["maxTextureDimension1D"] = it.toLong() } - requiredLimits.maxTextureDimension2D?.let { map["maxTextureDimension2D"] = it.toLong() } - requiredLimits.maxTextureDimension3D?.let { map["maxTextureDimension3D"] = it.toLong() } - requiredLimits.maxTextureArrayLayers?.let { map["maxTextureArrayLayers"] = it.toLong() } - requiredLimits.maxBindGroups?.let { map["maxBindGroups"] = it.toLong() } - requiredLimits.maxBindGroupsPlusVertexBuffers?.let { - map["maxBindGroupsPlusVertexBuffers"] = it.toLong() - } - requiredLimits.maxBindingsPerBindGroup?.let { map["maxBindingsPerBindGroup"] = it.toLong() } - requiredLimits.maxDynamicUniformBuffersPerPipelineLayout?.let { - map["maxDynamicUniformBuffersPerPipelineLayout"] = it.toLong() - } - requiredLimits.maxDynamicStorageBuffersPerPipelineLayout?.let { - map["maxDynamicStorageBuffersPerPipelineLayout"] = it.toLong() - } - requiredLimits.maxSampledTexturesPerShaderStage?.let { - map["maxSampledTexturesPerShaderStage"] = it.toLong() - } - requiredLimits.maxSamplersPerShaderStage?.let { - map["maxSamplersPerShaderStage"] = it.toLong() - } - requiredLimits.maxStorageBuffersPerShaderStage?.let { - map["maxStorageBuffersPerShaderStage"] = it.toLong() - } - requiredLimits.maxStorageTexturesPerShaderStage?.let { - map["maxStorageTexturesPerShaderStage"] = it.toLong() - } - requiredLimits.maxUniformBuffersPerShaderStage?.let { - map["maxUniformBuffersPerShaderStage"] = it.toLong() - } - requiredLimits.maxUniformBufferBindingSize?.let { map["maxUniformBufferBindingSize"] = it } - requiredLimits.maxStorageBufferBindingSize?.let { map["maxStorageBufferBindingSize"] = it } - requiredLimits.minUniformBufferOffsetAlignment?.let { - map["minUniformBufferOffsetAlignment"] = it.toLong() - } - requiredLimits.minStorageBufferOffsetAlignment?.let { - map["minStorageBufferOffsetAlignment"] = it.toLong() - } - requiredLimits.maxVertexBuffers?.let { map["maxVertexBuffers"] = it.toLong() } - requiredLimits.maxBufferSize?.let { map["maxBufferSize"] = it } - requiredLimits.maxVertexAttributes?.let { map["maxVertexAttributes"] = it.toLong() } - requiredLimits.maxVertexBufferArrayStride?.let { - map["maxVertexBufferArrayStride"] = it.toLong() - } - this.requiredLimits = map - } -} - -fun GPUCanvasConfiguration(init: GPUCanvasConfiguration.() -> Unit = {}): GPUCanvasConfiguration = - jsObject(init).unsafeCast() - -fun SurfaceConfiguration.toNative(): GPUCanvasConfiguration = GPUCanvasConfiguration { - val it = this@toNative - device = it.device.delegate - format = it.format.nativeVal - usage = it.usage.usageFlag - alphaMode = it.alphaMode.nativeVal -} - -fun GPUShaderModuleDescriptor( - init: GPUShaderModuleDescriptor.() -> Unit = {} -): GPUShaderModuleDescriptor = jsObject(init).unsafeCast() - -fun GPUPipelineLayoutDescriptor( - init: GPUPipelineLayoutDescriptor.() -> Unit = {} -): GPUPipelineLayoutDescriptor = jsObject(init).unsafeCast() - -fun PipelineLayoutDescriptor.toNative(): GPUPipelineLayoutDescriptor = GPUPipelineLayoutDescriptor { - val it = this@toNative - bindGroupLayouts = it.delegates - label = it.label -} - -fun GPURenderPipelineDescriptor( - init: GPURenderPipelineDescriptor.() -> Unit = {} -): GPURenderPipelineDescriptor = jsObject(init).unsafeCast() - -fun RenderPipelineDescriptor.toNative(): GPURenderPipelineDescriptor = GPURenderPipelineDescriptor { - val it = this@toNative - layout = it.layout.delegate - vertex = it.vertex.toNative() - primitive = it.primitive.toNative() - depthStencil = it.depthStencil?.toNative() ?: undefined - multisample = it.multisample.toNative() - fragment = it.fragment?.toNative() ?: undefined - label = it.label -} - -fun GPUVertexState(init: GPUVertexState.() -> Unit = {}): GPUVertexState = - jsObject(init).unsafeCast() - -fun VertexState.toNative(): GPUVertexState = GPUVertexState { - val it = this@toNative - module = it.module.delegate - entryPoint = it.entryPoint - buffers = it.buffers.map { it.toNative() }.toTypedArray() -} - -fun GPUVertexBufferLayout(init: GPUVertexBufferLayout.() -> Unit = {}): GPUVertexBufferLayout = - jsObject(init).unsafeCast() - -fun WebGPUVertexBufferLayout.toNative(): GPUVertexBufferLayout = GPUVertexBufferLayout { - val it = this@toNative - arrayStride = it.arrayStride - stepMode = it.stepMode.nativeVal - attributes = it.attributes.map { it.toNative() }.toTypedArray() -} - -fun GPUVertexAttribute(init: GPUVertexAttribute.() -> Unit = {}): GPUVertexAttribute = - jsObject(init).unsafeCast() - -fun WebGPUVertexAttribute.toNative(): GPUVertexAttribute = GPUVertexAttribute { - val it = this@toNative - format = it.format.nativeVal - offset = it.offset - shaderLocation = it.shaderLocation -} - -fun GPUPrimitiveState(init: GPUPrimitiveState.() -> Unit = {}): GPUPrimitiveState = - jsObject(init).unsafeCast() - -fun PrimitiveState.toNative(): GPUPrimitiveState = GPUPrimitiveState { - val it = this@toNative - topology = it.topology.nativeVal - stripIndexFormat = it.stripIndexFormat?.nativeVal ?: undefined - frontFace = it.frontFace.nativeVal - cullMode = it.cullMode.nativeVal -} - -fun GPUDepthStencilState(init: GPUDepthStencilState.() -> Unit = {}): GPUDepthStencilState = - jsObject(init).unsafeCast() - -fun DepthStencilState.toNative(): GPUDepthStencilState = GPUDepthStencilState { - val it = this@toNative - format = it.format.nativeVal - depthWriteEnabled = it.depthWriteEnabled - depthCompare = it.depthCompare.nativeVal - stencilFront = it.stencil.front.toNative() - stencilBack = it.stencil.back.toNative() - stencilReadMask = it.stencil.readMask - stencilWriteMask = it.stencil.writeMask - depthBias = it.bias.constant - depthBiasSlopeScale = it.bias.slopeScale - depthBiasClamp = it.bias.clamp -} - -fun GPUStencilFaceState(init: GPUStencilFaceState.() -> Unit = {}): GPUStencilFaceState = - jsObject(init).unsafeCast() - -fun StencilFaceState.toNative(): GPUStencilFaceState = GPUStencilFaceState { - val it = this@toNative - compare = it.compare.nativeVal - failOp = it.failOp.nativeVal - depthFailOp = it.depthFailOp.nativeVal - passOp = it.passOp.nativeVal -} - -fun GPUMultisampleState(init: GPUMultisampleState.() -> Unit = {}): GPUMultisampleState = - jsObject(init).unsafeCast() - -fun MultisampleState.toNative(): GPUMultisampleState = GPUMultisampleState { - val it = this@toNative - count = it.count - mask = it.mask - alphaToCoverageEnabled = it.alphaToCoverageEnabled -} - -fun GPUFragmentState(init: GPUFragmentState.() -> Unit = {}): GPUFragmentState = - jsObject(init).unsafeCast() - -fun FragmentState.toNative(): GPUFragmentState = GPUFragmentState { - val it = this@toNative - module = it.module.delegate - entryPoint = it.entryPoint - targets = it.targets.map { it.toNative() }.toTypedArray() -} - -fun GPUColorTargetState(init: GPUColorTargetState.() -> Unit = {}): GPUColorTargetState = - jsObject(init).unsafeCast() - -fun ColorTargetState.toNative(): GPUColorTargetState = GPUColorTargetState { - val it = this@toNative - format = it.format.nativeVal - blend = it.blendState?.toNative() ?: undefined - writeMask = it.writeMask.usageFlag -} - -fun GPUBlendState(init: GPUBlendState.() -> Unit = {}): GPUBlendState = - jsObject(init).unsafeCast() - -fun BlendState.toNative(): GPUBlendState = GPUBlendState { - val it = this@toNative - color = it.color.toNative() - alpha = it.alpha.toNative() -} - -fun GPUBlendComponent(init: GPUBlendComponent.() -> Unit = {}): GPUBlendComponent = - jsObject(init).unsafeCast() - -fun BlendComponent.toNative(): GPUBlendComponent = GPUBlendComponent { - val it = this@toNative - operation = it.operation.nativeVal - srcFactor = it.srcFactor.nativeVal - dstFactor = it.dstFactor.nativeVal -} - -fun GPUComputePipelineDescriptor( - init: GPUComputePipelineDescriptor.() -> Unit = {} -): GPUComputePipelineDescriptor = jsObject(init).unsafeCast() - -fun ComputePipelineDescriptor.toNative(): GPUComputePipelineDescriptor = - GPUComputePipelineDescriptor { - val it = this@toNative - layout = it.layout.delegate - compute = it.compute.toNative() - label = it.label - } - -fun GPUProgrammableStage(init: GPUProgrammableStage.() -> Unit = {}): GPUProgrammableStage = - jsObject(init).unsafeCast() - -fun ProgrammableStage.toNative(): GPUProgrammableStage = GPUProgrammableStage { - val it = this@toNative - module = it.module.delegate - entryPoint = it.entryPoint - // TODO constants? -} - -fun GPUBufferDescriptor(init: GPUBufferDescriptor.() -> Unit = {}): GPUBufferDescriptor = - jsObject(init).unsafeCast() - -fun BufferDescriptor.toNative(): GPUBufferDescriptor = GPUBufferDescriptor { - val it = this@toNative - size = it.size - usage = it.usage.usageFlag - mappedAtCreation = it.mappedAtCreation - label = it.label -} - -fun GPUBindGroupLayoutDescriptor( - init: GPUBindGroupLayoutDescriptor.() -> Unit = {} -): GPUBindGroupLayoutDescriptor = jsObject(init).unsafeCast() - -fun BindGroupLayoutDescriptor.toNative(): GPUBindGroupLayoutDescriptor = - GPUBindGroupLayoutDescriptor { - val it = this@toNative - entries = it.entries.map { it.toNative() }.toTypedArray() - label = it.label - } - -fun GPUBindGroupLayoutEntry( - init: GPUBindGroupLayoutEntry.() -> Unit = {} -): GPUBindGroupLayoutEntry = jsObject(init).unsafeCast() - -fun BindGroupLayoutEntry.toNative(): GPUBindGroupLayoutEntry = GPUBindGroupLayoutEntry { - val it = this@toNative - binding = it.binding - visibility = it.visibility.usageFlag - when (val layout = it.bindingLayout) { - is BufferBindingLayout -> buffer = layout.toNative() - is SamplerBindingLayout -> sampler = layout.toNative() - is TextureBindingLayout -> texture = layout.toNative() - else -> { - TODO("Implement storageTexture and externalTexture binding layouts!") - } - } -} - -fun GPUBufferBindingLayout(init: GPUBufferBindingLayout.() -> Unit = {}): GPUBufferBindingLayout = - jsObject(init).unsafeCast() - -fun BufferBindingLayout.toNative(): GPUBufferBindingLayout = GPUBufferBindingLayout { - val it = this@toNative - type = it.type.nativeVal - hasDynamicOffset = it.hasDynamicOffset - minBindingSize = it.minBindingSize -} - -fun GPUBufferSamplerBindingLayout( - init: GPUBufferSamplerBindingLayout.() -> Unit = {} -): GPUBufferSamplerBindingLayout = jsObject(init).unsafeCast() - -fun SamplerBindingLayout.toNative(): GPUBufferSamplerBindingLayout = GPUBufferSamplerBindingLayout { - val it = this@toNative - type = it.type.nativeVal -} - -fun GPUTextureBindingLayout( - init: GPUTextureBindingLayout.() -> Unit = {} -): GPUTextureBindingLayout = jsObject(init).unsafeCast() - -fun TextureBindingLayout.toNative(): GPUTextureBindingLayout = GPUTextureBindingLayout { - val it = this@toNative - sampleType = it.sampleType.nativeVal - viewDimension = it.viewDimension.nativeVal - multisampled = it.multisampled -} - -fun GPUBindGroupDescriptor(init: GPUBindGroupDescriptor.() -> Unit = {}): GPUBindGroupDescriptor = - jsObject(init).unsafeCast() - -fun BindGroupDescriptor.toNative(): GPUBindGroupDescriptor = GPUBindGroupDescriptor { - val it = this@toNative - layout = it.layout.delegate - entries = it.entries.map { it.toNative() }.toTypedArray() - label = it.label -} - -fun GPUBindGroupEntry(init: GPUBindGroupEntry.() -> Unit = {}): GPUBindGroupEntry = - jsObject(init).unsafeCast() - -fun BindGroupEntry.toNative(): GPUBindGroupEntry = GPUBindGroupEntry { - val it = this@toNative - binding = it.binding - resource = it.resource.toNative() -} fun GPUSamplerDescriptor(init: GPUSamplerDescriptor.() -> Unit = {}): GPUSamplerDescriptor = jsObject(init).unsafeCast() @@ -390,22 +63,6 @@ fun TextureDataLayout.toNative(): GPUImageDataLayout = GPUImageDataLayout { rowsPerImage = it.rowsPerImage } -fun GPUTextureViewDescriptor( - init: GPUTextureViewDescriptor.() -> Unit = {} -): GPUTextureViewDescriptor = jsObject(init).unsafeCast() - -fun TextureViewDescriptor.toNative(): GPUTextureViewDescriptor = GPUTextureViewDescriptor { - val it = this@toNative - arrayLayerCount = it.arrayLayerCount - aspect = it.aspect.nativeVal - baseArrayLayer = it.baseArrayLayer - baseMipLevel = it.baseMipLevel - dimension = it.dimension.nativeVal - format = it.format.nativeVal - mipLevelCount = it.mipLevelCount - label = it.label -} - fun GPURenderPassDescriptor( init: GPURenderPassDescriptor.() -> Unit = {} ): GPURenderPassDescriptor = jsObject(init).unsafeCast() diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt index 322e6020e..77f8cc67a 100644 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt +++ b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt @@ -9,10 +9,6 @@ import org.khronos.webgl.Uint8Array actual class Device(val delegate: GPUDevice) : Releasable { - actual fun createBuffer(desc: BufferDescriptor): GPUBuffer { - return GPUBuffer(delegate.createBuffer(desc.toNative()), desc.size) - } - actual fun createSampler(desc: SamplerDescriptor): Sampler { return Sampler(delegate.createSampler(desc.toNative())) } diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt index 70cb6c651..6841952bc 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt @@ -14,18 +14,6 @@ import java.lang.foreign.ValueLayout actual class Device(val segment: MemorySegment) : Releasable { - actual fun createBuffer(desc: BufferDescriptor): GPUBuffer { - return Arena.ofConfined().use { scope -> - val descriptor = WGPUBufferDescriptor.allocate(scope) - WGPUBufferDescriptor.nextInChain(descriptor, WGPU_NULL) - WGPUBufferDescriptor.usage(descriptor, desc.usage.usageFlag) - WGPUBufferDescriptor.size(descriptor, desc.size) - WGPUBufferDescriptor.mappedAtCreation(descriptor, desc.mappedAtCreation.toInt()) - WGPUBufferDescriptor.label(descriptor, desc.label.toNativeString(scope)) - GPUBuffer(wgpuDeviceCreateBuffer(segment, descriptor).asSlice(0, desc.size), desc.size) - } - } - actual fun createSampler(desc: SamplerDescriptor): Sampler { return Arena.ofConfined().use { scope -> val descriptor = WGPUSamplerDescriptor.allocate(scope) diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt index ad3fda3b7..5e935fde2 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt @@ -67,18 +67,18 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { entryPoint = spriteShader.vertexEntryPoint, buffers = listOf( - VertexBufferLayout( + VertexBufferLayoutView( arrayStride = 4 * 4, stepMode = VertexStepMode.instance, attributes = listOf( - VertexAttribute( + VertexAttributeView( format = VertexFormat.float32x2, offset = 0L, shaderLocation = 0, usage = VertexAttrUsage.POSITION ), - VertexAttribute( + VertexAttributeView( format = VertexFormat.float32x2, offset = VertexFormat.float32x2.sizeInByte @@ -89,12 +89,12 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { ) ) .gpuVertexBufferLayout, - VertexBufferLayout( + VertexBufferLayoutView( arrayStride = 2 * 4, stepMode = VertexStepMode.vertex, attributes = listOf( - VertexAttribute( + VertexAttributeView( format = VertexFormat.float32x2, offset = 0, shaderLocation = 2, diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/RotatingCubeExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/RotatingCubeExample.kt index ba8c92cc7..0d6c6af5b 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/RotatingCubeExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/RotatingCubeExample.kt @@ -4,10 +4,10 @@ import com.littlekt.Context import com.littlekt.ContextListener import com.littlekt.file.FloatBuffer import com.littlekt.graphics.Color -import com.littlekt.graphics.webgpu.* import com.littlekt.math.Mat4 import com.littlekt.math.geom.radians import com.littlekt.util.now +import io.ygdrasil.wgpu.BufferUsage import kotlin.math.cos import kotlin.math.sin @@ -455,7 +455,7 @@ class RotatingCubeExample(context: Context) : ContextListener(context) { device.createGPUFloatBuffer( "mvp buffer", modelViewProjMatrix.data, - BufferUsage.UNIFORM or BufferUsage.COPY_DST + BufferUsage.uniform or BufferUsage.copydst ) val shader = device.createShaderModule(shaderSrc) diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt index 890c9fa5f..2b093b517 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt @@ -6,7 +6,6 @@ import com.littlekt.file.FloatBuffer import com.littlekt.file.ShortBuffer import com.littlekt.file.vfs.readPixmap import com.littlekt.graphics.Color -import com.littlekt.graphics.webgpu.* /** * An example showing drawing a texture with pure WebGPU. diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt index 393ec7801..108b14999 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt @@ -6,8 +6,9 @@ import com.littlekt.file.FloatBuffer import com.littlekt.file.vfs.readTexture import com.littlekt.graphics.Color import com.littlekt.graphics.OrthographicCamera +import com.littlekt.graphics.createGPUFloatBuffer import com.littlekt.graphics.textureIndexedMesh -import com.littlekt.graphics.webgpu.* +import io.ygdrasil.wgpu.BufferUsage /** * An example showing drawing a texture with a [textureIndexedMesh] and using an @@ -93,7 +94,7 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { device.createGPUFloatBuffer( "camera uniform buffer", cameraFloatBuffer.toArray(), - BufferUsage.UNIFORM or BufferUsage.COPY_DST + setOf(BufferUsage.uniform, BufferUsage.copydst) ) val shader = device.createShaderModule(textureShader) diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt index 6a6ba7bbc..e6d5a462d 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt @@ -4,7 +4,6 @@ import com.littlekt.Context import com.littlekt.ContextListener import com.littlekt.file.vfs.readPixmap import com.littlekt.graphics.Color -import com.littlekt.graphics.webgpu.* /** * An example rendering a texture using a [CommandEncoder] in pure WebGPU. diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt index 98ad0728f..6d26cfc70 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt @@ -6,10 +6,11 @@ import com.littlekt.EngineStats import com.littlekt.file.FloatBuffer import com.littlekt.graphics.Color import com.littlekt.graphics.OrthographicCamera +import com.littlekt.graphics.createGPUFloatBuffer import com.littlekt.graphics.textureIndexedMesh -import com.littlekt.graphics.webgpu.* import com.littlekt.math.Vec4f import com.littlekt.resources.Textures +import io.ygdrasil.wgpu.BufferUsage import kotlin.random.Random /** @@ -111,7 +112,7 @@ class TiledMeshExample(context: Context) : ContextListener(context) { device.createGPUFloatBuffer( "camera uniform buffer", cameraFloatBuffer.toArray(), - BufferUsage.UNIFORM or BufferUsage.COPY_DST + setOf(BufferUsage.uniform, BufferUsage.copydst) ) val shader = device.createShaderModule(textureShader) From c611493a35ffb35c23007169a3c52ffc9722304c Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Thu, 26 Sep 2024 12:51:00 +0200 Subject: [PATCH 14/22] Refactor and simplify GPU-related classes and interfaces Updated several GPU-related classes to remove unnecessary comments and simplify constructors. Consolidated import statements and reduced verbosity by removing redundant or obvious documentation. Improved maintainability and readability by streamlining the code structure and usage. --- .../littlekt/graphics/VertexAttributeView.kt | 6 +- .../com/littlekt/graphics/webgpu/binding.kt | 58 +-- .../com/littlekt/graphics/webgpu/command.kt | 331 +--------------- .../com/littlekt/graphics/webgpu/webgpu.kt | 375 ------------------ .../littlekt/graphics/webgpu/command.js.kt | 52 +-- .../littlekt/graphics/webgpu/command.jvm.kt | 80 ---- 6 files changed, 8 insertions(+), 894 deletions(-) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeView.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeView.kt index dd85712aa..2439a60d6 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeView.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/VertexAttributeView.kt @@ -1,12 +1,12 @@ package com.littlekt.graphics import com.littlekt.graphics.util.CommonVertexView -import com.littlekt.graphics.webgpu.WebGPUVertexAttribute import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor.VertexState.VertexBufferLayout.VertexAttribute import io.ygdrasil.wgpu.VertexFormat /** - * Wraps a [WebGPUVertexAttribute] and tracks a [VertexAttrUsage]. + * Wraps a [VertexAttribute] and tracks a [VertexAttrUsage]. * * @param format the format of the input * @param offset byte offset of the start of the input @@ -25,7 +25,7 @@ data class VertexAttributeView( ) { private val usageIndex = usage.usage.countTrailingZeroBits() val gpuVertexAttribute = - RenderPipelineDescriptor.VertexState.VertexBufferLayout.VertexAttribute(format, offset, shaderLocation) + VertexAttribute(format, offset, shaderLocation) val key: Int = (usageIndex shl 8) + (shaderLocation and 0xFF) } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt index affb46e90..5908c9405 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt @@ -35,87 +35,31 @@ data class BindGroupDescriptor( ) : this(layout, listOf(entry), label) } -/** - * Handle to a binding group. - * - * A `BindGroup` represents the set of resources bound to the bindings described by a - * [BindGroupLayout]. It can be created with [Device.createBindGroup]. A `BindGroup` can be bound to - * a particular [RenderPassEncoder] with [RenderPassEncoder.setBindGroup], or to a - * [ComputePassEncoder] with [ComputePassEncoder.setBindGroup]. - */ expect class BindGroup : Releasable { override fun release() } -/** - * Describes the segment of a buffer to bind. - * - * @param buffer the buffer to bind - * @param offset base offset of the buffer, in bytes. - * @param size size of the binding in bytes - */ expect class BufferBinding(buffer: GPUBuffer, offset: Long = 0, size: Long = buffer.size - offset) : IntoBindingResource -/** Describes a generic binding layout. */ expect abstract class BindingLayout() -/** - * Describes the layout of a [BufferBinding]. - * - * @param type sub-type of the buffer binding. - * @param hasDynamicOffset indicates that the binding has a dynamic offset. One offset must be - * passed to [RenderPassEncoder.setBindGroup] for each dynamic binding in increasing order of - * binding number. - * @param minBindingSize the minimum size for a [BufferBinding] matching this entry, in bytes. - */ expect class BufferBindingLayout( type: BufferBindingType = BufferBindingType.UNIFORM, hasDynamicOffset: Boolean = false, minBindingSize: Long = 0, ) : BindingLayout -/** - * Describes the layout of binding a texture. - * - * ```wgsl - * @group(0) @binding(0) - * var t: texture_2d; - * ``` - * - * @param sampleType sample type of the texture binding. - * @param viewDimension dimension of the texture view that is going to be sampled. - * @param multisampled `true` if the texture has a sample count greater than 1. If this is `true`, - * the texture must be read from shaders with `texture1DMS`, `texture2DMS`, or `texture3DMS`, - * depending on dimension. - */ expect class TextureBindingLayout( sampleType: TextureSampleType = TextureSampleType.FLOAT, viewDimension: TextureViewDimension = TextureViewDimension.D2, multisampled: Boolean = false, ) : BindingLayout -/** - * A sampler binding layout that can be used to sample a texture. - * - * ```wgsl - * @group(0) @binding(0) - * var s: sampler; - * ``` - * - * @param type the sampler type of the sampler binding. - */ + expect class SamplerBindingLayout(type: SamplerBindingType = SamplerBindingType.FILTERING) : BindingLayout -/** - * Describes a single binding inside a bind group. - * - * @param binding binding index. Must match shader index and be unique inside a [BindGroupLayout]. A - * binding of index 1, would be described as layout(set = 0, binding = 1) uniform in shaders. - * @param visibility which shader stages can see this binding. - * @param bindingLayout the binding layout to be used in the [BindGroupLayout]. - */ expect class BindGroupLayoutEntry( binding: Int, visibility: ShaderStage, diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt index baf0c40fa..e0ab8ae64 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt @@ -96,23 +96,8 @@ expect class CommandEncoder : Releasable { copySize: Extent3D ) - /** - * Begins recording of a compute pass. - * - * @param label debug label for a [ComputePassEncoder] - * @return a [ComputePassEncoder] which records a single compute pass. - */ fun beginComputePass(label: String? = null): ComputePassEncoder - /** Copy data from one buffer to another. */ - fun copyBufferToBuffer( - source: GPUBuffer, - destination: GPUBuffer, - sourceOffset: Int = 0, - destinationOffset: Int = 0, - size: Long = destination.size - destinationOffset - ) - /** Copy data from a texture to a buffer. */ fun copyTextureToBuffer(source: TextureCopyView, dest: BufferCopyView, size: Extent3D) @@ -224,18 +209,6 @@ data class DepthStencilState( } } -/** - * State of the stencil operation (fixed-pipeline stage). - * - * For use in [DepthStencilState]. - * - * @param front front face mode. - * @param back back face mode. - * @param readMask stencil values are AND'd with this mask when reading and writing from the stencil - * buffer. Only lower 8 bits are used. - * @param writeMask stencil values are AND'd with this mask when writing to the stencil buffer. Only - * lower 8 bits are used. - */ data class StencilState( val front: StencilFaceState, val back: StencilFaceState, @@ -243,11 +216,6 @@ data class StencilState( val writeMask: Int ) -/** - * Describes the stencil state in a render pipeline. - * - * If you are not using a stencil state, set this to [StencilFaceState.IGNORE]. - */ data class StencilFaceState( /** * Comparison function that determines if the [failOp] or [passOp] is used on the stencil @@ -258,11 +226,9 @@ data class StencilFaceState( val failOp: StencilOperation, /** Operation that is performed when depth test fails but stencil test succeeds. */ val depthFailOp: StencilOperation, - /** Operation that is performed when stencil test succeeds. */ val passOp: StencilOperation ) { companion object { - /** Ignore the stencil state for the face. */ val IGNORE: StencilFaceState = StencilFaceState( compare = CompareFunction.ALWAYS, @@ -271,7 +237,6 @@ data class StencilFaceState( passOp = StencilOperation.KEEP ) - /** Write stencil state for the face. */ val WRITE: StencilFaceState = StencilFaceState( compare = CompareFunction.ALWAYS, @@ -280,7 +245,6 @@ data class StencilFaceState( passOp = StencilOperation.REPLACE ) - /** Read stencil state for the face. */ val READ: StencilFaceState = StencilFaceState( compare = CompareFunction.EQUAL, @@ -291,27 +255,8 @@ data class StencilFaceState( } } -/** - * Describes the biasing setting for the depth target. - * - * For use in [DepthStencilState]. - * - * @param constant constant depth biasing factor, in basic units of the depth format - * @param slopeScale slope depth biasing factor. - * @param clamp depth bias clamp value (absolute). - */ data class DepthBiasState(val constant: Int, val slopeScale: Float, val clamp: Float) -/** - * Describes the vertex processing in a render pipeline. - * - * For use in [RenderPipelineDescriptor]. - * - * @param module the compiled shader module for this stage - * @param entryPoint The name of the entry point in the compiled shader. There must be a function - * with this name in the shader. - * @param buffers The format of any vertex buffers used with this pipeline. - */ data class VertexState( val module: ShaderModule, val entryPoint: String, @@ -324,16 +269,6 @@ data class VertexState( ) : this(module, entryPoint, listOf(buffer)) } -/** - * Describes the state of primitive assembly and rasterization in a render pipeline. - * - * @param topology the primitive topology used to interpret vertices. - * @param stripIndexFormat when drawing strip topologies with indices, this is the required format - * for the index buffer. This has no effect on non-indexed or non-strip draws. - * @param frontFace the face to consider the front for the purpose of culling and stencil - * operations. - * @param cullMode the face culling mode. - */ data class PrimitiveState( val topology: PrimitiveTopology = PrimitiveTopology.TRIANGLE_LIST, val stripIndexFormat: IndexFormat? = null, @@ -341,16 +276,6 @@ data class PrimitiveState( val cullMode: CullMode = CullMode.NONE, ) -/** - * Describes the fragment processing in a render pipeline. - * - * For use in [RenderPipelineDescriptor]. - * - * @param module the compiled shader module for this stage. - * @param entryPoint the name of the entry point in the compiled shader. There must be a function - * with this name in the shader. - * @param targets the color state of the render targets. - */ data class FragmentState( val module: ShaderModule, val entryPoint: String, @@ -363,26 +288,12 @@ data class FragmentState( ) : this(module, entryPoint, listOf(target)) } -/** - * Describes the color state of a render pipeline. - * - * @param format the [TextureFormat] of the image that this pipeline will render to. Must match the - * format of the corresponding color attachment in [CommandEncoder.beginRenderPass]. - * @param blendState the blending that is used for this pipeline. - * @param writeMask mask which enables/disables writes to different color/alpha channels. - */ data class ColorTargetState( val format: TextureFormat, val blendState: BlendState?, val writeMask: ColorWriteMask ) -/** - * Describe the blend state of a render pipeline, with [ColorTargetState]. - * - * @param color the color equation - * @param alpha the alpha equation - */ data class BlendState( val color: BlendComponent = BlendComponent(), val alpha: BlendComponent = BlendComponent() @@ -527,121 +438,34 @@ data class BlendState( } } -/** - * Vertex inputs (attributes) to shaders. - * - * @param format the format of the input - * @param offset byte offset of the start of the input - * @param shaderLocation location for this input. Must match the location in the shader. - */ data class WebGPUVertexAttribute( val format: VertexFormat, val offset: Long, val shaderLocation: Int ) -/** - * Describes how the vertex buffer is interpreted. - * - * For use in [VertexState]. - * - * @param arrayStride the stride, in bytes, between elements of this buffer. - * @param stepMode how often this vertex buffer is "stepped" forward. - * @param attributes the list of attributes which comprise a single vertex. - */ data class WebGPUVertexBufferLayout( val arrayStride: Long, val stepMode: VertexStepMode, val attributes: List -) { - constructor( - arrayStride: Long, - stepMode: VertexStepMode, - attribute: WebGPUVertexAttribute - ) : this(arrayStride, stepMode, listOf(attribute)) -} +) -/** - * Describes a blend component of a [BlendState]. - * - * @param srcFactor multiplier for the source, which is produced by the fragment shader. - * @param dstFactor multiplier for the destination, which is stored in the target. - * @param operation the binary operation applied to the source and destination, multiplied by their - * respective factors. - */ data class BlendComponent( var srcFactor: BlendFactor = BlendFactor.ONE, var dstFactor: BlendFactor = BlendFactor.ZERO, var operation: BlendOperation = BlendOperation.ADD ) -/** - * Handle to a rendering (graphics) pipeline, - * - * A `RenderPipeline` object represents a graphics pipeline and its stages, bindings, vertex buffers - * and targets. It can be created with [Device.createRenderPipeline]. - */ -expect class RenderPipeline : Releasable { - override fun release() -} - -/** - * An in-progress recording of a render pass: a list of render commands in a [CommandEncoder]. - * - * It can be created with [CommandEncoder.beginRenderPass], whose [RenderPassDescriptor] specifies - * the attachments (textures) that will be rendered to. - * - * Most of the methods on `RenderPassEncoder` serve one of two purposes, identifiable by their - * names: - * * `draw*()`: drawing (that is, encoding a render command, which, when executed by the GPU, will - * rasterize something and execute shaders). - * * `set*()`: setting part of the render state for future drawing commands. - * - * A render pass may contain any number of drawing commands, and before/between each command the - * render state may be updated however you wish; each drawing command will be executed using the - * render state that has been set when the `draw*()` function is called. - */ expect class RenderPassEncoder : Releasable { - /** A label that can be used to identify the object in error messages or warnings. */ + val label: String? - /** - * Sets the active render pipeline. - * - * Subsequent draw calls will exhibit the behavior defined by pipeline. - */ - fun setPipeline(pipeline: RenderPipeline) - /** - * Draws primitives using the active vertex buffers. - * - * The active vertex buffers can be set with [setVertexBuffer]. - * - * Fails if indices range is outside of the range of the vertices range of any set vertex - * buffer. - * - * This drawing command uses the current render state, as set by preceding `set*()` methods. It - * is not affected by changes to the state that are performed after it is called. - * - * @param vertexCount the amount of vertices to draw - * @param instanceCount Range of Instances to draw. Use 0..1 if instance buffers are not used. - * E.g.of how its used internally - * @param firstVertex the offset into the vertex buffers, in vertices, to begin drawing from - * @param firstInstance a number defining the first instance to draw. - */ fun draw(vertexCount: Int, instanceCount: Int, firstVertex: Int = 0, firstInstance: Int = 0) - /** Completes recording of the render pass commands sequence. */ fun end() - /** - * Assign a vertex buffer to a slot. - * - * Subsequent calls to [draw] and [drawIndexed] on this [RenderPassEncoder] will use [buffer] as - * one of the source vertex buffers. - * - * The [slot] refers to the index of the matching descriptor in [VertexState.buffers]. - */ + fun setVertexBuffer( slot: Int, buffer: GPUBuffer, @@ -649,24 +473,6 @@ expect class RenderPassEncoder : Releasable { size: Long = buffer.size - offset ) - /** - * Draws indexed primitives using the active index buffer and the active vertex buffers. - * - * The active index buffer can be set with [setIndexBuffer] The active vertex buffers can be set - * with [setVertexBuffer]. - * - * Fails if indices range is outside of the range of the indices range of any set index buffer. - * - * This drawing command uses the current render state, as set by preceding `set*()` methods. It - * is not affected by changes to the state that are performed after it is called. - * - * @param indexCount the amount of indices to draw - * @param instanceCount Range of Instances to draw. Use 0..1 if instance buffers are not used. - * E.g.of how its used internally - * @param firstIndex the offset to of the indices to begin drawing from - * @param baseVertex value added to each index value before indexing into the vertex buffers. - * @param firstInstance a number defining the first instance to draw. - */ fun drawIndexed( indexCount: Int, instanceCount: Int, @@ -675,12 +481,6 @@ expect class RenderPassEncoder : Releasable { firstInstance: Int = 0 ) - /** - * Sets the active index buffer. - * - * Subsequent calls to [drawIndexed] on this [RenderPassEncoder] will use buffer as the source - * index buffer. - */ fun setIndexBuffer( buffer: GPUBuffer, indexFormat: IndexFormat, @@ -688,63 +488,11 @@ expect class RenderPassEncoder : Releasable { size: Long = buffer.size - offset ) - /** - * Sets the active bind group for a given bind group index. The bind group layout in the active - * pipeline when any `draw*()` method is called must match the layout of this bind group. - * - * If the bind group have dynamic offsets, provide them in binding order. - * - * Subsequent draw calls’ shader executions will be able to access data in these bind groups. - */ - fun setBindGroup(index: Int, bindGroup: BindGroup, dynamicOffsets: List = emptyList()) - - /** - * Sets the viewport used during the rasterization stage to linear map from normalized device - * coordinates to viewport coordinates. - * - * @param x min x value of the viewport in pixels - * @param y min y value of the viewport in pixels - * @param width width of the viewport in pixels - * @param height height of the viewport in pixels - * @param minDepth min depth value of the viewport - * @param maxDepth max depth value of the viewport - */ - fun setViewport( - x: Int, - y: Int, - width: Int, - height: Int, - minDepth: Float = 0f, - maxDepth: Float = 1f - ) - - /** - * Sets the scissor rectangle used during the rasterization stage. After transformation into - * viewport coordinates any fragments which fall outside the scissor rectnagle will be - * discarded. - * - * @param x min x value of the scissor rectangle in pixels - * @param y min y value of the scissor rectangle in pixels - * @param width width of the scissor rectangle in pixels - * @param height height of the scissor rectangle in pixels - */ fun setScissorRect(x: Int, y: Int, width: Int, height: Int) override fun release() } -/** - * Describes a color attachment to a [RenderPassEncoder]. - * - * For use with a [RenderPassDescriptor]. - * - * @param view the view to use as an attachment - * @param loadOp the load operation that will be performed on this color attachment. - * @param storeOp the store operation that will be performed on this color attachment. - * @param clearColor the color to clear the view - * @param resolveTarget the view that will receive the resolved output if multisampling is used. If - * set, it is always written to, regardless of how [loadOp] or [storeOp] is configured. - */ data class RenderPassColorAttachmentDescriptor( val view: TextureView, val loadOp: LoadOp, @@ -753,27 +501,6 @@ data class RenderPassColorAttachmentDescriptor( val resolveTarget: TextureView? = null ) -/** - * Describes a depth/stencil attachment to a [RenderPassEncoder]. - * - * For use with a [RenderPassDescriptor]. - * - * @param view the view to use as an attachment. - * @param depthClearValue indicates the value to clear the views depth component prior to executing - * the render pass. Ignored if [depthLoadOp] is not [LoadOp.CLEAR]. Must be between `0f` and `1f`. - * @param depthLoadOp the load operation that will be performed on the depth part of this - * attachment. - * @param depthStoreOp the store operation that will be performed on the depth part of this - * attachment. - * @param depthReadOnly Indicates that the depth component of [view] is read only. - * @param stencilClearValue indicates the value to clear the views stencil component prior to - * executing the render pass. Ignored if [stencilLoadOp] is not [LoadOp.CLEAR]. - * @param stencilLoadOp the load operation that will be performed on the stencil part of this - * attachment. - * @param stencilStoreOp the store operation that will be performed on the stencil part of this - * attachment. - * @param stencilReadOnly Indicates that the stencil component of [view] is read only. - */ data class RenderPassDepthStencilAttachmentDescriptor( val view: TextureView, val depthClearValue: Float, @@ -786,71 +513,19 @@ data class RenderPassDepthStencilAttachmentDescriptor( val stencilReadOnly: Boolean = false ) -/** - * Describes the attachments of a render pass. - * - * For use with [CommandEncoder.beginRenderPass]. - * - * @param colorAttachments the color attachments of the render pass. - * @param depthStencilAttachment the depth stencil attachment of the render pass, if any. - * @param label debug label of a [RenderPassEncoder]. - */ data class RenderPassDescriptor( val colorAttachments: List, val depthStencilAttachment: RenderPassDepthStencilAttachmentDescriptor? = null, val label: String? = null ) -/** - * Describes a compute pipeline. For use with [Device.createComputePipeline]. - * - * @param layout the layout of bind groups for this pipeline. - * @param compute the programmable stage descriptor for this pipeline - * @param label debug label of a [ComputePipeline]. - */ -data class ComputePipelineDescriptor( - val layout: PipelineLayout, - val compute: ProgrammableStage, - val label: String? = null -) - -/** - * Handle to a compute pipeline. - * - * A `ComputePipeline` object represents a compute pipeline and its single shader stage. It can be - * created with [Device.createComputePipeline]. - */ expect class ComputePipeline : Releasable { override fun release() } -/** - * In-progress recording of a compute pass. It can be created with - * [CommandEncoder.beginComputePass]. - */ expect class ComputePassEncoder : Releasable { - /** Sets the active compute pipeline. */ - fun setPipeline(pipeline: ComputePipeline) - - /** - * Sets the active bind group for a given bind group index. This bind group layout in the active - * pipeline when the `[dispatchWorkgroups]` function is called must match the layout of this - * bind group. - */ - fun setBindGroup(index: Int, bindGroup: BindGroup) - - /** - * Dispatches the compute work operations. - * - * @param workgroupCountX denote number of work groups in x-dimension - * @param workgroupCountY denote number of work groups in y-dimension - * @param workgroupCountZ denote number of work groups in z-dimension - */ fun dispatchWorkgroups(workgroupCountX: Int, workgroupCountY: Int = 1, workgroupCountZ: Int = 1) - /** End the recording of this compute pass. */ - fun end() - override fun release() } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt index a53b2b1af..0778da156 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt @@ -35,381 +35,6 @@ expect class Adapter : Releasable { override fun release() } -/** - * A descriptor used when requesting a device from an adapter via [Adapter.requestDevice] - * - * @param label A debug label of a [Device]. - * @param requiredFeatures A list of [Feature] required to be supported by a [Device]. - * @param requiredLimits The [Limits] required to support by a [Device] via [RequiredLimits] - */ -data class DeviceDescriptor( - val label: String? = null, - val requiredFeatures: List? = null, - val requiredLimits: RequiredLimits? = null -) - -/** - * Each limit is a numeric limit on the usage of WebGPU on a device. - * - * Each limit has a default value. Every [Adapter] is guaranteed to support the default value or - * better. The default is used if a value is not explicitly specified in requiredLimits. - * - * One limit value may be better than another. A better limit value always relaxes validation, - * enabling strictly more programs to be valid. For each limit class, "better" is defined. - * - * Different limits have different limit classes: - * - **maximum**: The limit enforces a maximum on some value passed into the API. Higher values are - * better. May only be set to values ≥ the default. Lower values are clamped to the default. - * - **alignment**: The limit enforces a minimum alignment on some value passed into the API; that - * is, the value must be a multiple of the limit. Lower values are better. May only be set to - * powers of 2 which are ≤ the default. Values which are not powers of 2 are invalid. Higher - * powers of 2 are clamped to the default. - * - * **Note**: Setting "better" limits may not necessarily be desirable, as they may have a - * performance impact. Because of this, and to improve portability across devices and - * implementations, applications should generally request the "worst" limits that work for their - * content (ideally, the default values). - */ -data class RequiredLimits( - /** The maximum allowed value for the size.width of a texture created with dimension "1d". */ - val maxTextureDimension1D: Int? = null, - /** - * The maximum allowed value for the size.width and size.height of a texture created with - * dimension "2d". - */ - val maxTextureDimension2D: Int? = null, - /** - * The maximum allowed value for the size.width, size.height and size.depthOrArrayLayers of a - * texture created with dimension "3d". - */ - val maxTextureDimension3D: Int? = null, - /** - * The maximum allowed value for the size.depthOrArrayLayers of a texture created with dimension - * "2d". - */ - val maxTextureArrayLayers: Int? = null, - /** - * The maximum number of [BindGroupLayout] allowed in bindGroupLayouts when creating a - * [PipelineLayout]. - */ - val maxBindGroups: Int? = null, - /** - * The maximum number of bind group and vertex buffer slots used simultaneously, counting any - * empty slots below the highest index. Validated in createRenderPipeline() and in draw calls. - */ - val maxBindGroupsPlusVertexBuffers: Int? = null, - - /** - * The number of binding indices available when creating a [BindGroupLayout]. - * - * **Note**: This limit is normative, but arbitrary. With the default binding slot limits, it is - * impossible to use 1000 bindings in one bind group, but this allows - * [BindGroupLayoutEntry.binding] values up to 999. This limit allows implementations to treat - * binding space as an array, within reasonable memory space, rather than a sparse map - * structure. - */ - val maxBindingsPerBindGroup: Int? = null, - /** - * The maximum number of [BindGroupLayoutEntry] entries across a [PipelineLayout] which are - * uniform buffers with dynamic offsets. - */ - val maxDynamicUniformBuffersPerPipelineLayout: Int? = null, - /** - * The maximum number of [BindGroupLayoutEntry] entries across a [PipelineLayout] which are - * storage buffers with dynamic offset - */ - val maxDynamicStorageBuffersPerPipelineLayout: Int? = null, - /** - * For each possible [ShaderStage] stage, the maximum number of [BindGroupLayoutEntry] entries - * across a [PipelineLayout] which are sampled textures. - */ - val maxSampledTexturesPerShaderStage: Int? = null, - /** - * For each possible [ShaderStage] stage, the maximum number of [BindGroupLayoutEntry] entries - * across a [PipelineLayout] which are samplers. - */ - val maxSamplersPerShaderStage: Int? = null, - /** - * For each possible GPUShaderStage stage, the maximum number of GPUBindGroupLayoutEntry entries - * across a GPUPipelineLayout which are storage buffers. - */ - val maxStorageBuffersPerShaderStage: Int? = null, - /** - * For each possible GPUShaderStage stage, the maximum number of GPUBindGroupLayoutEntry entries - * across a GPUPipelineLayout which are storage textures. - */ - val maxStorageTexturesPerShaderStage: Int? = null, - /** - * For each possible GPUShaderStage stage, the maximum number of GPUBindGroupLayoutEntry entries - * across a GPUPipelineLayout which are uniform buffers. - */ - val maxUniformBuffersPerShaderStage: Int? = null, - /** - * The maximum GPUBufferBinding.size for bindings with a GPUBindGroupLayoutEntry entry for which - * entry.buffer?.type is "uniform". - */ - val maxUniformBufferBindingSize: Long? = null, - /** - * The maximum GPUBufferBinding.size for bindings with a GPUBindGroupLayoutEntry entry for which - * entry.buffer?.type is "storage" or "read-only-storage". - */ - val maxStorageBufferBindingSize: Long? = null, - /** - * The required alignment for GPUBufferBinding.offset and the dynamic offsets provided in - * setBindGroup(), for bindings with a GPUBindGroupLayoutEntry entry for which - * entry.buffer?.type is "uniform". - */ - val minUniformBufferOffsetAlignment: Int? = null, - /** - * The required alignment for GPUBufferBinding.offset and the dynamic offsets provided in - * setBindGroup(), for bindings with a GPUBindGroupLayoutEntry entry for which - * entry.buffer?.type is "storage" or "read-only-storage". - */ - val minStorageBufferOffsetAlignment: Int? = null, - /** The maximum number of buffers when creating a GPURenderPipeline. */ - val maxVertexBuffers: Int? = null, - /** The maximum size of size when creating a GPUBuffer. */ - val maxBufferSize: Long? = null, - /** - * The maximum number of attributes in total across buffers when creating a GPURenderPipeline. - */ - val maxVertexAttributes: Int? = null, - /** The maximum allowed arrayStride when creating a GPURenderPipeline. */ - val maxVertexBufferArrayStride: Int? = null, - /** - * The maximum allowed number of components of input or output variables for inter-stage - * communication (like vertex outputs or fragment inputs). - */ - val maxInterStageShaderComponents: Int? = null, - /** - * The maximum allowed number of input or output variables for inter-stage communication (like - * vertex outputs or fragment inputs). - */ - val maxInterStageShaderVariables: Int? = null, - /** - * The maximum allowed number of color attachments in - * GPURenderPipelineDescriptor.fragment.targets, GPURenderPassDescriptor.colorAttachments, and - * GPURenderPassLayout.colorFormats. - */ - val maxColorAttachments: Int? = null, - /** - * The maximum number of bytes necessary to hold one sample (pixel or subpixel) of render - * pipeline output data, across all color attachments. - */ - val maxColorAttachmentBytesPerSample: Int? = null, - /** - * The maximum number of bytes of workgroup storage used for a compute stage GPUShaderModule - * entry-point. - */ - val maxComputeWorkgroupStorageSize: Int? = null, - /** - * The maximum value of the product of the workgroup_size dimensions for a compute stage - * GPUShaderModule entry-point. - */ - val maxComputeInvocationsPerWorkgroup: Int? = null, - /** - * The maximum value of the workgroup_size X dimension for a compute stage GPUShaderModule - * entry-point. - */ - val maxComputeWorkgroupSizeX: Int? = null, - /** - * The maximum value of the workgroup_size Y dimensions for a compute stage GPUShaderModule - * entry-point. - */ - val maxComputeWorkgroupSizeY: Int? = null, - /** - * The maximum value of the workgroup_size Z dimensions for a compute stage GPUShaderModule - * entry-point. - */ - val maxComputeWorkgroupSizeZ: Int? = null, - /** - * The maximum value for the arguments of dispatchWorkgroups(workgroupCountX, workgroupCountY, - * workgroupCountZ). - */ - val maxComputeWorkgroupsPerDimension: Int? = null, -) - -/** - * Each limit is a numeric limit on the usage of WebGPU on a device. - * - * Each limit has a default value. Every [Adapter] is guaranteed to support the default value or - * better. The default is used if a value is not explicitly specified in requiredLimits. - * - * One limit value may be better than another. A better limit value always relaxes validation, - * enabling strictly more programs to be valid. For each limit class, "better" is defined. - * - * Different limits have different limit classes: - * - **maximum**: The limit enforces a maximum on some value passed into the API. Higher values are - * better. May only be set to values ≥ the default. Lower values are clamped to the default. - * - **alignment**: The limit enforces a minimum alignment on some value passed into the API; that - * is, the value must be a multiple of the limit. Lower values are better. May only be set to - * powers of 2 which are ≤ the default. Values which are not powers of 2 are invalid. Higher - * powers of 2 are clamped to the default. - * - * **Note**: Setting "better" limits may not necessarily be desirable, as they may have a - * performance impact. Because of this, and to improve portability across devices and - * implementations, applications should generally request the "worst" limits that work for their - * content (ideally, the default values). - */ -data class Limits( - /** The maximum allowed value for the size.width of a texture created with dimension "1d". */ - val maxTextureDimension1D: Int, - /** - * The maximum allowed value for the size.width and size.height of a texture created with - * dimension "2d". - */ - val maxTextureDimension2D: Int, - /** - * The maximum allowed value for the size.width, size.height and size.depthOrArrayLayers of a - * texture created with dimension "3d". - */ - val maxTextureDimension3D: Int, - /** - * The maximum allowed value for the size.depthOrArrayLayers of a texture created with dimension - * "2d". - */ - val maxTextureArrayLayers: Int, - /** - * The maximum number of [BindGroupLayout] allowed in bindGroupLayouts when creating a - * [PipelineLayout]. - */ - val maxBindGroups: Int, - /** - * The maximum number of bind group and vertex buffer slots used simultaneously, counting any - * empty slots below the highest index. Validated in createRenderPipeline() and in draw calls. - */ - val maxBindGroupsPlusVertexBuffers: Int, - - /** - * The number of binding indices available when creating a [BindGroupLayout]. - * - * **Note**: This limit is normative, but arbitrary. With the default binding slot limits, it is - * impossible to use 1000 bindings in one bind group, but this allows - * [BindGroupLayoutEntry.binding] values up to 999. This limit allows implementations to treat - * binding space as an array, within reasonable memory space, rather than a sparse map - * structure. - */ - val maxBindingsPerBindGroup: Int, - /** - * The maximum number of [BindGroupLayoutEntry] entries across a [PipelineLayout] which are - * uniform buffers with dynamic offsets. - */ - val maxDynamicUniformBuffersPerPipelineLayout: Int, - /** - * The maximum number of [BindGroupLayoutEntry] entries across a [PipelineLayout] which are - * storage buffers with dynamic offset - */ - val maxDynamicStorageBuffersPerPipelineLayout: Int, - /** - * For each possible [ShaderStage] stage, the maximum number of [BindGroupLayoutEntry] entries - * across a [PipelineLayout] which are sampled textures. - */ - val maxSampledTexturesPerShaderStage: Int, - /** - * For each possible [ShaderStage] stage, the maximum number of [BindGroupLayoutEntry] entries - * across a [PipelineLayout] which are samplers. - */ - val maxSamplersPerShaderStage: Int, - /** - * For each possible GPUShaderStage stage, the maximum number of GPUBindGroupLayoutEntry entries - * across a GPUPipelineLayout which are storage buffers. - */ - val maxStorageBuffersPerShaderStage: Int, - /** - * For each possible GPUShaderStage stage, the maximum number of GPUBindGroupLayoutEntry entries - * across a GPUPipelineLayout which are storage textures. - */ - val maxStorageTexturesPerShaderStage: Int, - /** - * For each possible GPUShaderStage stage, the maximum number of GPUBindGroupLayoutEntry entries - * across a GPUPipelineLayout which are uniform buffers. - */ - val maxUniformBuffersPerShaderStage: Int, - /** - * The maximum GPUBufferBinding.size for bindings with a GPUBindGroupLayoutEntry entry for which - * entry.buffer?.type is "uniform". - */ - val maxUniformBufferBindingSize: Long, - /** - * The maximum GPUBufferBinding.size for bindings with a GPUBindGroupLayoutEntry entry for which - * entry.buffer?.type is "storage" or "read-only-storage". - */ - val maxStorageBufferBindingSize: Long, - /** - * The required alignment for GPUBufferBinding.offset and the dynamic offsets provided in - * setBindGroup(), for bindings with a GPUBindGroupLayoutEntry entry for which - * entry.buffer?.type is "uniform". - */ - val minUniformBufferOffsetAlignment: Int, - /** - * The required alignment for GPUBufferBinding.offset and the dynamic offsets provided in - * setBindGroup(), for bindings with a GPUBindGroupLayoutEntry entry for which - * entry.buffer?.type is "storage" or "read-only-storage". - */ - val minStorageBufferOffsetAlignment: Int, - /** The maximum number of buffers when creating a GPURenderPipeline. */ - val maxVertexBuffers: Int, - /** The maximum size of size when creating a GPUBuffer. */ - val maxBufferSize: Long, - /** - * The maximum number of attributes in total across buffers when creating a GPURenderPipeline. - */ - val maxVertexAttributes: Int, - /** The maximum allowed arrayStride when creating a GPURenderPipeline. */ - val maxVertexBufferArrayStride: Int, - /** - * The maximum allowed number of components of input or output variables for inter-stage - * communication (like vertex outputs or fragment inputs). - */ - val maxInterStageShaderComponents: Int, - /** - * The maximum allowed number of input or output variables for inter-stage communication (like - * vertex outputs or fragment inputs). - */ - val maxInterStageShaderVariables: Int, - /** - * The maximum allowed number of color attachments in - * GPURenderPipelineDescriptor.fragment.targets, GPURenderPassDescriptor.colorAttachments, and - * GPURenderPassLayout.colorFormats. - */ - val maxColorAttachments: Int, - /** - * The maximum number of bytes necessary to hold one sample (pixel or subpixel) of render - * pipeline output data, across all color attachments. - */ - val maxColorAttachmentBytesPerSample: Int, - /** - * The maximum number of bytes of workgroup storage used for a compute stage GPUShaderModule - * entry-point. - */ - val maxComputeWorkgroupStorageSize: Int, - /** - * The maximum value of the product of the workgroup_size dimensions for a compute stage - * GPUShaderModule entry-point. - */ - val maxComputeInvocationsPerWorkgroup: Int, - /** - * The maximum value of the workgroup_size X dimension for a compute stage GPUShaderModule - * entry-point. - */ - val maxComputeWorkgroupSizeX: Int, - /** - * The maximum value of the workgroup_size Y dimensions for a compute stage GPUShaderModule - * entry-point. - */ - val maxComputeWorkgroupSizeY: Int, - /** - * The maximum value of the workgroup_size Z dimensions for a compute stage GPUShaderModule - * entry-point. - */ - val maxComputeWorkgroupSizeZ: Int, - /** - * The maximum value for the arguments of dispatchWorkgroups(workgroupCountX, workgroupCountY, - * workgroupCountZ). - */ - val maxComputeWorkgroupsPerDimension: Int, -) - /** * A handle to a command queue on a [Device]. * diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/command.js.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/command.js.kt index af4ae19aa..1f39774d8 100644 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/command.js.kt +++ b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/command.js.kt @@ -29,22 +29,6 @@ actual class CommandEncoder(val delegate: GPUCommandEncoder) : Releasable { return ComputePassEncoder(delegate.beginComputePass(GPUObjectBase { this.label = label })) } - actual fun copyBufferToBuffer( - source: GPUBuffer, - destination: GPUBuffer, - sourceOffset: Int, - destinationOffset: Int, - size: Long - ) { - delegate.copyBufferToBuffer( - source.delegate, - sourceOffset, - destination.delegate, - destinationOffset, - size - ) - } - actual fun copyTextureToBuffer(source: TextureCopyView, dest: BufferCopyView, size: Extent3D) { delegate.copyTextureToBuffer(source.toNative(), dest.toNative(), size.toNative()) } @@ -52,19 +36,11 @@ actual class CommandEncoder(val delegate: GPUCommandEncoder) : Releasable { actual override fun release() {} } -actual class RenderPipeline(val delegate: GPURenderPipeline) : Releasable { - actual override fun release() {} -} - actual class RenderPassEncoder( val delegate: GPURenderPassEncoder, actual val label: String? = null ) : Releasable { - actual fun setPipeline(pipeline: RenderPipeline) { - delegate.setPipeline(pipeline.delegate) - } - actual fun draw(vertexCount: Int, instanceCount: Int, firstVertex: Int, firstInstance: Int) { EngineStats.drawCalls++ EngineStats.triangles += (vertexCount / 3) * instanceCount @@ -100,21 +76,6 @@ actual class RenderPassEncoder( delegate.setIndexBuffer(buffer.delegate, indexFormat.nativeVal, offset, size) } - actual fun setBindGroup(index: Int, bindGroup: BindGroup, dynamicOffsets: List) { - delegate.setBindGroup(index, bindGroup.delegate, dynamicOffsets.toLongArray()) - } - - actual fun setViewport( - x: Int, - y: Int, - width: Int, - height: Int, - minDepth: Float, - maxDepth: Float - ) { - delegate.setViewport(x, y, width, height, minDepth, maxDepth) - } - actual fun setScissorRect(x: Int, y: Int, width: Int, height: Int) { delegate.setScissorRect(x, y, width, height) } @@ -126,18 +87,11 @@ actual class RenderPassEncoder( } } -actual class ComputePipeline(val delegate: GPUComputePipeline) : Releasable { +actual class ComputePipeline : Releasable { actual override fun release() = Unit } actual class ComputePassEncoder(val delegate: GPUComputePassEncoder) : Releasable { - actual fun setPipeline(pipeline: ComputePipeline) { - delegate.setPipeline(pipeline.delegate) - } - - actual fun setBindGroup(index: Int, bindGroup: BindGroup) { - delegate.setBindGroup(index, bindGroup.delegate) - } actual fun dispatchWorkgroups( workgroupCountX: Int, @@ -147,9 +101,5 @@ actual class ComputePassEncoder(val delegate: GPUComputePassEncoder) : Releasabl delegate.dispatchWorkgroups(workgroupCountX, workgroupCountY, workgroupCountZ) } - actual fun end() { - delegate.end() - } - actual override fun release() = Unit } diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt index 2c30805b5..209b01eef 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt @@ -9,17 +9,6 @@ import java.lang.foreign.MemorySegment import java.lang.foreign.SegmentAllocator import java.lang.foreign.ValueLayout -actual class RenderPipeline(val segment: MemorySegment) : Releasable { - - actual override fun release() { - wgpuRenderPipelineRelease(segment) - } - - override fun toString(): String { - return "RenderPipeline" - } -} - actual class CommandBuffer(val segment: MemorySegment) : Releasable { actual override fun release() { wgpuCommandBufferRelease(segment) @@ -203,23 +192,6 @@ actual class CommandEncoder(val segment: MemorySegment) : Releasable { } } - actual fun copyBufferToBuffer( - source: GPUBuffer, - destination: GPUBuffer, - sourceOffset: Int, - destinationOffset: Int, - size: Long - ) { - wgpuCommandEncoderCopyBufferToBuffer( - segment, - source.segment, - sourceOffset.toLong(), - destination.segment, - destinationOffset.toLong(), - size - ) - } - actual fun copyTextureToBuffer(source: TextureCopyView, dest: BufferCopyView, size: Extent3D) { TODO("IMPL") } @@ -232,10 +204,6 @@ actual class CommandEncoder(val segment: MemorySegment) : Releasable { actual class RenderPassEncoder(val segment: MemorySegment, actual val label: String? = null) : Releasable { - actual fun setPipeline(pipeline: RenderPipeline) { - wgpuRenderPassEncoderSetPipeline(segment, pipeline.segment) - } - actual fun draw(vertexCount: Int, instanceCount: Int, firstVertex: Int, firstInstance: Int) { EngineStats.drawCalls++ EngineStats.triangles += (vertexCount / 3) * instanceCount @@ -284,47 +252,10 @@ actual class RenderPassEncoder(val segment: MemorySegment, actual val label: Str ) } - actual fun setBindGroup(index: Int, bindGroup: BindGroup, dynamicOffsets: List) { - if (dynamicOffsets.isNotEmpty()) { - Arena.ofConfined().use { scope -> - val offsets = - scope.allocateFrom(ValueLayout.JAVA_LONG, *dynamicOffsets.toLongArray()) - wgpuRenderPassEncoderSetBindGroup( - segment, - index, - bindGroup.segment, - dynamicOffsets.size.toLong(), - offsets - ) - } - } else { - wgpuRenderPassEncoderSetBindGroup(segment, index, bindGroup.segment, 0, WGPU_NULL) - } - } - actual override fun release() { wgpuRenderPassEncoderRelease(segment) } - actual fun setViewport( - x: Int, - y: Int, - width: Int, - height: Int, - minDepth: Float, - maxDepth: Float - ) { - wgpuRenderPassEncoderSetViewport( - segment, - x.toFloat(), - y.toFloat(), - width.toFloat(), - height.toFloat(), - minDepth, - maxDepth - ) - } - actual fun setScissorRect(x: Int, y: Int, width: Int, height: Int) { wgpuRenderPassEncoderSetScissorRect(segment, x, y, width, height) } @@ -345,13 +276,6 @@ actual class ComputePipeline(val segment: MemorySegment) : Releasable { } actual class ComputePassEncoder(val segment: MemorySegment) : Releasable { - actual fun setPipeline(pipeline: ComputePipeline) { - wgpuComputePassEncoderSetPipeline(segment, pipeline.segment) - } - - actual fun setBindGroup(index: Int, bindGroup: BindGroup) { - wgpuComputePassEncoderSetBindGroup(segment, index, bindGroup.segment, 0, WGPU_NULL) - } actual fun dispatchWorkgroups( workgroupCountX: Int, @@ -366,10 +290,6 @@ actual class ComputePassEncoder(val segment: MemorySegment) : Releasable { ) } - actual fun end() { - wgpuComputePassEncoderEnd(segment) - } - actual override fun release() { wgpuComputePassEncoderRelease(segment) } From 74c8d26b64b46dfacb60a8112dee66e6b39415c4 Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Fri, 27 Sep 2024 00:44:24 +0200 Subject: [PATCH 15/22] Refactor and simplify GPU-related codebase Removed redundant GPU-related classes and interfaces across multiple files to streamline the codebase. Consolidated functions and removed verbose or trivial comments. This improves maintainability and enhances code readability by focusing on essential functionality and reducing clutter. --- .../littlekt/file/ldtk/-LDtkLevelLoader.kt | 1 - .../graphics/g2d/SpriteBatchShader.kt | 2 +- .../graphics/g2d/SpriteCacheShader.kt | 2 +- .../com/littlekt/graphics/util/VertexView.kt | 3 +- .../com/littlekt/graphics/webgpu/binding.kt | 96 -- .../com/littlekt/graphics/webgpu/command.kt | 531 ----------- .../com/littlekt/graphics/webgpu/enums.kt | 836 ------------------ .../com/littlekt/graphics/webgpu/webgpu.kt | 347 -------- .../littlekt/resources/BufferResourceInfo.kt | 4 +- .../littlekt/resources/TextureResourceInfo.kt | 3 +- .../kotlin/com/littlekt/WebGPUContext.kt | 11 +- .../kotlin/com/littlekt/WebGPUGraphics.kt | 4 +- .../graphics/webgpu/DataToNativeExt.kt | 139 --- .../littlekt/graphics/webgpu/binding.js.kt | 66 -- .../littlekt/graphics/webgpu/command.js.kt | 105 --- .../com/littlekt/graphics/webgpu/enums.js.kt | 402 --------- .../graphics/webgpu/gpu.external.classes.kt | 194 ---- .../webgpu/gpu.external.interfaces.kt | 337 ------- .../com/littlekt/graphics/webgpu/webgpu.js.kt | 172 ---- .../kotlin/com/littlekt/LittleKtApp.jvm.kt | 1 - .../kotlin/com/littlekt/LwjglContext.kt | 3 +- .../com/littlekt/graphics/webgpu/-utils.kt | 65 -- .../littlekt/graphics/webgpu/binding.jvm.kt | 133 --- .../littlekt/graphics/webgpu/command.jvm.kt | 296 ------- .../com/littlekt/graphics/webgpu/enums.jvm.kt | 458 ---------- .../littlekt/graphics/webgpu/webgpu.jvm.kt | 295 ------ .../examples/GameWorldAndUIViewports.kt | 1 - .../littlekt/examples/TextureMeshExample.kt | 1 - .../com/littlekt/examples/TriangleExample.kt | 1 - gradlew | 0 .../kotlin/com/littlekt/graph/SceneGraph.kt | 1 - .../com/littlekt/graph/node/CanvasLayer.kt | 1 - .../kotlin/com/littlekt/graph/node/Node.kt | 1 - settings.gradle.kts | 2 +- 34 files changed, 16 insertions(+), 4498 deletions(-) delete mode 100644 core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt delete mode 100644 core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt delete mode 100644 core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt delete mode 100644 core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt delete mode 100644 core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/DataToNativeExt.kt delete mode 100644 core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/binding.js.kt delete mode 100644 core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/command.js.kt delete mode 100644 core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/enums.js.kt delete mode 100644 core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/gpu.external.classes.kt delete mode 100644 core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/gpu.external.interfaces.kt delete mode 100644 core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt delete mode 100644 core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/-utils.kt delete mode 100644 core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/binding.jvm.kt delete mode 100644 core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt delete mode 100644 core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/enums.jvm.kt delete mode 100644 core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt mode change 100644 => 100755 gradlew diff --git a/core/src/commonMain/kotlin/com/littlekt/file/ldtk/-LDtkLevelLoader.kt b/core/src/commonMain/kotlin/com/littlekt/file/ldtk/-LDtkLevelLoader.kt index cad7d32a6..ea3a9b8e9 100644 --- a/core/src/commonMain/kotlin/com/littlekt/file/ldtk/-LDtkLevelLoader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/file/ldtk/-LDtkLevelLoader.kt @@ -8,7 +8,6 @@ import com.littlekt.graphics.g2d.TextureSlice import com.littlekt.graphics.g2d.tilemap.ldtk.* import com.littlekt.graphics.slice import com.littlekt.graphics.sliceWithBorderToTexture -import com.littlekt.graphics.webgpu.TextureFormat import com.littlekt.log.Logger import com.littlekt.math.geom.Point diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt index 6ca94ac0d..37144f557 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteBatchShader.kt @@ -128,7 +128,7 @@ class SpriteBatchShader(device: Device, cameraDynamicSize: Int = 50) : bindGroups: List, dynamicOffsets: List ) { - encoder.setBindGroup(0, bindGroups[0], dynamicOffsets) + encoder.setBindGroup(0, bindGroups[0], dynamicOffsets.map { it.toInt() }) encoder.setBindGroup(1, bindGroups[1]) } } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt index a68da31d8..701463a87 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/g2d/SpriteCacheShader.kt @@ -242,7 +242,7 @@ class SpriteCacheShader( bindGroups: List, dynamicOffsets: List ) { - encoder.setBindGroup(0, bindGroups[0], dynamicOffsets) + encoder.setBindGroup(0, bindGroups[0], dynamicOffsets.map { it.toInt() }) encoder.setBindGroup(1, bindGroups[1]) } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/util/VertexView.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/util/VertexView.kt index 9d8ea2183..9c372159c 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/util/VertexView.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/util/VertexView.kt @@ -3,7 +3,6 @@ package com.littlekt.graphics.util import com.littlekt.file.FloatBuffer import com.littlekt.graphics.MutableColor import com.littlekt.graphics.VertexAttributeView -import com.littlekt.graphics.webgpu.WebGPUVertexAttribute import com.littlekt.math.* import io.ygdrasil.wgpu.VertexFormat @@ -40,7 +39,7 @@ open class VertexView( private val _attributesViews = mutableMapOf() - /** A view into the vertex attribute, mapped by [WebGPUVertexAttribute.shaderLocation]. */ + /** A view into the vertex attribute, mapped by [VertexAttribute.shaderLocation]. */ val attributeViews: Map get() = _attributesViews diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt deleted file mode 100644 index 5908c9405..000000000 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/binding.kt +++ /dev/null @@ -1,96 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.Releasable - -/** A resource that can be bound to a pipeline. */ -expect interface IntoBindingResource - -/** - * An element of a [BindGroupDescriptor], consisting of bind-able resource and the slot to bind it - * to. - * - * @param binding slot for which binding provides resource. Corresponds to an entry of the same - * binding index in the [BindGroupLayoutDescriptor]. - * @param resource resource to attach to the binding. - */ -data class BindGroupEntry(val binding: Int, val resource: IntoBindingResource) - -/** - * Describes a group of bindings and the resources to be bound. For use with - * [Device.createBindGroup]. - * - * @param layout the [BindGroupLayout] that corresponds to this bind group. - * @param entries a list of resources to bind to this bind group. - * @param label debug label of a [BindGroup]. - */ -data class BindGroupDescriptor( - val layout: BindGroupLayout, - val entries: List, - val label: String? = null -) { - constructor( - layout: BindGroupLayout, - entry: BindGroupEntry, - label: String? = null - ) : this(layout, listOf(entry), label) -} - -expect class BindGroup : Releasable { - override fun release() -} - -expect class BufferBinding(buffer: GPUBuffer, offset: Long = 0, size: Long = buffer.size - offset) : - IntoBindingResource - -expect abstract class BindingLayout() - -expect class BufferBindingLayout( - type: BufferBindingType = BufferBindingType.UNIFORM, - hasDynamicOffset: Boolean = false, - minBindingSize: Long = 0, -) : BindingLayout - -expect class TextureBindingLayout( - sampleType: TextureSampleType = TextureSampleType.FLOAT, - viewDimension: TextureViewDimension = TextureViewDimension.D2, - multisampled: Boolean = false, -) : BindingLayout - - -expect class SamplerBindingLayout(type: SamplerBindingType = SamplerBindingType.FILTERING) : - BindingLayout - -expect class BindGroupLayoutEntry( - binding: Int, - visibility: ShaderStage, - bindingLayout: BindingLayout -) - -data class BindGroupLayoutDescriptor( - val entries: List, - val label: String? = null -) { - constructor(entry: BindGroupLayoutEntry) : this(listOf(entry)) -} - - -expect class BindGroupLayout : Releasable { - override fun release() -} - -/** - * A handle to a pipeline layout. - * - * A `PipelineLayout` describes the available binding groups of a pipeline. It can be created with - * [Device.createPipelineLayout]. - */ -expect class PipelineLayout : Releasable { - override fun release() -} - -expect class PipelineLayoutDescriptor( - bindGroupLayouts: List = emptyList(), - label: String? = null -) { - constructor(bindGroupLayout: BindGroupLayout, label: String? = null) -} diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt deleted file mode 100644 index e0ab8ae64..000000000 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/command.kt +++ /dev/null @@ -1,531 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.Releasable -import com.littlekt.graphics.Color -import io.ygdrasil.wgpu.VertexFormat - -/** - * A handle to a command buffer on the GPU. - * - * A `CommandBuffer` represents a complete sequence of commands that may be submitted to a command - * queue with [Queue.submit]. A `CommandBuffer` is obtained by recording a series of commands to a - * [CommandEncoder] and then calling [CommandEncoder.finish]. - */ -expect class CommandBuffer : Releasable { - override fun release() -} - -/** - * View of a texture which can be used to copy to/from a buffer/texture. - * - * @param texture the texture to be copied to/from. - * @param mipLevel the target mip level of the texture. - * @param origin the base texel of the texture in the select [mipLevel]. - */ -data class TextureCopyView( - val texture: WebGPUTexture, - val mipLevel: Int = 0, - val origin: Origin3D = Origin3D(0, 0, 0) -) - -/** - * Layout of a texture in a buffer's memory. - * - * The bytes per row and rows per image can be hard to figure otu so here are some examples: - * - * |Resolution|Format|Bytes per block|Pixels per block|Bytes per row |Rows per image | - * |----------|------|---------------|----------------|--------------------------------|----------------| - * |256x256 |RGBA8 |4 |1 * 1 * 1 |256 * 4 = 1024 |None | - * |32x16x8 |RGBA8 |4 |1 * 1 * 1 |32 * 4 = 128 padded to 256 = 256|None | - * |256x256 |BC3 |16 |4 * 4 * 1 |16 * (256 / 4) = 1024 = 1024 |None | - * |64x64x8 |BC3 |16 |4 * 4 * 1 |16 * (64 / 4) = 256 = 256 |64 / 4 = 16 = 16| - * - * @param bytesPerRow Bytes per “row” in an image. A row is one row of pixels or of compressed - * blocks in the x direction. This value is required if there are multiple rows (i.e. height or - * depth is more than one pixel or pixel block for compressed textures). Must be a multiple of 256 - * for [CommandEncoder.copyBufferToTexture] and [CommandEncoder.copyTextureToBuffer]. You must - * manually pad the image such that this is a multiple of 256. It will not affect the image data. - * [Queue.writeTexture] does not have this requirement. Must be a multiple of the texture block - * size. For non-compressed textures, this is 1. - * @param rowsPerImage “Rows” that make up a single “image”. A row is one row of pixels or of - * compressed blocks in the x direction. An image is one layer in the z direction of a 3D image or - * 2DArray texture. The amount of rows per image may be larger than the actual amount of rows of - * data. Required if there are multiple images (i.e. the depth is more than one). - * @param offset Offset into the buffer that is the start of the texture. Must be a multiple of - * texture block size. For non-compressed textures, this is 1. - */ -data class TextureDataLayout(val bytesPerRow: Int, val rowsPerImage: Int, val offset: Long = 0) - -/** - * View of a buffer which can be used to copy to/from a texture. - * - * @param buffer the buffer to be copied to/from. - * @param layout the layout of the texture data in this buffer. - */ -data class BufferCopyView(val buffer: GPUBuffer, val layout: TextureDataLayout) - -/** - * Encodes a series of GPU operations. - * - * A command encoder can record [RenderPassEncoder]es, [ComputePassEncoder]es, and transfer - * operations between driver-managed resources like [GPUBuffer]s and [WebGPUTexture]s. - * - * When finished recording, call [CommandEncoder.finish] to obtain a [CommandBuffer] which may be - * submitted for execution. - */ -expect class CommandEncoder : Releasable { - - /** - * Begins recording of a [RenderPassEncoder]. - * - * @return a [RenderPassEncoder] which records a single render pass. - */ - fun beginRenderPass(desc: RenderPassDescriptor): RenderPassEncoder - - /** - * Finishes recording. - * - * @return a [CommandBuffer] that can be submitted for execution. - */ - fun finish(): CommandBuffer - - /** Copy data from a buffer to a texture. */ - fun copyBufferToTexture( - source: BufferCopyView, - destination: TextureCopyView, - copySize: Extent3D - ) - - fun beginComputePass(label: String? = null): ComputePassEncoder - - /** Copy data from a texture to a buffer. */ - fun copyTextureToBuffer(source: TextureCopyView, dest: BufferCopyView, size: Extent3D) - - override fun release() -} - -/** - * Describes a programmable pipeline stage. - * - * @param module the compiled shader module for this stage - * @param entryPoint the name of the entry point in the compiled shader. There must be a function - * with this name in the shader. - */ -data class ProgrammableStage(val module: ShaderModule, val entryPoint: String) - -/** - * Describes a render (graphics) pipeline. - * - * For use with [Device.createRenderPipeline] - * - * @param layout The layout of bind groups for this pipeline. - * @param vertex The compiled vertex stage, its entry point, and the input buffers layout. - * @param fragment The compiled fragment stage, its entry point, and the color targets. - * @param primitive The properties of the pipeline at the primitive assembly and rasterization - * level. - * @param depthStencil The effect of draw calls on the depth and stencil aspects of the output - * target, if any. - * @param multisample The multi-sampling properties of the pipeline. - * @param label debug label of a buffer. - */ -data class RenderPipelineDescriptor( - val layout: PipelineLayout, - val vertex: VertexState, - val fragment: FragmentState?, - val primitive: PrimitiveState = PrimitiveState(), - val depthStencil: DepthStencilState? = null, - val multisample: MultisampleState = MultisampleState(), - val label: String? = null -) - -/** - * Describes the multi-sampling state of a render pipeline. - * - * @param count the number of samples calculated per pixel (for MSAA). For non-multisampled - * textures, this should be `1`. - * @param mask bitmask that restricts the samples of a pixel modifier by this pipeline. All samples - * can be enabled using `0xFFFFFFF` - * @param alphaToCoverageEnabled when enabled, produces another sample mask per pixel based on the - * alpha output value, that is ANDed with the [mask] and the primitive coverage to restrict the - * set of samples affected by a primitive. - * - * The implicit mask produced for alpha of zero is guaranteed to be zero, and for alpha of one is - * guaranteed to be all 1-s. - */ -data class MultisampleState( - val count: Int = 1, - val mask: Int = 0xFFFFFFF, - val alphaToCoverageEnabled: Boolean = false, -) - -/** - * Describes the depth/stencil state in a render pipeline. - * - * @param format format of the depth/stencil buffer must be special depth format. Must match the - * format of the depth/stencil attachment in [CommandEncoder.beginRenderPass]. - * @param depthWriteEnabled if disabled, depth will not be written to. - * @param depthCompare comparison function used to compare depth values in the depth test. - * @param stencil the stencil state. - * @param bias the depth bias state. - */ -data class DepthStencilState( - val format: TextureFormat, - val depthWriteEnabled: Boolean, - val depthCompare: CompareFunction, - val stencil: StencilState = - StencilState(StencilFaceState.IGNORE, StencilFaceState.IGNORE, 0xF, 0Xf), - val bias: DepthBiasState = DepthBiasState(0, 0f, 0f) -) { - companion object { - fun depthWrite(format: TextureFormat): DepthStencilState = - DepthStencilState( - format = format, - depthWriteEnabled = true, - depthCompare = CompareFunction.LESS_EQUAL - ) - - fun depthRead(format: TextureFormat): DepthStencilState = - DepthStencilState( - format = format, - depthWriteEnabled = false, - depthCompare = CompareFunction.LESS_EQUAL - ) - - fun stencilWrite(format: TextureFormat): DepthStencilState = - DepthStencilState( - format = format, - depthWriteEnabled = true, - depthCompare = CompareFunction.LESS_EQUAL, - stencil = StencilState(StencilFaceState.WRITE, StencilFaceState.WRITE, 0xF, 0xF) - ) - - fun stencilRead(format: TextureFormat): DepthStencilState = - DepthStencilState( - format = format, - depthWriteEnabled = true, - depthCompare = CompareFunction.LESS_EQUAL, - stencil = StencilState(StencilFaceState.READ, StencilFaceState.READ, 0xF, 0xF) - ) - } -} - -data class StencilState( - val front: StencilFaceState, - val back: StencilFaceState, - val readMask: Int, - val writeMask: Int -) - -data class StencilFaceState( - /** - * Comparison function that determines if the [failOp] or [passOp] is used on the stencil - * buffer. - */ - val compare: CompareFunction, - /** Operation that is performed when stencil test fails. */ - val failOp: StencilOperation, - /** Operation that is performed when depth test fails but stencil test succeeds. */ - val depthFailOp: StencilOperation, - val passOp: StencilOperation -) { - companion object { - val IGNORE: StencilFaceState = - StencilFaceState( - compare = CompareFunction.ALWAYS, - failOp = StencilOperation.KEEP, - depthFailOp = StencilOperation.KEEP, - passOp = StencilOperation.KEEP - ) - - val WRITE: StencilFaceState = - StencilFaceState( - compare = CompareFunction.ALWAYS, - failOp = StencilOperation.KEEP, - depthFailOp = StencilOperation.KEEP, - passOp = StencilOperation.REPLACE - ) - - val READ: StencilFaceState = - StencilFaceState( - compare = CompareFunction.EQUAL, - failOp = StencilOperation.KEEP, - depthFailOp = StencilOperation.KEEP, - passOp = StencilOperation.KEEP - ) - } -} - -data class DepthBiasState(val constant: Int, val slopeScale: Float, val clamp: Float) - -data class VertexState( - val module: ShaderModule, - val entryPoint: String, - val buffers: List = emptyList() -) { - constructor( - module: ShaderModule, - entryPoint: String, - buffer: WebGPUVertexBufferLayout - ) : this(module, entryPoint, listOf(buffer)) -} - -data class PrimitiveState( - val topology: PrimitiveTopology = PrimitiveTopology.TRIANGLE_LIST, - val stripIndexFormat: IndexFormat? = null, - val frontFace: FrontFace = FrontFace.CCW, - val cullMode: CullMode = CullMode.NONE, -) - -data class FragmentState( - val module: ShaderModule, - val entryPoint: String, - val targets: List -) { - constructor( - module: ShaderModule, - entryPoint: String, - target: ColorTargetState - ) : this(module, entryPoint, listOf(target)) -} - -data class ColorTargetState( - val format: TextureFormat, - val blendState: BlendState?, - val writeMask: ColorWriteMask -) - -data class BlendState( - val color: BlendComponent = BlendComponent(), - val alpha: BlendComponent = BlendComponent() -) { - companion object { - /** Standard alpha blending. */ - val Alpha: BlendState = - BlendState( - color = BlendComponent(dstFactor = BlendFactor.ONE_MINUS_SRC_ALPHA), - alpha = BlendComponent(dstFactor = BlendFactor.ONE_MINUS_SRC_ALPHA) - ) - - /** Fully oqaque, no alpha, blending. */ - val Opaque: BlendState = BlendState() - - /** Non-premultiplied, alpha blending. */ - val NonPreMultiplied: BlendState = - BlendState( - color = - BlendComponent( - srcFactor = BlendFactor.SRC_ALPHA, - dstFactor = BlendFactor.ONE_MINUS_SRC_ALPHA - ), - alpha = - BlendComponent( - srcFactor = BlendFactor.SRC_ALPHA, - dstFactor = BlendFactor.ONE_MINUS_SRC_ALPHA - ) - ) - - val Add: BlendState = - BlendState( - color = - BlendComponent(srcFactor = BlendFactor.SRC_ALPHA, dstFactor = BlendFactor.ONE), - alpha = - BlendComponent(srcFactor = BlendFactor.SRC_ALPHA, dstFactor = BlendFactor.ONE) - ) - - val Subtract: BlendState = - BlendState( - color = - BlendComponent( - srcFactor = BlendFactor.SRC_ALPHA, - dstFactor = BlendFactor.ONE, - operation = BlendOperation.REVERSE_SUBTRACT - ), - alpha = - BlendComponent( - srcFactor = BlendFactor.SRC_ALPHA, - dstFactor = BlendFactor.ONE, - operation = BlendOperation.REVERSE_SUBTRACT - ), - ) - - val Difference: BlendState = - BlendState( - color = - BlendComponent( - srcFactor = BlendFactor.ONE_MINUS_DST_COLOR, - dstFactor = BlendFactor.ONE_MINUS_SRC_COLOR, - operation = BlendOperation.ADD - ), - ) - - val Multiply: BlendState = - BlendState( - color = - BlendComponent( - srcFactor = BlendFactor.DST_COLOR, - dstFactor = BlendFactor.ZERO, - operation = BlendOperation.ADD - ), - alpha = - BlendComponent( - srcFactor = BlendFactor.DST_ALPHA, - dstFactor = BlendFactor.ZERO, - operation = BlendOperation.ADD - ) - ) - - val Lighten: BlendState = - BlendState( - color = - BlendComponent( - srcFactor = BlendFactor.ONE, - dstFactor = BlendFactor.ONE, - operation = BlendOperation.MAX - ), - alpha = - BlendComponent( - srcFactor = BlendFactor.ONE, - dstFactor = BlendFactor.ONE, - operation = BlendOperation.MAX - ), - ) - - val Darken: BlendState = - BlendState( - color = - BlendComponent( - srcFactor = BlendFactor.ONE, - dstFactor = BlendFactor.ONE, - operation = BlendOperation.MIN - ), - alpha = - BlendComponent( - srcFactor = BlendFactor.ONE, - dstFactor = BlendFactor.ONE, - operation = BlendOperation.MIN - ), - ) - - val Screen: BlendState = - BlendState( - color = - BlendComponent( - srcFactor = BlendFactor.ONE_MINUS_DST_COLOR, - dstFactor = BlendFactor.ONE, - operation = BlendOperation.ADD - ) - ) - - val LinearDodge: BlendState = - BlendState( - color = - BlendComponent( - srcFactor = BlendFactor.ONE, - dstFactor = BlendFactor.ONE, - operation = BlendOperation.ADD - ) - ) - - val LinearBurn: BlendState = - BlendState( - color = - BlendComponent( - srcFactor = BlendFactor.ONE, - dstFactor = BlendFactor.ONE, - operation = BlendOperation.REVERSE_SUBTRACT - ) - ) - } -} - -data class WebGPUVertexAttribute( - val format: VertexFormat, - val offset: Long, - val shaderLocation: Int -) - -data class WebGPUVertexBufferLayout( - val arrayStride: Long, - val stepMode: VertexStepMode, - val attributes: List -) - -data class BlendComponent( - var srcFactor: BlendFactor = BlendFactor.ONE, - var dstFactor: BlendFactor = BlendFactor.ZERO, - var operation: BlendOperation = BlendOperation.ADD -) - -expect class RenderPassEncoder : Releasable { - - val label: String? - - - fun draw(vertexCount: Int, instanceCount: Int, firstVertex: Int = 0, firstInstance: Int = 0) - - fun end() - - - fun setVertexBuffer( - slot: Int, - buffer: GPUBuffer, - offset: Long = 0, - size: Long = buffer.size - offset - ) - - fun drawIndexed( - indexCount: Int, - instanceCount: Int, - firstIndex: Int = 0, - baseVertex: Int = 0, - firstInstance: Int = 0 - ) - - fun setIndexBuffer( - buffer: GPUBuffer, - indexFormat: IndexFormat, - offset: Long = 0, - size: Long = buffer.size - offset - ) - - fun setScissorRect(x: Int, y: Int, width: Int, height: Int) - - override fun release() -} - -data class RenderPassColorAttachmentDescriptor( - val view: TextureView, - val loadOp: LoadOp, - val storeOp: StoreOp, - val clearColor: Color? = null, - val resolveTarget: TextureView? = null -) - -data class RenderPassDepthStencilAttachmentDescriptor( - val view: TextureView, - val depthClearValue: Float, - val depthLoadOp: LoadOp?, - val depthStoreOp: StoreOp?, - val depthReadOnly: Boolean = false, - val stencilClearValue: Int = 0, - val stencilLoadOp: LoadOp? = null, - val stencilStoreOp: StoreOp? = null, - val stencilReadOnly: Boolean = false -) - -data class RenderPassDescriptor( - val colorAttachments: List, - val depthStencilAttachment: RenderPassDepthStencilAttachmentDescriptor? = null, - val label: String? = null -) - -expect class ComputePipeline : Releasable { - override fun release() -} - -expect class ComputePassEncoder : Releasable { - - fun dispatchWorkgroups(workgroupCountX: Int, workgroupCountY: Int = 1, workgroupCountZ: Int = 1) - - override fun release() -} diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt deleted file mode 100644 index 3e2488083..000000000 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/enums.kt +++ /dev/null @@ -1,836 +0,0 @@ -package com.littlekt.graphics.webgpu - -import kotlin.jvm.JvmInline - -/** Primitive type the input mesh is composed of. */ -enum class PrimitiveTopology { - /** Vertex data is a list of points. Each vertex is a new point. */ - POINT_LIST, - - /** - * Vertex data is a list of lines. Each pair of vertices composes a new line. - * - * Vertices `0 1 2 3` create two lines `0 1` and `2 3`. - */ - LINE_LIST, - - /** - * Vertex data is a strip of lines. Each set of two adjacent vertices form a line. - * - * Vertices `0 1 2 3` create three lines `0 1`, `1 2`, and `2 3`. - */ - LINE_STRIP, - - /** - * Vertex data is a list of triangles. Each set of 3 vertices composes a new triangle. - * - * Vertices `0 1 2 3 4 5` create two triangles `0 1 2` and `3 4 5`. - */ - TRIANGLE_LIST, - - /** - * Vertex data is a triangle strip. Each set of three adjacent vertices form a triangle. - * - * Vertices `0 1 2 3 4 5` create four triangles `0 1 2`, `2 1 3`, `2 3 4`, and `4 3 5`. - */ - TRIANGLE_STRIP -} - -/** Vertex winding order which classifies the "front" face of a triangle. */ -enum class FrontFace { - /** - * Triangles with vertices in counter-clockwise order are considered the front face. - * - * This is the default with right-handed coordinate spaces. - */ - CCW, - - /** - * Triangles with vertices in clockwise order are considered the front face. - * - * This is the default with left-handed coordinate spaces. - */ - CW -} - -/** Face of a vertex. */ -enum class CullMode { - /** Neither used. */ - NONE, - - /** Front face. */ - FRONT, - - /** Back face. */ - BACK -} - -/** - * The usages determine what kind of memory the texture is allocated from and what actions the - * texture can partake in. - */ -@JvmInline -value class TextureUsage(val usageFlag: Int) { - infix fun or(other: TextureUsage): TextureUsage = TextureUsage(usageFlag or other.usageFlag) - - infix fun and(other: TextureUsage): TextureUsage = TextureUsage(usageFlag and other.usageFlag) - - companion object { - /** Allows a texture to be the source in a copy operation */ - val COPY_SRC: TextureUsage = TextureUsage(0x01) - - /** - * Allows a texture to be the destination of a copy operation such as - * [CommandEncoder.copyBufferToTexture] - */ - val COPY_DST: TextureUsage = TextureUsage(0x02) - - /** Allows a texture to be a sampled texture in a bind group */ - val TEXTURE: TextureUsage = TextureUsage(0x04) - - /** Allows a texture to be a storage texture in a bind group */ - val STORAGE: TextureUsage = TextureUsage(0x08) - - /** Allows a texture to be an output attachment of a render pass */ - val RENDER_ATTACHMENT: TextureUsage = TextureUsage(0x10) - } -} - -/** Dimensions of a particular texture view. */ -enum class TextureViewDimension { - /** A one dimensional texture. */ - D1, - - /** A two-dimensional texture. */ - D2, - - /** A two-dimensional array texture. */ - D2_ARRAY, - - /** A cubemap texture. */ - CUBE, - - /** A cubemap array texture. */ - CUBE_ARRAY, - - /** A three-dimensional texture. */ - D3 -} - -/** Type of data the texture holds. */ -enum class TextureAspect { - /** Depth, stecil, and color. */ - ALL, - - /** Stencil only. */ - STENCIL_ONLY, - - /** Depth only. */ - DEPTH_ONLY -} - -/** Dimensionality of a texture. */ -enum class TextureDimension { - /** 1D texture. */ - D1, - - /** 2D texture. */ - D2, - - /** 3D texture. */ - D3 -} - -/** - * The underlying texture data format. - * - * If there is a conversion in the format (such as srgb -> linear), the conversion listed here is - * for loading from texture in a shader. When writing to the texture, the opposite conversion takes - * place. - * - * @param bytes the number of bytes each format requires - * @param srgb if this format is an SRGB format and expects linear colors. - */ -enum class TextureFormat(val bytes: Int, val srgb: Boolean = false) { - /** 8 Bit Red channel only. `[0, 255]` converted to/from float `[0, 1]` in shader. */ - R8_UNORM(1), - - /** 8 Bit Red channel only. `[-127, 127]` converted to/from float `[-1, 1]` in shader. */ - R8_SNORM(1), - - /** Red channel only. 8 bit integer per channel. Unsigned in shader. */ - R8_UINT(1), - - /** Red channel only. 8 bit integer per channel. Signed in shader. */ - R8_SINT(1), - - /** Red channel only. 16 bit integer per channel. Unsigned in shader. */ - R16_UINT(2), - - /** Red channel only. 16 bit integer per channel. Signed in shader. */ - R16_SINT(2), - - /** Red channel only. 16 bit float per channel. Float in shader. */ - R16_FLOAT(2), - - /** - * Red and green channels. 8 bit integer per channel. `[0, 255]` converted to/from float `[0, - * 1]` in shader. - */ - RG8_UNORM(2), - - /** - * Red and green channels. 8 bit integer per channel. `[-127, 127]` converted to/from float - * `[-1, 1]` in shader. - */ - RG8_SNORM(2), - - /** Red and green channels. 8 bit integer per channel. Unsigned in shader. */ - RG8_UINT(2), - - /** Red and green channel s. 8 bit integer per channel. Signed in shader. */ - RG8_SINT(2), - - /** Red channel only. 32 bit integer per channel. Unsigned in shader. */ - R32_UINT(4), - - /** Red channel only. 32 bit integer per channel. Signed in shader. */ - R32_SINT(4), - - /** Red channel only. 32 bit float per channel. Float in shader. */ - R32_FLOAT(4), - - /** Red and green channels. 16 bit integer per channel. Unsigned in shader. */ - RG16_UINT(4), - - /** Red and green channels. 16 bit integer per channel. Signed in shader. */ - RG16_SINT(4), - - /** Red and green channels. 16 bit float per channel. Float in shader. */ - RG16_FLOAT(4), - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. `[0, 255]` converted to/from - * float `[0, 1]` in shader. - */ - RGBA8_UNORM(4), - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. Srgb-color `[0, 255]` - * converted to/from linear-color float `[0, 1]` in shader. - */ - RGBA8_UNORM_SRGB(4, true), - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. `[-127, 127]` converted - * to/from float `[-1, 1]` in shader. - */ - RGBA8_SNORM(4), - - /** Red, green, blue, and alpha channels. 8 bit integer per channel. Unsigned in shader. */ - RGBA8_UINT(4), - - /** Red, green, blue, and alpha channels. 8 bit integer per channel. Signed in shader. */ - RGBA8_SINT(4), - - /** - * Blue, green, red, and alpha channels. 8 bit integer per channel. `[0, 255]` converted to/from - * float `[0, 1]` in shader. - */ - BGRA8_UNORM(4), - - /** - * Blue, green, red, and alpha channels. 8 bit integer per channel. Srgb-color `[0, 255]` - * converted to/from linear-color float `[0, 1]` in shader. - */ - BGRA8_UNORM_SRGB(4, true), - - /** - * Red, green, blue, and alpha channels. 10 bit integer for RGB channels, 2 bit integer for - * alpha channel. `[0, 1023]` (`[0, 3]` for alpha) converted to/from float `[0, 1]` in shader. - */ - RGB10A2_UNORM(4), - - /** - * Red, green, and blue channels. 11 bit float with no sign bit for RG channels. 10 bit float - * with no sign bit for blue channel. Float in shader. - */ - RG11B10_FLOAT(4), - - /** Red and green channels. 32 bit integer per channel. Unsigned in shader. */ - RG32_UINT(8), - - /** Red and green channels. 32 bit integer per channel. Signed in shader. */ - RG32_SINT(8), - - /** Red and green channels. 32 bit float per channel. Float in shader. */ - RG32_FLOAT(8), - - /** Red, green, blue, and alpha channels. 16 bit integer per channel. Unsigned in shader. */ - RGBA16_UINT(8), - - /** Red, green, blue, and alpha channels. 16 bit integer per channel. Signed in shader. */ - RGBA16_SINT(8), - - /** Red, green, blue, and alpha channels. 16 bit float per channel. Float in shader. */ - RGBA16_FLOAT(8), - - /** Red, green, blue, and alpha channels. 32 bit integer per channel. Unsigned in shader. */ - RGBA32_UINT(16), - - /** Red, green, blue, and alpha channels. 32 bit integer per channel. Signed in shader. */ - RGBA32_SINT(16), - - /** Red, green, blue, and alpha channels. 32 bit float per channel. Float in shader. */ - RGBA32_FLOAT(16), - - /** Special depth format with 32 bit floating point depth. */ - DEPTH32_FLOAT(4), - - /** Special depth format with at least 24 bit integer depth. */ - DEPTH24_PLUS(3), - - /** - * Special depth/stencil format with at least 24 bit integer depth and 8 bits integer stencil. - */ - DEPTH24_PLUS_STENCIL8(4); - - companion object -} - -/** Alpha blend operation. */ -enum class BlendOperation { - /** Src + Dst */ - ADD, - - /** Src - Dst */ - SUBTRACT, - - /** Dst - Src */ - REVERSE_SUBTRACT, - - /** min(Src, Dst) */ - MIN, - - /** max(Src, Dst) */ - MAX -} - -/** Operation to perform on the stencil value. */ -enum class StencilOperation { - /** Keep stencil value unchanged. */ - KEEP, - - /** Set stencil value to zero. */ - ZERO, - - /** - * Replace stencil value with value provided in most recent call to - * [RenderPassEncoder.setStencilReference]. - */ - REPLACE, - - /** Bitwise inverts stencil value. */ - INVERT, - - /** Increments stencil value by one, clamping on overflow. */ - INCREMENT_CLAMP, - - /** Decrements stencil value by one, clamping on underflow. */ - DECREMENT_CLAMP, - /** Increments stencil value by one, wrapping on overflow. */ - INCREMENT_WRAP, - /** Decrements stencil value by one, wrapping on underflow. */ - DECREMENT_WRAP -} - -/** Alpha blend factor. */ -enum class BlendFactor { - /** 0.0 */ - ZERO, - - /** 1.0 */ - ONE, - - /** S.component */ - SRC_COLOR, - - /** 1.0 - S.component */ - ONE_MINUS_SRC_COLOR, - - /** S.alpha */ - SRC_ALPHA, - - /** 1.0 - S.alpha */ - ONE_MINUS_SRC_ALPHA, - - /** D.component */ - DST_COLOR, - - /** 1.0 - D.component */ - ONE_MINUS_DST_COLOR, - - /** D.alpha */ - DST_ALPHA, - - /** 1.0 - D.alpha */ - ONE_MINUS_DST_ALPHA, - - /** min(S.alpha, 1.0 - D.alpha) */ - SRC_ALPHA_SATURATED, - - /** Constant */ - CONSTANT_COLOR, - - /** 1.0 - Constant */ - ONE_MINUS_CONSTANT_COLOR -} - -/** Format of indices used with pipeline. */ -enum class IndexFormat { - /** Indices are 16 bit unsigned integers. */ - UINT16, - - /** Indices are 32 bit unsigned integers. */ - UINT32, -} - -/** Whether a vertex buffer is indexed by vertex or by instance. */ -enum class VertexStepMode { - /** Vertex data is advanced every vertex. */ - VERTEX, - - /** Vertex data is advanced every instance. */ - INSTANCE -} - -/** Operation to perform to the output attachment at the start of a render pass. */ -enum class LoadOp { - /** - * Loads the specified value for this attachment into the render pass. - * - * On some GPU hardware (primarily mobile), “clear” is significantly cheaper because it avoids - * loading data from main memory into tile-local memory. - * - * On other GPU hardware, there isn’t a significant difference. - * - * As a result, it is recommended to use “clear” rather than “load” in cases where the initial - * value doesn’t matter (e.g. the render target will be cleared using a skybox). - */ - CLEAR, - - /** Loads the existing value for this attachment into the render pass. */ - LOAD -} - -/** Operation to perform to the output attachment at the end of a render pass. */ -enum class StoreOp { - /** - * Discards the resulting value of the render pass for this attachment. - * - * The attachment will be treated as uninitialized afterwards. (If only either Depth or Stencil - * texture-aspects is set to Discard, the respective other texture-aspect will be preserved.) - * - * This can be significantly faster on tile-based render hardware. - * - * Prefer this if the attachment is not read by subsequent passes. - */ - DISCARD, - - /** Stores the resulting value of the render pass for this attachment. */ - STORE -} - -/** Specific type of a buffer binding. */ -enum class BufferBindingType { - /** - * A buffer for uniform values. - * - * ```wgsl - * struct Globals { - * a_uniform: vec2, - * another_uniform: vec2, - * } - * @group(0) @binding(0) - * var globals: Globals; - * ``` - */ - UNIFORM, - - /** - * A storage buffer. - * - * ```wgsl - * @group(0) @binding(0) - * var my_element: array>; - * ``` - */ - STORAGE, - - /** - * A read only storage buffer. The buffer can only be read in the shader. - * - * ```wgsl - * @group(0) @binding(0) - * var my_element: array>; - * ``` - */ - READ_ONLY_STORAGE -} - -enum class AddressMode { - CLAMP_TO_EDGE, - REPEAT, - MIRROR_REPEAT -} - -enum class FilterMode { - NEAREST, - LINEAR -} - -/** Comparison function used for depth and stencil operations. */ -enum class CompareFunction { - /** Function never passes. */ - NEVER, - - /** Function passes if new value less than existing value. */ - LESS, - - /** - * Function passes if new value is equal to existing value. When using this compare function, - * make sure to mark your Vertex shader's `@builtin(position)` output as `@invariant` to prevent - * artifacting. - */ - EQUAL, - - /** Function passes if new value is less than or equal to existing value. */ - LESS_EQUAL, - - /** Function passes if new value is greater than existing value. */ - GREATER, - /** - * Function passes if new value is not equal to existing value. When using this compare - * function, make sure to mark your Vertex shader's `@builtin(position)` output as `@invariant` - * to prevent artifacting. - */ - NOT_EQUAL, - - /** Function passes if new value is greater than or equal existing value. */ - GREATER_EQUAL, - - /** Function always passes. */ - ALWAYS -} - -/** Specific type of a sample in a texture binding. */ -enum class TextureSampleType { - /** - * Sampling returns floats. - * - * ```wgsl - * @group(0) @binding(0) - * var t: texture_2d; - * ``` - */ - FLOAT, - - /** - * Sampling does the depth reference comparison. This is also compatible with a non-filtering - * sampler. - * - * ```wgsl - * @group(0) @binding(0) - * var t: texture_depth_2d; - * ``` - */ - DEPTH, - - /** - * Sampling returns signed integers. - * - * ```wgsl - * @group(0) @binding(0) - * var t: texture_2d; - * ``` - */ - SINT, - - /** - * Sampleing returns unsigned integers. - * - * ```wgsl - * @group(0) @binding(0) - * var t: texture_2d; - * ``` - */ - UINT -} - -/** Specific type of a sampler binding. */ -enum class SamplerBindingType { - /** - * The sampling result is produced based on more than a single color sample from a texture, e.g. - * when bilinear interpolation is enabled. - */ - FILTERING, - - /** The sampling result is produced based on a single color sample from a texture. */ - NON_FILTERING, - - /** - * Use as a comparison sampler instead of a normal sampler. For more info take a look at the - * analogous functionality in - * [OpenGL](https://www.khronos.org/opengl/wiki/Sampler_Object#Comparison_mode). - */ - COMPARISON -} - -/** A color write mask. Disabled color channels will not be written to. */ -@JvmInline -value class ColorWriteMask(val usageFlag: Int) { - - infix fun or(other: ColorWriteMask): ColorWriteMask = - ColorWriteMask(usageFlag or other.usageFlag) - - infix fun and(other: ColorWriteMask): ColorWriteMask = - ColorWriteMask(usageFlag and other.usageFlag) - - companion object { - /** Disable writes to all channels. */ - val NONE: ColorWriteMask = ColorWriteMask(0x0) - - /** Enable red channel writes. */ - val RED: ColorWriteMask = ColorWriteMask(0x1) - - /** Enable green channel writes. */ - val GREEN: ColorWriteMask = ColorWriteMask(0x2) - - /** Enable blue channel writes. */ - val BLUE: ColorWriteMask = ColorWriteMask(0x4) - - /** Enable alpha channel writes. */ - val ALPHA: ColorWriteMask = ColorWriteMask(0x8) - - /** Enable writes to all channels. */ - val ALL: ColorWriteMask = ColorWriteMask(0xF) - } -} - -/** Specifies how the alpha channel of the texture should be handled during compositing. */ -enum class AlphaMode { - /** - * Chooses either [Opaque] or [Inherit] automatically,depending on the `alphaMode` that the - * current surface can support. - */ - AUTO, - - /** - * The alpha channel, if it exists, of the textures is ignored in the compositing process. - * Instead, the textures is treated as if it has a constant alpha of 1.0. - */ - OPAQUE, - - /** - * The alpha channel, if it exists, of the textures is respected in the compositing process. The - * non-alpha channels of the textures are expected to already be multiplied by the alpha channel - * by the application. - */ - PREMULTIPLIED, - - /** - * The alpha channel, if it exists, of the textures is respected in the compositing process. The - * non-alpha channels of the textures are not expected to already be multiplied by the alpha - * channel by the application; instead, the compositor will multiply the non-alpha channels of - * the texture by the alpha channel during compositing. - */ - UNPREMULTIPLIED, - - /** - * The alpha channel, if it exists, of the textures is unknown for processing during - * compositing. Instead, the application is responsible for setting the composite alpha blending - * mode using native WSI command. If not set, then a platform-specific default will be used. - */ - INHERIT; - - companion object -} - -/** Behavior of the presentation engine based on frame rate. */ -enum class PresentMode { - /** - * Presentation frames are kept in a First-In-First-Out queue approximately 3 frames long. Every - * vertical blanking period, the presentation engine will pop a frame off the queue to display. - * If there is no frame to display, it will present the same frame again until the next vblank. - * - * When a present command is executed on the gpu, the presented image is added on the queue. - * - * No tearing will be observed. - * - * Calls to `getCurrentTexture` will block until there is a spot in the queue. - * - * Supported on all platforms. - * - * If you don’t know what mode to choose, choose this mode. This is traditionally called “Vsync - * On”. - */ - FIFO, - - /** - * Presentation frames are kept in a First-In-First-Out queue approximately 3 frames long. Every - * vertical blanking period, the presentation engine will pop a frame off the queue to display. - * If there is no frame to display, it will present the same frame until there is a frame in the - * queue. The moment there is a frame in the queue, it will immediately pop the frame off the - * queue. - * - * When a present command is executed on the gpu, the presented image is added on the queue. - * - * Tearing will be observed if frames last more than one vblank as the front buffer. - * - * Calls to `getCurrentTexture` will block until there is a spot in the queue. - * - * Supported on AMD on Vulkan. - * - * This is traditionally called “Adaptive Vsync” - */ - FIFO_RELAXED, - - /** - * Presentation frames are not queued at all. The moment a present command is executed on the - * GPU, the presented image is swapped onto the front buffer immediately. - * - * Tearing can be observed. - * - * Supported on most platforms except older DX12 and Wayland. - * - * This is traditionally called “Vsync Off”. - */ - IMMEDIATE, - - /** - * Presentation frames are kept in a single-frame queue. Every vertical blanking period, the - * presentation engine will pop a frame from the queue. If there is no frame to display, it will - * present the same frame again until the next vblank. - * - * When a present command is executed on the gpu, the frame will be put into the queue. If there - * was already a frame in the queue, the new frame will replace the old frame on the queue. - * - * No tearing will be observed. - * - * Supported on DX12 on Windows 10, NVidia on Vulkan and Wayland on Vulkan. - * - * This is traditionally called “Fast Vsync” - */ - MAILBOX -} - -/** Status of the received surface texture. */ -enum class TextureStatus { - /** No issues. */ - SUCCESS, - - /** Unable to get the next frame, timed out. */ - TIMEOUT, - - /** The surface under the swap chain has changed. */ - OUTDATED, - - /** The surface under the swap chain is lost */ - LOST, - - /** The surface under the swap chain has ran out of memory. */ - OUT_OF_MEMORY, - - /** The surface under the swap chain lost the device. */ - DEVICE_LOST; - - companion object -} - -/** - * Describes the shader stages that a binding will be visible from. These can be combined so that - * something is visible from both vertex and fragment shaders: - * - * `ShaderStage.VERTEX or ShaderStage.FRAGMENT` - */ -@JvmInline -value class ShaderStage(val usageFlag: Int) { - infix fun or(other: ShaderStage): ShaderStage = ShaderStage(usageFlag or other.usageFlag) - - infix fun and(other: ShaderStage): ShaderStage = ShaderStage(usageFlag and other.usageFlag) - - companion object { - /** Binding visible from the vertex shader of a render pipeline. */ - val VERTEX: ShaderStage = ShaderStage(0x1) - - /** Binding visible from the fragment shader of a render pipeline. */ - val FRAGMENT: ShaderStage = ShaderStage(0x2) - - /** Binding visible from the compute shader of a compute pipeline. */ - val COMPUTE: ShaderStage = ShaderStage(0x4) - } -} - -/** - * Each Feature identifies a set of functionality which, if available, allows additional usages of - * WebGPU that would have otherwise been invalid. - */ -enum class Feature { - /** Allows depth clipping to be disabled. */ - DEPTH_CLIP_CONTROL, - - /** Allows for explicit creation of textures of format "depth32float-stencil8". */ - DEPTH32FLOAT_STENCIL18, - - /** - * Allows for explicit creation of textures of BC compressed formats. Supports both 2D and 3D - * textures. - */ - TEXTURE_COMPRESSION_BC, - - /** - * Allows for explicit creation of textures of ETC2 compressed formats. Only supports 2D - * textures. - */ - TEXTURE_COMPRESSION_ETC2, - - /** - * Allows for explicit creation of textures of ASTC compressed formats. Only supports 2D - * textures. - */ - TEXTURE_COMPRESSION_ASTC, - - /** Adds the ability to query timestamps from GPU command buffers. */ - TIMESTAMP_QUERY, - - /** - * Allows the use of non-zero firstInstance values in indirect draw parameters and indirect - * drawIndexed parameters. - */ - INDIRECT_FIRST_INSTANCE, - - /** Allows the use of the half-precision floating-point type f16 in WGSL. */ - SHADER_F16, - - /** - * Allows the RENDER_ATTACHMENT usage on textures with format "rg11b10ufloat", and also allows - * textures of that format to be blended and multisampled. - */ - RG11B10UFLOAT_RENDERABLE, - - /** Allows the STORAGE_BINDING usage on textures with format "bgra8unorm". */ - BGRA8UNORM_STORAGE, - - /** Makes textures with formats "r32float", "rg32float", and "rgba32float" filterable. */ - FLOAT32_FILTERABLE, - - /** Allows the use of clip_distances in WGSL. */ - CLIP_DISTANCES, - - /** - * Allows the use of blend_src in WGSL and simultaneously using both pixel shader outputs - * (@blend_src(0) and @blend_src(1)) as inputs to a blending operation with the single color - * attachment at location 0. - */ - DUAL_SOURCE_BLENDING -} diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt deleted file mode 100644 index 0778da156..000000000 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/webgpu/webgpu.kt +++ /dev/null @@ -1,347 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.Releasable -import com.littlekt.file.ByteBuffer -import com.littlekt.file.FloatBuffer -import com.littlekt.file.IntBuffer -import com.littlekt.file.ShortBuffer -import com.littlekt.graphics.webgpu.* - -/** - * An open connection to a graphic and/or compute device. - * - * Responsible for the creation of most rendering and compute resources. These are then used in - * commands, which are submitted to a [Queue]. - * - * A device may be requested from an adapter with [Adapter.requestDevice] - */ -expect class Device : Releasable { - - - /** @return a newly created [Sampler]. */ - fun createSampler(desc: SamplerDescriptor): Sampler - - /** @return a newly created [WebGPUTexture]. */ - fun createTexture(desc: TextureDescriptor): WebGPUTexture - - override fun release() -} - -/** A handle to a physical graphics and/or compute device. */ -expect class Adapter : Releasable { - - - /** Release the memory held by the adapter. */ - override fun release() -} - -/** - * A handle to a command queue on a [Device]. - * - * A `Queue` executes recorded [CommandBuffer] objects and provides convenience methods for writing - * to buffers and textures. It can be created along with a [Device] by calling - * [Adapter.requestDevice]. - */ -expect class Queue : Releasable { - - /** Submit a series of finished command buffers for execution. */ - fun submit(vararg cmdBuffers: CommandBuffer) - - /** - * Schedule a data write into [buffer] starting at [offset]. - * - * This method is intended to have low performance costs. As such, the write is not immediately - * submitted, and instead enqueued internally to happen at the start of the next [submit] call. - * - * This method fails if [data] overruns the size of [buffer] starting at [offset]. - * - * @param size the number of elements - */ - fun writeBuffer( - buffer: GPUBuffer, - data: ShortBuffer, - offset: Long = 0, - dataOffset: Long = 0, - size: Long = data.capacity.toLong() - ) - - /** - * Schedule a data write into [buffer] starting at [offset]. - * - * This method is intended to have low performance costs. As such, the write is not immediately - * submitted, and instead enqueued internally to happen at the start of the next [submit] call. - * - * This method fails if [data] overruns the size of [buffer] starting at [offset]. - * - * @param size the number of elements - */ - fun writeBuffer( - buffer: GPUBuffer, - data: FloatBuffer, - offset: Long = 0, - dataOffset: Long = 0, - size: Long = data.capacity.toLong() - ) - - /** - * Schedule a data write into [buffer] starting at [offset]. - * - * This method is intended to have low performance costs. As such, the write is not immediately - * submitted, and instead enqueued internally to happen at the start of the next [submit] call. - * - * This method fails if [data] overruns the size of [buffer] starting at [offset]. - * - * @param size the number of elements - */ - fun writeBuffer( - buffer: GPUBuffer, - data: IntBuffer, - offset: Long = 0, - dataOffset: Long = 0, - size: Long = data.capacity.toLong() - ) - - /** - * Schedule a data write into [buffer] starting at [offset]. - * - * This method is intended to have low performance costs. As such, the write is not immediately - * submitted, and instead enqueued internally to happen at the start of the next [submit] call. - * - * This method fails if [data] overruns the size of [buffer] starting at [offset]. - * - * @param size the number of elements - */ - fun writeBuffer( - buffer: GPUBuffer, - data: ByteBuffer, - offset: Long = 0, - dataOffset: Long = 0, - size: Long = data.capacity.toLong() - ) - - /** - * Schedule a write of some data into a texture. - * - * This method is intended to have low performance costs. As such, the write is not immediately - * submitted, and instead enqueued internally to happen at the start of the next [submit] call. - * However, [data] will be immediately copied into staging memory; so the caller may discard it - * any time after this call completes. - * - * This method fails if [size] overruns the size of [destination], or if [data] is too short. - * - * @param data contains the texels to be written, which must be in the same format as the - * texture. - * @param destination specifies the texture to write into, and the location within the texture - * (coordinate offset, mip level) that will be overwritten. - * @param layout describes the memory layout of data, which does not necessarily have to have - * tightly packed rows. - * @param size is the size, in texels, of the region to be written. - */ - fun writeTexture( - data: ByteBuffer, - destination: TextureCopyView, - layout: TextureDataLayout, - copySize: Extent3D, - size: Long = data.capacity.toLong() - ) - - /** - * Schedule a write of some data into a texture. - * - * This method is intended to have low performance costs. As such, the write is not immediately - * submitted, and instead enqueued internally to happen at the start of the next [submit] call. - * However, [data] will be immediately copied into staging memory; so the caller may discard it - * any time after this call completes. - * - * This method fails if [size] overruns the size of [destination], or if [data] is too short. - * - * @param data contains the texels to be written, which must be in the same format as the - * texture. - * @param destination specifies the texture to write into, and the location within the texture - * (coordinate offset, mip level) that will be overwritten. - * @param layout describes the memory layout of data, which does not necessarily have to have - * tightly packed rows. - * @param size is the size, in texels, of the region to be written. - */ - fun writeTexture( - data: ByteArray, - destination: TextureCopyView, - layout: TextureDataLayout, - copySize: Extent3D, - size: Long = data.size.toLong() - ) - - override fun release() -} - - -expect class ShaderModule : Releasable { - override fun release() -} - -/** - * Extent of a texture related operation. - * - * @param width width of the extent - * @param height height of the extent - * @param depth depth of the extent or number of array layers. - */ -data class Extent3D(val width: Int, val height: Int, val depth: Int) - -/** - * Origin of a copy to/from a texture. - * - * @param x x-position of the origin - * @param y y-position of the origin - * @param z z-position of the origin - */ -data class Origin3D(val x: Int, val y: Int, val z: Int) - -/** - * Describes a [TextureView]. - * - * @param format the format of the texture view. Either must be the same as the texture format or in - * the list of `viewFormats` in the texture's descriptor. - * @param dimension the dimension of the texture view. For 1D textures, this must be - * [TextureViewDimension.D1]. For 2D textures, it must be one of [TextureViewDimension.D2], - * [TextureViewDimension.D2_ARRAY], [TextureViewDimension.CUBE], and - * [TextureViewDimension.CUBE_ARRAY]. For 3D textures it must be [TextureViewDimension.D3]. - * @param aspect the aspect of the texture. Color textures must be [TextureAspect.ALL]. - * @param baseMipLevel base mip level. - * @param mipLevelCount mip level count. `baseMipLevel + mipLevelCount` must b e less or equal to - * underlying texture mip count. If `0` considered to include the rest of the mipmap levels, but - * at least 1 in total. - * @param baseArrayLayer base array layer. - * @param arrayLayerCount Layer count. `baseArrayLayer + arrayLayerCount` must be less or equal to - * the underlying array count. If `0`, considered to include the rest of the array layers, but at - * least 1 in total. - * @param label debug label of a texture view. - */ -data class TextureViewDescriptor( - val format: TextureFormat, - val dimension: TextureViewDimension, - val aspect: TextureAspect = TextureAspect.ALL, - val baseMipLevel: Int = 0, - val mipLevelCount: Int = 0, - val baseArrayLayer: Int = 0, - val arrayLayerCount: Int = 0, - val label: String? = null -) - -/** - * Describes a [WebGPUTexture]. - * - * @param size of the texture. All components must be greater than zero. For a regular 1D/2D - * texture, the unused sizes will be 1. For 2DArray textures, Z is the number of 2D textures in - * that array. - * @param mipLevelCount mip count of the texture. For a texture with no extra mips, this must be 1. - * @param sampleCount sample count ofa texture. If this is not 1, texture must have - * `TextureBindingLayout.multisampled` set to true. - * @param dimension dimensions of the texture. - * @param format format of the texture. - * @param usage allowed usages of the texture. If used in other ways, the operation will fail. - * @param label debug label of a texture. - */ -data class TextureDescriptor( - val size: Extent3D, - val mipLevelCount: Int, - val sampleCount: Int, - val dimension: TextureDimension, - val format: TextureFormat, - val usage: TextureUsage, - val label: String? = null -) - -/** Handle to a texture on the GPU. It can be created with [Device.createTexture]. */ -expect class WebGPUTexture : Releasable { - - override fun release() - - /** Destroy the associated native resources as soon as possible. */ - fun destroy() -} - -/** - * A handle to a texture view. - * - * A `TextureView` object describes a texture and associated metadata needed by a [RenderPipeline] - * or [BindGroup]. - */ -expect class TextureView : IntoBindingResource { - fun release() -} - -expect class GPUBuffer : Releasable { - - /** The length of the buffer allocation in bytes. */ - val size: Long - - /** - * Use only a portion of this buffer for a given operation. - * - * @return the underlying [ByteBuffer] - */ - // see the empty param getMappedRange function for a reason why we aren't using default values - // here. - fun getMappedRange(offset: Long, size: Long): ByteBuffer - - /** - * Use the entire buffer as the portion for a given operation. - * - * @return the underlying [ByteBuffer] - */ - // we are using an empty parameter function here instead of a extension - // because of a JS IR compiler error throwing an IrLinkageError when referencing size as a - // default param - fun getMappedRange(): ByteBuffer - - /** Flushes any pending write operations and unmaps the buffer from host memory. */ - fun unmap() - - override fun release() - - /** Destroy the associated native resources as soon as possible. */ - fun destroy() -} - -/** - * Describes a [Sampler]. For use with [Device.createSampler]. - * - * @param compare if enabled, this is a comparison sampler using the given comparison function. - * @param addressModeU how to detail with out of bounds accesses in the u (i.e. x) direction - * @param addressModeV how to detail with out of bounds accesses in the v (i.e. y) direction - * @param addressModeW how to detail with out of bounds accesses in the w (i.e. z) direction - * @param magFilter how to filter the texture when it needs to be magnified (made larger) - * @param minFilter how to filter the texture when it needs to be minified (made smaller) - * @param mipmapFilter how to filter between mip map levels - * @param lodMinClamp minimum level of detail (i.e. mip level) to use - * @param lodMaxClamp maximum level of detail (i.e. mip level) to use - * @param maxAnisotropy must be at least 1. if this is not 1, all filter must e linear. - * @param label debug label of a sampler. - */ -data class SamplerDescriptor( - val compare: CompareFunction? = null, - val addressModeU: AddressMode = AddressMode.CLAMP_TO_EDGE, - val addressModeV: AddressMode = AddressMode.CLAMP_TO_EDGE, - val addressModeW: AddressMode = AddressMode.CLAMP_TO_EDGE, - val magFilter: FilterMode = FilterMode.NEAREST, - val minFilter: FilterMode = FilterMode.NEAREST, - val mipmapFilter: FilterMode = FilterMode.NEAREST, - val lodMinClamp: Float = 0f, - val lodMaxClamp: Float = 100000000f, - val maxAnisotropy: Short = 1, - val label: String? = null -) - -/** - * A handle to a sampler. - * - * A `Sampler` object defines how a pipeline will sample from a [TextureView]. Samplers define image - * filters (including anisotropy) and address (wrapping) modes, among other things. See - * [SamplerDescriptor]. - * - * It can be created with [Device.createSampler]. - */ -expect class Sampler : IntoBindingResource, Releasable { - override fun release() -} diff --git a/core/src/commonMain/kotlin/com/littlekt/resources/BufferResourceInfo.kt b/core/src/commonMain/kotlin/com/littlekt/resources/BufferResourceInfo.kt index 1cd85802a..aedd66b00 100644 --- a/core/src/commonMain/kotlin/com/littlekt/resources/BufferResourceInfo.kt +++ b/core/src/commonMain/kotlin/com/littlekt/resources/BufferResourceInfo.kt @@ -1,13 +1,13 @@ package com.littlekt.resources import com.littlekt.EngineStats -import com.littlekt.graphics.webgpu.GPUBuffer +import io.ygdrasil.wgpu.Buffer /** * @author Colton Daily * @date 4/14/2024 */ -class BufferResourceInfo(val buffer: GPUBuffer, val size: Long = 0L) : ResourceInfo() { +class BufferResourceInfo(val buffer: Buffer, val size: Long = 0L) : ResourceInfo() { init { EngineStats.bufferAllocated(this) } diff --git a/core/src/commonMain/kotlin/com/littlekt/resources/TextureResourceInfo.kt b/core/src/commonMain/kotlin/com/littlekt/resources/TextureResourceInfo.kt index 3561f5905..891fcaabd 100644 --- a/core/src/commonMain/kotlin/com/littlekt/resources/TextureResourceInfo.kt +++ b/core/src/commonMain/kotlin/com/littlekt/resources/TextureResourceInfo.kt @@ -1,13 +1,12 @@ package com.littlekt.resources import com.littlekt.EngineStats -import com.littlekt.graphics.webgpu.WebGPUTexture /** * @author Colton Daily * @date 4/14/2024 */ -class TextureResourceInfo(val texture: WebGPUTexture, val size: Long = 0L) : ResourceInfo() { +class TextureResourceInfo(val texture: Texture, val size: Long = 0L) : ResourceInfo() { init { EngineStats.textureAllocated(this) } diff --git a/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt b/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt index 81224828e..33bf38f5f 100644 --- a/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt +++ b/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt @@ -4,12 +4,13 @@ import com.littlekt.async.KT import com.littlekt.async.KtScope import com.littlekt.file.* import com.littlekt.file.vfs.VfsFile -import com.littlekt.graphics.webgpu.Adapter -import com.littlekt.graphics.webgpu.GPURequestAdapterOptions import com.littlekt.input.JsInput import com.littlekt.log.Logger import com.littlekt.resources.internal.InternalResources import com.littlekt.util.datastructure.fastForEach +import com.littlekt.util.internal.jsObject +import io.ygdrasil.wgpu.internal.js.GPURequestAdapterOptions +import io.ygdrasil.wgpu.requestAdapter import kotlin.time.Duration.Companion.milliseconds import kotlinx.browser.document import kotlinx.browser.window @@ -59,11 +60,11 @@ class WebGPUContext(override val configuration: JsConfiguration) : Context() { graphics._height = canvas.clientHeight KtScope.launch { - val adapterOptions = GPURequestAdapterOptions { + val adapterOptions = jsObject { powerPreference = configuration.powerPreference.nativeFlag } - graphics.adapter = Adapter() - graphics.device = graphics.adapter.requestDevice() + graphics.adapter = requestAdapter() ?: error("No appropriate Adapter found.") + graphics.device = graphics.adapter.requestDevice() ?: error("No appropriate Device found.") if (configuration.loadInternalResources) { InternalResources.createInstance(this@WebGPUContext) InternalResources.INSTANCE.load() diff --git a/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt b/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt index f998c2dcd..9fa094b30 100644 --- a/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt +++ b/core/src/jsMain/kotlin/com/littlekt/WebGPUGraphics.kt @@ -8,9 +8,9 @@ import io.ygdrasil.wgpu.Surface import io.ygdrasil.wgpu.requestAdapter import io.ygdrasil.wgpu.TextureFormat import io.ygdrasil.wgpu.TextureUsage -import io.ygdrasil.wgpu.CanvasConfiguration import io.ygdrasil.wgpu.CompositeAlphaMode import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.SurfaceConfiguration import io.ygdrasil.wgpu.getSurface import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.async @@ -66,7 +66,7 @@ class WebGPUGraphics(val canvas: HTMLCanvasElement) : Graphics { alphaMode: CompositeAlphaMode ) { surface.configure( - CanvasConfiguration(device, format,usages, alphaMode = alphaMode) + SurfaceConfiguration(device, format,usages, alphaMode = alphaMode) ) } diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/DataToNativeExt.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/DataToNativeExt.kt deleted file mode 100644 index 5a7beda73..000000000 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/DataToNativeExt.kt +++ /dev/null @@ -1,139 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.util.internal.jsObject - -fun GPUObjectBase(init: GPUObjectBase.() -> Unit = {}): GPUObjectBase = - jsObject(init).unsafeCast() - -fun GPURequestAdapterOptions( - init: GPURequestAdapterOptions.() -> Unit = {} -): GPURequestAdapterOptions = jsObject(init).unsafeCast() - - -fun GPUSamplerDescriptor(init: GPUSamplerDescriptor.() -> Unit = {}): GPUSamplerDescriptor = - jsObject(init).unsafeCast() - -fun SamplerDescriptor.toNative(): GPUSamplerDescriptor = GPUSamplerDescriptor { - val it = this@toNative - addressModeU = it.addressModeU.nativeVal - addressModeV = it.addressModeV.nativeVal - addressModeW = it.addressModeW.nativeVal - magFilter = it.magFilter.nativeVal - minFilter = it.minFilter.nativeVal - mipmapFilter = it.mipmapFilter.nativeVal - lodMinClamp = it.lodMinClamp - lodMaxClamp = it.lodMaxClamp - compare = it.compare?.nativeVal ?: undefined - maxAnisotropy = it.maxAnisotropy - label = it.label -} - -fun GPUTextureDescriptor(init: GPUTextureDescriptor.() -> Unit = {}): GPUTextureDescriptor = - jsObject(init).unsafeCast() - -fun TextureDescriptor.toNative(): GPUTextureDescriptor = GPUTextureDescriptor { - val it = this@toNative - size = it.size.toNative() - mipLevelCount = it.mipLevelCount - sampleCount = it.sampleCount - dimension = it.dimension.nativeVal - format = it.format.nativeVal - usage = it.usage.usageFlag - label = it.label - // TODO viewFormats! -} - -fun GPUExtent3D(init: GPUExtent3D.() -> Unit = {}): GPUExtent3D = - jsObject(init).unsafeCast() - -fun Extent3D.toNative(): GPUExtent3D = GPUExtent3D { - val it = this@toNative - width = it.width - height = it.height - depthOrArrayLayer = it.depth -} - -fun GPUImageDataLayout(init: GPUImageDataLayout.() -> Unit = {}): GPUImageDataLayout = - jsObject(init).unsafeCast() - -fun TextureDataLayout.toNative(): GPUImageDataLayout = GPUImageDataLayout { - val it = this@toNative - offset = it.offset - bytesPerRow = it.bytesPerRow - rowsPerImage = it.rowsPerImage -} - -fun GPURenderPassDescriptor( - init: GPURenderPassDescriptor.() -> Unit = {} -): GPURenderPassDescriptor = jsObject(init).unsafeCast() - -fun RenderPassDescriptor.toNative(): GPURenderPassDescriptor = GPURenderPassDescriptor { - val it = this@toNative - colorAttachments = it.colorAttachments.map { it.toNative() }.toTypedArray() - depthStencilAttachment = it.depthStencilAttachment?.toNative() ?: undefined - label = it.label -} - -fun GPURenderPassColorAttachment( - init: GPURenderPassColorAttachment.() -> Unit = {} -): GPURenderPassColorAttachment = jsObject(init).unsafeCast() - -fun RenderPassColorAttachmentDescriptor.toNative(): GPURenderPassColorAttachment = - GPURenderPassColorAttachment { - val it = this@toNative - view = it.view.delegate - resolveTarget = it.resolveTarget?.delegate ?: undefined - clearValue = it.clearColor?.fields?.toTypedArray() ?: undefined - loadOp = it.loadOp.nativeVal - storeOp = it.storeOp.nativeVal - } - -fun GPURenderPassDepthStencilAttachment( - init: GPURenderPassDepthStencilAttachment.() -> Unit = {} -): GPURenderPassDepthStencilAttachment = - jsObject(init).unsafeCast() - -fun RenderPassDepthStencilAttachmentDescriptor.toNative(): GPURenderPassDepthStencilAttachment = - GPURenderPassDepthStencilAttachment { - val it = this@toNative - view = it.view.delegate - depthClearValue = it.depthClearValue - depthLoadOp = it.depthLoadOp?.nativeVal ?: undefined - depthStoreOp = it.depthStoreOp?.nativeVal ?: undefined - depthReadOnly = it.depthReadOnly - stencilClearValue = it.stencilClearValue - stencilLoadOp = it.stencilLoadOp?.nativeVal ?: undefined - stencilStoreOp = it.stencilStoreOp?.nativeVal ?: undefined - stencilReadOnly = it.stencilReadOnly - } - -fun GPUImageCopyTexture(init: GPUImageCopyTexture.() -> Unit = {}): GPUImageCopyTexture = - jsObject(init).unsafeCast() - -fun TextureCopyView.toNative(): GPUImageCopyTexture = GPUImageCopyTexture { - val it = this@toNative - mipLevel = it.mipLevel - origin = it.origin.toNative() - texture = it.texture.delegate -} - -fun GPUOrigin3D(init: GPUOrigin3D.() -> Unit = {}): GPUOrigin3D = - jsObject(init).unsafeCast() - -fun Origin3D.toNative(): GPUOrigin3D = GPUOrigin3D { - val it = this@toNative - x = it.x - y = it.y - z = it.z -} - -fun GPUImageCopyBuffer(init: GPUImageCopyBuffer.() -> Unit = {}): GPUImageCopyBuffer = - jsObject(init).unsafeCast() - -fun BufferCopyView.toNative(): GPUImageCopyBuffer = GPUImageCopyBuffer { - val it = this@toNative - offset = it.layout.offset - bytesPerRow = it.layout.bytesPerRow - rowsPerImage = it.layout.rowsPerImage - buffer = it.buffer.delegate -} diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/binding.js.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/binding.js.kt deleted file mode 100644 index f131b185a..000000000 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/binding.js.kt +++ /dev/null @@ -1,66 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.Releasable -import com.littlekt.util.internal.jsObject - -actual interface IntoBindingResource { - fun toNative(): GPUBindingResource -} - -actual class BindGroup(val delegate: GPUBindGroup) : Releasable { - actual override fun release() {} -} - -actual class BufferBinding -actual constructor(val buffer: GPUBuffer, val offset: Long, val size: Long) : IntoBindingResource { - private val delegate = - jsObject().unsafeCast().apply { - buffer = this@BufferBinding.buffer.delegate - offset = this@BufferBinding.offset - size = this@BufferBinding.size - } - - override fun toNative(): GPUBindingResource { - return delegate - } -} - -actual abstract class BindingLayout actual constructor() - -actual class BufferBindingLayout -actual constructor( - val type: BufferBindingType, - val hasDynamicOffset: Boolean, - val minBindingSize: Long -) : BindingLayout() - -actual class TextureBindingLayout -actual constructor( - val sampleType: TextureSampleType, - val viewDimension: TextureViewDimension, - val multisampled: Boolean -) : BindingLayout() - -actual class SamplerBindingLayout actual constructor(val type: SamplerBindingType) : - BindingLayout() - -actual class BindGroupLayoutEntry -actual constructor(val binding: Int, val visibility: ShaderStage, val bindingLayout: BindingLayout) - -actual class BindGroupLayout(val delegate: GPUBindGroupLayout) : Releasable { - actual override fun release() {} -} - -actual class PipelineLayout(val delegate: GPUPipelineLayout) : Releasable { - actual override fun release() {} -} - -actual class PipelineLayoutDescriptor -actual constructor(bindGroupLayouts: List, val label: String?) { - actual constructor( - bindGroupLayout: BindGroupLayout, - label: String? - ) : this(listOf(bindGroupLayout), label) - - val delegates = bindGroupLayouts.map { it.delegate }.toTypedArray() -} diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/command.js.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/command.js.kt deleted file mode 100644 index 1f39774d8..000000000 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/command.js.kt +++ /dev/null @@ -1,105 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.EngineStats -import com.littlekt.Releasable - -actual class CommandBuffer(val delegate: GPUCommandBuffer) : Releasable { - actual override fun release() {} -} - -actual class CommandEncoder(val delegate: GPUCommandEncoder) : Releasable { - - actual fun beginRenderPass(desc: RenderPassDescriptor): RenderPassEncoder { - return RenderPassEncoder(delegate.beginRenderPass(desc.toNative()), desc.label) - } - - actual fun finish(): CommandBuffer { - return CommandBuffer(delegate.finish()) - } - - actual fun copyBufferToTexture( - source: BufferCopyView, - destination: TextureCopyView, - copySize: Extent3D - ) { - delegate.copyBufferToTexture(source.toNative(), destination.toNative(), copySize.toNative()) - } - - actual fun beginComputePass(label: String?): ComputePassEncoder { - return ComputePassEncoder(delegate.beginComputePass(GPUObjectBase { this.label = label })) - } - - actual fun copyTextureToBuffer(source: TextureCopyView, dest: BufferCopyView, size: Extent3D) { - delegate.copyTextureToBuffer(source.toNative(), dest.toNative(), size.toNative()) - } - - actual override fun release() {} -} - -actual class RenderPassEncoder( - val delegate: GPURenderPassEncoder, - actual val label: String? = null -) : Releasable { - - actual fun draw(vertexCount: Int, instanceCount: Int, firstVertex: Int, firstInstance: Int) { - EngineStats.drawCalls++ - EngineStats.triangles += (vertexCount / 3) * instanceCount - delegate.draw(vertexCount, instanceCount, firstVertex, firstInstance) - } - - actual fun end() { - delegate.end() - } - - actual fun setVertexBuffer(slot: Int, buffer: GPUBuffer, offset: Long, size: Long) { - delegate.setVertexBuffer(slot.toLong(), buffer.delegate, offset, size) - } - - actual fun drawIndexed( - indexCount: Int, - instanceCount: Int, - firstIndex: Int, - baseVertex: Int, - firstInstance: Int - ) { - EngineStats.drawCalls++ - EngineStats.triangles += (indexCount / 3) * instanceCount - delegate.drawIndexed(indexCount, instanceCount, firstIndex, baseVertex, firstInstance) - } - - actual fun setIndexBuffer( - buffer: GPUBuffer, - indexFormat: IndexFormat, - offset: Long, - size: Long - ) { - delegate.setIndexBuffer(buffer.delegate, indexFormat.nativeVal, offset, size) - } - - actual fun setScissorRect(x: Int, y: Int, width: Int, height: Int) { - delegate.setScissorRect(x, y, width, height) - } - - actual override fun release() = Unit - - override fun toString(): String { - return "RenderPassEncoder(label=$label)" - } -} - -actual class ComputePipeline : Releasable { - actual override fun release() = Unit -} - -actual class ComputePassEncoder(val delegate: GPUComputePassEncoder) : Releasable { - - actual fun dispatchWorkgroups( - workgroupCountX: Int, - workgroupCountY: Int, - workgroupCountZ: Int - ) { - delegate.dispatchWorkgroups(workgroupCountX, workgroupCountY, workgroupCountZ) - } - - actual override fun release() = Unit -} diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/enums.js.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/enums.js.kt deleted file mode 100644 index bcef64fc0..000000000 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/enums.js.kt +++ /dev/null @@ -1,402 +0,0 @@ -package com.littlekt.graphics.webgpu - -val AlphaMode.nativeVal: String - get() = - when (this) { - AlphaMode.OPAQUE -> "opaque" - AlphaMode.PREMULTIPLIED -> "premultiplied" - else -> error("AlphaMode.$name is unsupported on the web!") - } - -val TextureFormat.nativeVal: String - get() = - when (this) { - /** 8 Bit Red channel only. `[0, 255]` converted to/from float `[0, 1]` in shader. */ - TextureFormat.R8_UNORM -> "r8unorm" - - /** - * 8 Bit Red channel only. `[-127, 127]` converted to/from float `[-1, 1]` in shader. - */ - TextureFormat.R8_SNORM -> "r8snorm" - - /** Red channel only. 8 bit integer per channel. Unsigned in shader. */ - TextureFormat.R8_UINT -> "r8uint" - - /** Red channel only. 8 bit integer per channel. Signed in shader. */ - TextureFormat.R8_SINT -> "r8sint" - - /** Red channel only. 16 bit integer per channel. Unsigned in shader. */ - TextureFormat.R16_UINT -> "r16uint" - - /** Red channel only. 16 bit integer per channel. Signed in shader. */ - TextureFormat.R16_SINT -> "r16sint" - - /** Red channel only. 16 bit float per channel. Float in shader. */ - TextureFormat.R16_FLOAT -> "r16float" - - /** - * Red and green channels. 8 bit integer per channel. `[0, 255]` converted to/from float - * `[0, 1]` in shader. - */ - TextureFormat.RG8_UNORM -> "rg8unorm" - - /** - * Red and green channels. 8 bit integer per channel. `[-127, 127]` converted to/from - * float `[-1, 1]` in shader. - */ - TextureFormat.RG8_SNORM -> "rg8snorm" - - /** Red and green channels. 8 bit integer per channel. Unsigned in shader. */ - TextureFormat.RG8_UINT -> "rg8uint" - - /** Red and green channel s. 8 bit integer per channel. Signed in shader. */ - TextureFormat.RG8_SINT -> "rg8sint" - - /** Red channel only. 32 bit integer per channel. Unsigned in shader. */ - TextureFormat.R32_UINT -> "r32uint" - - /** Red channel only. 32 bit integer per channel. Signed in shader. */ - TextureFormat.R32_SINT -> "r32sint" - - /** Red channel only. 32 bit float per channel. Float in shader. */ - TextureFormat.R32_FLOAT -> "r32float" - - /** Red and green channels. 16 bit integer per channel. Unsigned in shader. */ - TextureFormat.RG16_UINT -> "rg16uint" - - /** Red and green channels. 16 bit integer per channel. Signed in shader. */ - TextureFormat.RG16_SINT -> "rg16sint" - - /** Red and green channels. 16 bit float per channel. Float in shader. */ - TextureFormat.RG16_FLOAT -> "rg16float" - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. `[0, 255]` converted - * to/from float `[0, 1]` in shader. - */ - TextureFormat.RGBA8_UNORM -> "rgba8unorm" - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. Srgb-color `[0, - * 255]` converted to/from linear-color float `[0, 1]` in shader. - */ - TextureFormat.RGBA8_UNORM_SRGB -> "rgba8unorm-srgb" - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. `[-127, 127]` - * converted to/from float `[-1, 1]` in shader. - */ - TextureFormat.RGBA8_SNORM -> "rgba8snorm" - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. Unsigned in shader. - */ - TextureFormat.RGBA8_UINT -> "rgba8uint" - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. Signed in shader. - */ - TextureFormat.RGBA8_SINT -> "rgba8sint" - - /** - * Blue, green, red, and alpha channels. 8 bit integer per channel. `[0, 255]` converted - * to/from float `[0, 1]` in shader. - */ - TextureFormat.BGRA8_UNORM -> "bgra8unorm" - - /** - * Blue, green, red, and alpha channels. 8 bit integer per channel. Srgb-color `[0, - * 255]` converted to/from linear-color float `[0, 1]` in shader. - */ - TextureFormat.BGRA8_UNORM_SRGB -> "bgra8unorm-srgb" - - /** - * Red, green, blue, and alpha channels. 10 bit integer for RGB channels, 2 bit integer - * for alpha channel. `[0, 1023]` (`[0, 3]` for alpha) converted to/from float `[0, 1]` - * in shader. - */ - TextureFormat.RGB10A2_UNORM -> "rgb10a2unorm" - - /** - * Red, green, and blue channels. 11 bit float with no sign bit for RG channels. 10 bit - * float with no sign bit for blue channel. Float in shader. - */ - TextureFormat.RG11B10_FLOAT -> "rg11b10ufloat" - - /** Red and green channels. 32 bit integer per channel. Unsigned in shader. */ - TextureFormat.RG32_UINT -> "rg32uint" - - /** Red and green channels. 32 bit integer per channel. Signed in shader. */ - TextureFormat.RG32_SINT -> "rg32sint" - - /** Red and green channels. 32 bit float per channel. Float in shader. */ - TextureFormat.RG32_FLOAT -> "rg32float" - - /** - * Red, green, blue, and alpha channels. 16 bit integer per channel. Unsigned in shader. - */ - TextureFormat.RGBA16_UINT -> "rgba16uint" - - /** - * Red, green, blue, and alpha channels. 16 bit integer per channel. Signed in shader. - */ - TextureFormat.RGBA16_SINT -> "rgba16sint" - - /** Red, green, blue, and alpha channels. 16 bit float per channel. Float in shader. */ - TextureFormat.RGBA16_FLOAT -> "rgba16float" - - /** - * Red, green, blue, and alpha channels. 32 bit integer per channel. Unsigned in shader. - */ - TextureFormat.RGBA32_UINT -> "rgba32uint" - - /** - * Red, green, blue, and alpha channels. 32 bit integer per channel. Signed in shader. - */ - TextureFormat.RGBA32_SINT -> "rgba32sint" - - /** Red, green, blue, and alpha channels. 32 bit float per channel. Float in shader. */ - TextureFormat.RGBA32_FLOAT -> "rgba32float" - - /** Special depth format with 32 bit floating point depth. */ - TextureFormat.DEPTH32_FLOAT -> "depth32float" - - /** Special depth format with at least 24 bit integer depth. */ - TextureFormat.DEPTH24_PLUS -> "depth24plus" - - /** - * Special depth/stencil format with at least 24 bit integer depth and 8 bits integer - * stencil. - */ - TextureFormat.DEPTH24_PLUS_STENCIL8 -> "depth24plus-stencil8" - } - -fun TextureFormat.Companion.from(nativeVal: String) = - TextureFormat.entries.firstOrNull { it.nativeVal == nativeVal } - -val IndexFormat.nativeVal: String - get() = - when (this) { - IndexFormat.UINT16 -> "uint16" - IndexFormat.UINT32 -> "uint32" - } - -val TextureDimension.nativeVal: String - get() = - when (this) { - TextureDimension.D1 -> "1d" - TextureDimension.D2 -> "2d" - TextureDimension.D3 -> "3d" - } - -val TextureViewDimension.nativeVal: String - get() = - when (this) { - TextureViewDimension.D1 -> "1d" - TextureViewDimension.D2 -> "2d" - TextureViewDimension.D2_ARRAY -> "2d-array" - TextureViewDimension.CUBE -> "cube" - TextureViewDimension.CUBE_ARRAY -> "cube-array" - TextureViewDimension.D3 -> "3d" - } - -val TextureAspect.nativeVal: String - get() = - when (this) { - TextureAspect.ALL -> "all" - TextureAspect.STENCIL_ONLY -> "stencil-only" - TextureAspect.DEPTH_ONLY -> "depth-only" - } - -val VertexStepMode.nativeVal: String - get() = - when (this) { - VertexStepMode.VERTEX -> "vertex" - VertexStepMode.INSTANCE -> "instance" - } - -val VertexFormat.nativeVal: String - get() = - when (this) { - VertexFormat.UINT8x2 -> "uint8x2" - VertexFormat.UINT8x4 -> "uint8x4" - VertexFormat.SINT8x2 -> "sint8x2" - VertexFormat.SINT8x4 -> "sint8x4" - VertexFormat.UNORM8x2 -> "unorm8x2" - VertexFormat.UNORM8x4 -> "unorm8x4" - VertexFormat.SNORM8x2 -> "snorm8x2" - VertexFormat.SNORM8x4 -> "snorm8x4" - VertexFormat.UINT16x2 -> "uint16x2" - VertexFormat.UINT16x4 -> "uint16x4" - VertexFormat.SINT16x2 -> "sint16x2" - VertexFormat.SINT16x4 -> "sint16x4" - VertexFormat.UNORM16x2 -> "unorm16x2" - VertexFormat.UNORM16x4 -> "unorm16x4" - VertexFormat.SNORM16x2 -> "snorm16x2" - VertexFormat.SNORM16x4 -> "snorm16x4" - VertexFormat.FLOAT16x2 -> "float16x2" - VertexFormat.FLOAT16x4 -> "float16x4" - VertexFormat.FLOAT32 -> "float32" - VertexFormat.FLOAT32x2 -> "float32x2" - VertexFormat.FLOAT32x3 -> "float32x3" - VertexFormat.FLOAT32x4 -> "float32x4" - VertexFormat.UINT32 -> "uint32" - VertexFormat.UINT32x2 -> "uint32x2" - VertexFormat.UINT32x3 -> "uint32x3" - VertexFormat.UINT32x4 -> "uint32x4" - VertexFormat.SINT32 -> "sint32" - VertexFormat.SINT32x2 -> "sint32x2" - VertexFormat.SINT32x3 -> "sint32x3" - VertexFormat.SINT32x4 -> "sint32x4" - } - -val PrimitiveTopology.nativeVal: String - get() = - when (this) { - PrimitiveTopology.POINT_LIST -> "point-list" - PrimitiveTopology.LINE_LIST -> "line-list" - PrimitiveTopology.LINE_STRIP -> "line-strip" - PrimitiveTopology.TRIANGLE_LIST -> "triangle-list" - PrimitiveTopology.TRIANGLE_STRIP -> "triangle-strip" - } - -val FrontFace.nativeVal: String - get() = - when (this) { - FrontFace.CCW -> "ccw" - FrontFace.CW -> "cw" - } - -val CullMode.nativeVal: String - get() = - when (this) { - CullMode.NONE -> "none" - CullMode.FRONT -> "front" - CullMode.BACK -> "back" - } - -val CompareFunction.nativeVal: String - get() = - when (this) { - CompareFunction.NEVER -> "never" - CompareFunction.LESS -> "less" - CompareFunction.EQUAL -> "equal" - CompareFunction.LESS_EQUAL -> "less-equal" - CompareFunction.GREATER -> "greater" - CompareFunction.NOT_EQUAL -> "not-equal" - CompareFunction.GREATER_EQUAL -> "greater-equal" - CompareFunction.ALWAYS -> "always" - } - -val StencilOperation.nativeVal: String - get() = - when (this) { - StencilOperation.KEEP -> "keep" - StencilOperation.ZERO -> "zero" - StencilOperation.REPLACE -> "replace" - StencilOperation.INVERT -> "invert" - StencilOperation.INCREMENT_CLAMP -> "increment-clamp" - StencilOperation.DECREMENT_CLAMP -> "decrement-clamp" - StencilOperation.INCREMENT_WRAP -> "increment-wrap" - StencilOperation.DECREMENT_WRAP -> "decrement-wrap" - } - -val BlendOperation.nativeVal: String - get() = - when (this) { - BlendOperation.ADD -> "add" - BlendOperation.SUBTRACT -> "subtract" - BlendOperation.REVERSE_SUBTRACT -> "reverse-subtract" - BlendOperation.MIN -> "min" - BlendOperation.MAX -> "max" - } - -val BlendFactor.nativeVal: String - get() = - when (this) { - BlendFactor.ZERO -> "zero" - BlendFactor.ONE -> "one" - BlendFactor.SRC_COLOR -> "src" - BlendFactor.ONE_MINUS_SRC_COLOR -> "one-minus-src" - BlendFactor.SRC_ALPHA -> "src-alpha" - BlendFactor.ONE_MINUS_SRC_ALPHA -> "one-minus-src-alpha" - BlendFactor.DST_COLOR -> "dst" - BlendFactor.ONE_MINUS_DST_COLOR -> "one-minus-dst" - BlendFactor.DST_ALPHA -> "dst-alpha" - BlendFactor.ONE_MINUS_DST_ALPHA -> "one-minus-dst-alpha" - BlendFactor.SRC_ALPHA_SATURATED -> "src-alpha-saturated" - BlendFactor.CONSTANT_COLOR -> "constant" - BlendFactor.ONE_MINUS_CONSTANT_COLOR -> "one-minus-constant" - } - -val BufferBindingType.nativeVal: String - get() = - when (this) { - BufferBindingType.UNIFORM -> "uniform" - BufferBindingType.STORAGE -> "storage" - BufferBindingType.READ_ONLY_STORAGE -> "read-only-storage" - } - -val SamplerBindingType.nativeVal: String - get() = - when (this) { - SamplerBindingType.FILTERING -> "filtering" - SamplerBindingType.NON_FILTERING -> "non-filtering" - SamplerBindingType.COMPARISON -> "comparison" - } - -val TextureSampleType.nativeVal: String - get() = - when (this) { - TextureSampleType.FLOAT -> "float" - TextureSampleType.DEPTH -> "depth" - TextureSampleType.SINT -> "sint" - TextureSampleType.UINT -> "uint" - } - -val AddressMode.nativeVal: String - get() = - when (this) { - AddressMode.CLAMP_TO_EDGE -> "clamp-to-edge" - AddressMode.REPEAT -> "repeat" - AddressMode.MIRROR_REPEAT -> "mirror-repeat" - } - -val FilterMode.nativeVal: String - get() = - when (this) { - FilterMode.NEAREST -> "nearest" - FilterMode.LINEAR -> "linear" - } - -val LoadOp.nativeVal: String - get() = - when (this) { - LoadOp.CLEAR -> "clear" - LoadOp.LOAD -> "load" - } - -val StoreOp.nativeVal: String - get() = - when (this) { - StoreOp.DISCARD -> "discard" - StoreOp.STORE -> "store" - } - -val Feature.nativeVal: String - get() = - when (this) { - Feature.DEPTH_CLIP_CONTROL -> "depth-clip-control" - Feature.DEPTH32FLOAT_STENCIL18 -> "depth32float-stencil8" - Feature.TEXTURE_COMPRESSION_BC -> "texture-compression-bc" - Feature.TEXTURE_COMPRESSION_ETC2 -> "texture-compression-etc2" - Feature.TEXTURE_COMPRESSION_ASTC -> "texture-compression-astc" - Feature.TIMESTAMP_QUERY -> "timestamp-query" - Feature.INDIRECT_FIRST_INSTANCE -> "indirect-first-instance" - Feature.SHADER_F16 -> "shader-f16" - Feature.RG11B10UFLOAT_RENDERABLE -> "rg11b10ufloat-renderable" - Feature.BGRA8UNORM_STORAGE -> "bgra8unorm-storage" - Feature.FLOAT32_FILTERABLE -> "float32-filterable" - Feature.CLIP_DISTANCES -> "clip-distances" - Feature.DUAL_SOURCE_BLENDING -> "dual-source-blending" - } diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/gpu.external.classes.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/gpu.external.classes.kt deleted file mode 100644 index f842662b0..000000000 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/gpu.external.classes.kt +++ /dev/null @@ -1,194 +0,0 @@ -package com.littlekt.graphics.webgpu - -import kotlin.js.Promise -import org.khronos.webgl.ArrayBuffer -import org.khronos.webgl.ArrayBufferView - -external val navigator: Navigator - -external class Navigator { - val gpu: GPU -} - -external class GPU { - /** - * @return A string indicating a canvas texture format. The value can be `rgba8unorm` or - * `bgra8unorm`. - */ - fun getPreferredCanvasFormat(): String - - fun requestAdapter(options: GPURequestAdapterOptions = definedExternally): Promise -} - -external class GPUCanvasContext { - fun configure(configuration: GPUCanvasConfiguration) - - fun getCurrentTexture(): GPUTexture -} - -open external class GPUAdapter { - val name: String - - val features: dynamic - - val limits: GPUSupportedLimits - - fun requestDevice(device: GPUDeviceDescriptor?): Promise -} - -external class GPUDevice { - val features: dynamic - - val limits: GPUSupportedLimits - - val queue: GPUQueue - - fun createShaderModule(desc: GPUShaderModuleDescriptor): GPUShaderModule - - fun createPipelineLayout(desc: GPUPipelineLayoutDescriptor): GPUPipelineLayout - - fun createRenderPipeline(desc: GPURenderPipelineDescriptor): GPURenderPipeline - - fun createTexture(desc: GPUTextureDescriptor): GPUTexture - - fun createCommandEncoder(desc: GPUObjectBase): GPUCommandEncoder - - fun createBuffer(desc: GPUBufferDescriptor): GPUBufferJs - - fun createBindGroupLayout(desc: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout - - fun createBindGroup(desc: GPUBindGroupDescriptor): GPUBindGroup - - fun createSampler(desc: GPUSamplerDescriptor): GPUSampler - - fun createComputePipeline(desc: GPUComputePipelineDescriptor): GPUComputePipeline -} - -external class GPUQueue { - - fun submit(cmdBuffers: Array) - - fun writeBuffer( - buffer: GPUBufferJs, - offset: Long, - data: ArrayBufferView, - dataOffset: Long, - size: Long - ) - - fun writeTexture( - destination: GPUImageCopyTexture, - data: ArrayBufferView, - dataLayout: GPUImageDataLayout, - size: GPUExtent3D - ) -} - -external object GPUMapMode { - val READ: Long - val WRITE: Long -} - -external class GPUBufferJs { - - fun mapAsync(mode: Long): Promise - - fun getMappedRange(offset: Long, size: Long): ArrayBuffer - - fun unmap() - - fun destroy() -} - -external interface GPUBindingResource - -external class GPUTextureView : GPUBindingResource - -external class GPUSampler : GPUBindingResource - -external interface GPUBufferBinding : GPUBindingResource { - var buffer: GPUBufferJs - var offset: Long - var size: Long -} - -external class GPUBindGroup - -external class GPUBindGroupLayout - -external class GPUPipelineLayout - -external class GPURenderPipeline - -external class GPUComputePipeline - -external class GPUCommandBuffer - -external class GPUCommandEncoder { - - fun beginRenderPass(desc: GPURenderPassDescriptor): GPURenderPassEncoder - - fun finish(): GPUCommandBuffer - - fun copyBufferToTexture( - source: GPUImageCopyBuffer, - destination: GPUImageCopyTexture, - copySize: GPUExtent3D - ) - - fun beginComputePass(descriptor: GPUObjectBase): GPUComputePassEncoder - - fun copyBufferToBuffer( - source: GPUBufferJs, - sourceOffset: Int, - destination: GPUBufferJs, - destinationOffset: Int, - size: Long - ) - - fun copyTextureToBuffer( - source: GPUImageCopyTexture, - destination: GPUImageCopyBuffer, - copySize: GPUExtent3D - ) -} - -external class GPURenderPassEncoder { - fun setPipeline(pipeline: GPURenderPipeline) - - fun draw(vertexCount: Int, instanceCount: Int, firstVertex: Int, firstInstance: Int) - - fun end() - - fun setVertexBuffer(slot: Long, buffer: GPUBufferJs, offset: Long, size: Long) - - fun drawIndexed( - indexCount: Int, - instanceCount: Int, - firstVertex: Int, - baseVertex: Int, - firstInstance: Int - ) - - fun setIndexBuffer(buffer: GPUBufferJs, format: String?, offset: Long, size: Long) - - fun setBindGroup( - index: Int, - bindGroup: GPUBindGroup, - dynamicOffsets: LongArray = definedExternally - ) - - fun setViewport(x: Int, y: Int, width: Int, height: Int, minDepth: Float, maxDepth: Float) - - fun setScissorRect(x: Int, y: Int, width: Int, height: Int) -} - -external class GPUComputePassEncoder { - fun setPipeline(pipeline: GPUComputePipeline) - - fun setBindGroup(index: Int, bindGroup: GPUBindGroup) - - fun dispatchWorkgroups(workgroupCountX: Int, workgroupCountY: Int, workgroupCountZ: Int) - - fun end() -} diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/gpu.external.interfaces.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/gpu.external.interfaces.kt deleted file mode 100644 index e07ad07e1..000000000 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/gpu.external.interfaces.kt +++ /dev/null @@ -1,337 +0,0 @@ -package com.littlekt.graphics.webgpu - -external interface GPUObjectBase { - var label: String? -} - -external interface GPUSupportedLimits { - var maxTextureDimension1D: Int - var maxTextureDimension2D: Int - var maxTextureDimension3D: Int - var maxTextureArrayLayers: Int - var maxBindGroups: Int - var maxBindGroupsPlusVertexBuffers: Int - var maxBindingsPerBindGroup: Int - var maxDynamicUniformBuffersPerPipelineLayout: Int - var maxDynamicStorageBuffersPerPipelineLayout: Int - var maxSampledTexturesPerShaderStage: Int - var maxSamplersPerShaderStage: Int - var maxStorageBuffersPerShaderStage: Int - var maxStorageTexturesPerShaderStage: Int - var maxUniformBuffersPerShaderStage: Int - var maxUniformBufferBindingSize: Long - var maxStorageBufferBindingSize: Long - var minUniformBufferOffsetAlignment: Int - var minStorageBufferOffsetAlignment: Int - var maxVertexBuffers: Int - var maxBufferSize: Long - var maxVertexAttributes: Int - var maxVertexBufferArrayStride: Int - var maxInterStageShaderComponents: Int - var maxInterStageShaderVariables: Int - var maxColorAttachments: Int - var maxColorAttachmentBytesPerSample: Int - var maxComputeWorkgroupStorageSize: Int - var maxComputeInvocationsPerWorkgroup: Int - var maxComputeWorkgroupSizeX: Int - var maxComputeWorkgroupSizeY: Int - var maxComputeWorkgroupSizeZ: Int - var maxComputeWorkgroupsPerDimension: Int -} - -external interface GPURequestAdapterOptions { - var powerPreference: String - var forceFallbackAdapter: Boolean -} - -external interface GPUDeviceDescriptor : GPUObjectBase { - var requiredFeatures: Array - var requiredLimits: Map -} - -external interface GPUCanvasConfiguration : GPUObjectBase { - var device: GPUDevice - var format: String - var usage: Int - var colorSpace: String - var alphaMode: String - var viewFormats: Array -} - -external interface GPUShaderModuleDescriptor : GPUObjectBase { - var code: String -} - -external interface GPUPipelineLayoutDescriptor : GPUObjectBase { - var bindGroupLayouts: Array -} - -external interface GPUObjectPipelineDescriptorBase : GPUObjectBase { - var layout: GPUPipelineLayout -} - -external interface GPURenderPipelineDescriptor : GPUObjectPipelineDescriptorBase { - var vertex: GPUVertexState - var primitive: GPUPrimitiveState - var depthStencil: GPUDepthStencilState? - var multisample: GPUMultisampleState - var fragment: GPUFragmentState? -} - -external interface GPUProgrammableStage { - var module: GPUShaderModule - var entryPoint: String - var constants: Map -} - -external interface GPUVertexState : GPUProgrammableStage { - var buffers: Array -} - -external interface GPUVertexBufferLayout { - var arrayStride: Long - var stepMode: String - var attributes: Array -} - -external interface GPUVertexAttribute { - var format: String - var offset: Long - var shaderLocation: Int -} - -external interface GPUPrimitiveState { - var topology: String - var stripIndexFormat: String? - var frontFace: String - var cullMode: String - var unclippedDepth: Boolean -} - -external interface GPUDepthStencilState { - var format: String - var depthWriteEnabled: Boolean - var depthCompare: String - var stencilFront: GPUStencilFaceState - var stencilBack: GPUStencilFaceState - var stencilReadMask: Int - var stencilWriteMask: Int - var depthBias: Int - var depthBiasSlopeScale: Float - var depthBiasClamp: Float -} - -external interface GPUStencilFaceState { - var compare: String - var failOp: String - var depthFailOp: String - var passOp: String -} - -external interface GPUMultisampleState { - var count: Int - var mask: Int - var alphaToCoverageEnabled: Boolean -} - -external interface GPUFragmentState : GPUProgrammableStage { - var targets: Array -} - -external interface GPUColorTargetState { - var format: String - var blend: GPUBlendState? - var writeMask: Int -} - -external interface GPUBlendState { - var color: GPUBlendComponent - var alpha: GPUBlendComponent -} - -external interface GPUBlendComponent { - var operation: String - var srcFactor: String - var dstFactor: String -} - -external interface GPUBufferDescriptor : GPUObjectBase { - var size: Long - var usage: Int - var mappedAtCreation: Boolean -} - -external interface GPUBindGroupLayoutDescriptor : GPUObjectBase { - var entries: Array -} - -external interface GPUBindGroupLayoutEntry : GPUObjectBase { - var binding: Int - var visibility: Int - var buffer: GPUBufferBindingLayout - var sampler: GPUBufferSamplerBindingLayout - var texture: GPUTextureBindingLayout - var storageTexture: GPUStorageTextureBindingLayout - var externalTexture: GPUExternalTextureBindingLayout -} - -external interface GPUBufferBindingLayout : GPUObjectBase { - var type: String - var hasDynamicOffset: Boolean - var minBindingSize: Long -} - -external interface GPUBufferSamplerBindingLayout : GPUObjectBase { - var type: String -} - -external interface GPUTextureBindingLayout : GPUObjectBase { - var sampleType: String - var viewDimension: String - var multisampled: Boolean -} - -external interface GPUStorageTextureBindingLayout : GPUObjectBase { - var access: String - var format: String - var viewDimension: String -} - -external interface GPUExternalTextureBindingLayout : GPUObjectBase - -external interface GPUBindGroupDescriptor : GPUObjectBase { - var layout: GPUBindGroupLayout - var entries: Array -} - -external interface GPUBindGroupEntry : GPUObjectBase { - var binding: Int - - /** [GPUSampler] or [GPUTextureView] or [GPUBufferBinding] */ - var resource: GPUBindingResource -} - -external interface GPUSamplerDescriptor : GPUObjectBase { - var addressModeU: String - var addressModeV: String - var addressModeW: String - var magFilter: String - var minFilter: String - var mipmapFilter: String - var lodMinClamp: Float - var lodMaxClamp: Float - var compare: String? - var maxAnisotropy: Short -} - -external interface GPUComputePipelineDescriptor : GPUObjectPipelineDescriptorBase { - var compute: GPUProgrammableStage -} - -external interface GPUTextureDescriptor : GPUObjectBase { - var size: GPUExtent3D - var mipLevelCount: Int - var sampleCount: Int - var dimension: String - var format: String - var usage: Int - var viewFormats: Array -} - -external interface GPUExtent3D { - var width: Int - var height: Int - var depthOrArrayLayer: Int -} - -external interface GPUShaderModule : GPUObjectBase { - val compilationInfo: Any -} - -external interface GPUTexture : GPUObjectBase { - var depthOrLayers: Int - var dimension: String - var format: String - var width: Int - var height: Int - var mipLevelCount: Int - var sampleCount: Int - var usage: Int - - fun createView(desc: GPUTextureViewDescriptor?): GPUTextureView - - fun destroy() -} - -external interface GPUTextureViewDescriptor : GPUObjectBase { - var arrayLayerCount: Int - var aspect: String - var baseArrayLayer: Int - var baseMipLevel: Int - var dimension: String - var format: String - var mipLevelCount: Int -} - -external interface GPURenderPassDescriptor : GPUObjectBase { - var colorAttachments: Array - var depthStencilAttachment: GPURenderPassDepthStencilAttachment? - var occlusionQuerySet: GPUQuerySet - var timestampWrites: GPURenderPassTimestampWrites - var maxDrawCount: Long -} - -external interface GPURenderPassColorAttachment { - var view: GPUTextureView - var depthSlice: Int - var resolveTarget: GPUTextureView? - var clearValue: Array? - var loadOp: String - var storeOp: String -} - -external interface GPURenderPassDepthStencilAttachment { - var view: GPUTextureView - var depthClearValue: Float - var depthLoadOp: String? - var depthStoreOp: String? - var depthReadOnly: Boolean - var stencilClearValue: Int - var stencilLoadOp: String? - var stencilStoreOp: String? - var stencilReadOnly: Boolean -} - -external interface GPUQuerySet { - var type: String - var count: Int -} - -external interface GPURenderPassTimestampWrites { - var querySet: GPUQuerySet - var beginningOfPassWriteIndex: Int - var endOfPassWriteIndex: Int -} - -external interface GPUImageCopyTexture { - var aspect: String - var mipLevel: Int - var origin: GPUOrigin3D - var texture: GPUTexture -} - -external interface GPUOrigin3D { - var x: Int - var y: Int - var z: Int -} - -external interface GPUImageDataLayout { - var offset: Long - var bytesPerRow: Int - var rowsPerImage: Int -} - -external interface GPUImageCopyBuffer : GPUImageDataLayout { - var buffer: GPUBufferJs -} diff --git a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt b/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt deleted file mode 100644 index 77f8cc67a..000000000 --- a/core/src/jsMain/kotlin/com/littlekt/graphics/webgpu/webgpu.js.kt +++ /dev/null @@ -1,172 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.Releasable -import com.littlekt.file.* -import com.littlekt.resources.BufferResourceInfo -import com.littlekt.resources.TextureResourceInfo -import org.khronos.webgl.ArrayBuffer -import org.khronos.webgl.Uint8Array - -actual class Device(val delegate: GPUDevice) : Releasable { - - actual fun createSampler(desc: SamplerDescriptor): Sampler { - return Sampler(delegate.createSampler(desc.toNative())) - } - - actual fun createTexture(desc: TextureDescriptor): WebGPUTexture { - val textureSize = - (desc.size.width * desc.size.height * desc.size.depth * desc.format.bytes).toLong() - return WebGPUTexture(delegate.createTexture(desc.toNative()), textureSize) - } - - actual override fun release() {} -} - -actual class Adapter : Releasable { - - actual override fun release() {} -} - -actual class Queue(val delegate: GPUQueue) : Releasable { - - actual fun submit(vararg cmdBuffers: CommandBuffer) { - delegate.submit(cmdBuffers.map { it.delegate }.toTypedArray()) - } - - actual fun writeTexture( - data: ByteBuffer, - destination: TextureCopyView, - layout: TextureDataLayout, - copySize: Extent3D, - size: Long - ) { - data as GenericBuffer<*> - delegate.writeTexture( - destination.toNative(), - data.buffer, - layout.toNative(), - copySize.toNative(), - ) - } - - actual fun writeTexture( - data: ByteArray, - destination: TextureCopyView, - layout: TextureDataLayout, - copySize: Extent3D, - size: Long - ) { - val arrayBuffer = Uint8Array(ArrayBuffer(data.size)).apply { set(data.toTypedArray()) } - - delegate.writeTexture( - destination.toNative(), - arrayBuffer, - layout.toNative(), - copySize.toNative() - ) - } - - actual fun writeBuffer( - buffer: GPUBuffer, - data: ShortBuffer, - offset: Long, - dataOffset: Long, - size: Long - ) { - data as GenericBuffer<*> - delegate.writeBuffer(buffer.delegate, offset, data.buffer, dataOffset, size) - } - - actual fun writeBuffer( - buffer: GPUBuffer, - data: FloatBuffer, - offset: Long, - dataOffset: Long, - size: Long - ) { - data as GenericBuffer<*> - delegate.writeBuffer(buffer.delegate, offset, data.buffer, dataOffset, size) - } - - actual fun writeBuffer( - buffer: GPUBuffer, - data: IntBuffer, - offset: Long, - dataOffset: Long, - size: Long - ) { - data as GenericBuffer<*> - delegate.writeBuffer(buffer.delegate, offset, data.buffer, dataOffset, size) - } - - actual fun writeBuffer( - buffer: GPUBuffer, - data: ByteBuffer, - offset: Long, - dataOffset: Long, - size: Long - ) { - data as GenericBuffer<*> - delegate.writeBuffer(buffer.delegate, offset, data.buffer, dataOffset, size) - } - - actual override fun release() {} -} - -actual class ShaderModule(val delegate: GPUShaderModule) : Releasable { - actual override fun release() {} -} - -actual class WebGPUTexture(val delegate: GPUTexture, size: Long) : Releasable { - - private val info = TextureResourceInfo(this, size) - - actual override fun release() { - destroy() - } - - actual fun destroy() { - delegate.destroy() - info.delete() - } -} - -actual class TextureView(val delegate: GPUTextureView) : IntoBindingResource { - actual fun release() {} - - override fun toNative(): GPUBindingResource { - return delegate - } -} - -actual class GPUBuffer(val delegate: GPUBufferJs, actual val size: Long) : Releasable { - - private val info = BufferResourceInfo(this, size) - - actual fun getMappedRange(offset: Long, size: Long): ByteBuffer { - return ByteBufferImpl(Uint8Array(delegate.getMappedRange(offset, size))) - } - - actual fun getMappedRange(): ByteBuffer = getMappedRange(0, size) - - actual fun unmap() { - delegate.unmap() - } - - actual override fun release() { - destroy() - } - - actual fun destroy() { - delegate.destroy() - info.delete() - } -} - -actual class Sampler(val delegate: GPUSampler) : IntoBindingResource, Releasable { - actual override fun release() {} - - override fun toNative(): GPUBindingResource { - return delegate - } -} diff --git a/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt index 01d178330..042bed62a 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt @@ -1,7 +1,6 @@ package com.littlekt import com.littlekt.graphics.HdpiMode -import com.littlekt.graphics.webgpu.Backend internal val ktHead32x32 = "iVBORw0KGgoAAAANSUhEUgAAACAAAAAhCAYAAAC4JqlRAAAAAXNSR0IArs4c6QAABKNJREFUWIWVl39oVWUYxz/vzgnCsFqxS2tBymKgCF6vOs3Zbu6/zHBCf5gOQnYURBKMhit/YJszZVGwFmLeIULzL8EtMIPAebOprDYnQ8sRNQldXCulH4PkHN/+OOc9e8+vu7sHLpxz7vc83+/zfZ73PecIoiFD5yIGM9tIzFkWAsmbow+wsgX/F3PzrMmtbAEpJVLKSE6lREop2fry3dgMuXwqoHo25FK6XHru4xcqEEIACF+Ap6wkAfcyzYmulI/0lJRT5S3TVXpEkVC23Vi+V95c1ir/LHuKv8oe51/xGOUjPZSP9ABg4jCVaZIPlrwhVaVxcev3c/6xGaqyaCz87mCSOMq1+6cyTQCJLf36+pv+faYCWtkCZ681RsC5fIpfmlrJaWTqeub5logQgDn5FHL7EcTRFDO1QV8FTN6/FLAt5yXq+PVtdr56l1w+5TtlZQtk5rUwMtEZSWplC2y9sQWA4wtPFHW3LOkPRT73xCcAdJ2toLGyl8bK3oCQJBG6ELn9SECElS1w5ae9gDvZclHVNla+cNAnBjwLdyOlRAhBY2VvhKBvcvOMFuvFiKO7fbxaWYlLRrc6l0/5AvomN8dWWoqI8AwBwiwGPn6hwp9kRSxHcwGsSFsR0XGbWpLIWAEq9CRhYv26SKcCGCFErIiwC5AwhMp2dVMSuS5Cx8jRHEKIxI0oVoDaA0rZkEoJJULPGdcGvwWVT9QlJoJgr4s5ouNUhCY/IMQXkJnXQi6f4uO6PNdjks7UhjhxIm0F+m5lC7T/8z6VmstlAAdWXyWXT3F49WV2DWZjk4q05f+KhY6LE105/CmTS3cAcC9jSRPAFgYHVl+l9dslgakOOCAlVQ173AuLm+FaT5R9cTPPrvkZgNvnO9zV4OVTg62KmVy6AxvbdcDBxBZGoGK9Tzq5ShxbvRDcPt8BQFXDHtRjXs+rwsHAxnQFfHBxoXAwqXl6jQ8Ir4Y7A4e4M3AIgHWddqwAdV3HKuJcPhVony1MHIzpZWhjMv7HAAB9X3wVS6AqKxZx/yviM22vA/Dj8vewMXluuEtMCxAGLS+N++D2LdlpF671sK7T5tTgQzJr2xjrrvaT3/97yj8e664ms7aNU4MPXTe8OZGjOZ9cpC1sDGzvKRBwQInYsP80i+YHd7Gx7mre3TSfse5qJvr3+eRPzp3ji5jo3xfAhR3YsP80w7UH3ZnDnbnANL1Vf0ua3nh8+E2NPzTz1rcz8cP3Lmi83z33ROjhX69Z754vWObjlIih2sMY2Cwd2isiArZnb0tT2pg4mNKm8+K0CJWU8f4IcSRCWJG2GFjRhSHd2k0caodaowLCIsJOFIukjUekLc6tOIaBwyPYGNKhfmiXzxt5HDsY3nuSe/5O/TginSxCWZtEfmblSWwct1YJMrSHxO4o27K/ScNrw2yd0Mk/f/E0j/IfhmorNq9c2RbgjH0f+Cz/jHC8pWJj4GB6ThR/DujkJ1edAXDv9/KEyWGG770kJyDZcoBjq770K1aDt/Hyxliukj44w4NpSofDFxdEcB/V5TWMi2++9FpRjll98er7hCnVdqIc0o8ddg42lJT7fz+5dOVMdmd7AAAAAElFTkSuQmCC" diff --git a/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt b/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt index 316bef61f..5ea008ffc 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt @@ -8,7 +8,6 @@ import com.littlekt.file.* import com.littlekt.file.Base64.decodeFromBase64 import com.littlekt.file.vfs.VfsFile import com.littlekt.file.vfs.readPixmap -import com.littlekt.graphics.webgpu.WGPU_NULL import com.littlekt.input.LwjglInput import com.littlekt.log.Logger import com.littlekt.resources.internal.InternalResources @@ -224,7 +223,7 @@ class LwjglContext(override val configuration: JvmConfiguration) : Context() { wgpuLogger.log(logLevel) { messageJvm } } - wgpuSetLogCallback(WGPULogCallback.allocate(callback, scope), WGPU_NULL) + wgpuSetLogCallback(WGPULogCallback.allocate(callback, scope), NULL()) wgpuSetLogLevel(WGPULogLevel_Trace()) } diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/-utils.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/-utils.kt deleted file mode 100644 index b0ecbccf7..000000000 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/-utils.kt +++ /dev/null @@ -1,65 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.wgpu.WGPU -import java.lang.foreign.MemorySegment -import java.lang.foreign.SegmentAllocator -import java.lang.foreign.ValueLayout - -internal fun Array.mapToNativeEntries( - scope: SegmentAllocator, - nativeSize: Long, - allocator: (Long, SegmentAllocator) -> MemorySegment, - action: (entry: T, nativeEntry: MemorySegment) -> Unit -): MemorySegment { - val nativeArray = allocator(this.size.toLong(), scope) - forEachIndexed { index, jvmEntry -> - val nativeEntry = nativeArray.asSlice(nativeSize * index) - - action(jvmEntry, nativeEntry) - } - - return nativeArray -} - -internal fun Collection.mapToNativeEntries( - scope: SegmentAllocator, - nativeSize: Long, - allocator: (Long, SegmentAllocator) -> MemorySegment, - action: (entry: T, nativeEntry: MemorySegment) -> Unit -): MemorySegment { - val nativeArray = allocator(this.size.toLong(), scope) - forEachIndexed { index, jvmEntry -> - val nativeEntry = nativeArray.asSlice(nativeSize * index) - - action(jvmEntry, nativeEntry) - } - - return nativeArray -} - -internal val WGPU_NULL: MemorySegment = WGPU.NULL() - -internal fun List.toNativeArray(scope: SegmentAllocator) = - scope.allocateFrom(ValueLayout.JAVA_LONG, *map { it.address() }.toLongArray()) - -internal fun String.toNativeString(scope: SegmentAllocator) = scope.allocateFrom(this) - -internal fun Boolean.toInt() = if (this) 1 else 0 - -/** - * Allocated WGPU [MemorySegment] may have a max size of [Long.MAX_VALUE]. This isn't helpful when - * we are trying to - */ -internal fun MemorySegment.mapFromIntUntilNull(transform: (Int) -> T): List { - val results = mutableListOf() - - for (i in 0..byteSize() step ValueLayout.JAVA_INT.byteAlignment()) { - val result = transform(this[ValueLayout.JAVA_INT, i]) - if (result != null) { - results += result - } else { - break - } - } - return results.mapNotNull { it } -} diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/binding.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/binding.jvm.kt deleted file mode 100644 index d6c98ccc8..000000000 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/binding.jvm.kt +++ /dev/null @@ -1,133 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.Releasable -import com.littlekt.wgpu.WGPU.* -import com.littlekt.wgpu.WGPUBindGroupEntry -import com.littlekt.wgpu.WGPUBufferBindingLayout -import com.littlekt.wgpu.WGPUSamplerBindingLayout -import com.littlekt.wgpu.WGPUTextureBindingLayout -import java.lang.foreign.MemorySegment - -actual interface IntoBindingResource { - fun intoBindingResource(entry: MemorySegment) -} - -actual class BindGroup(val segment: MemorySegment) : Releasable { - - actual override fun release() { - wgpuBindGroupRelease(segment) - } - - override fun toString(): String { - return "BindGroup" - } -} - -actual abstract class BindingLayout actual constructor() { - abstract fun intoNative( - bufferBinding: MemorySegment, - samplerBinding: MemorySegment, - textureBinding: MemorySegment, - storageTextureBinding: MemorySegment - ) -} - -actual class BufferBinding -actual constructor(val buffer: GPUBuffer, val offset: Long, val size: Long) : IntoBindingResource { - - override fun intoBindingResource(entry: MemorySegment) { - WGPUBindGroupEntry.buffer(entry, buffer.segment) - WGPUBindGroupEntry.offset(entry, offset) - WGPUBindGroupEntry.size(entry, size) - } -} - -actual class BufferBindingLayout -actual constructor( - val type: BufferBindingType, - val hasDynamicOffset: Boolean, - val minBindingSize: Long -) : BindingLayout() { - - override fun intoNative( - bufferBinding: MemorySegment, - samplerBinding: MemorySegment, - textureBinding: MemorySegment, - storageTextureBinding: MemorySegment - ) { - WGPUBufferBindingLayout.type(bufferBinding, type.nativeVal) - WGPUBufferBindingLayout.hasDynamicOffset(bufferBinding, hasDynamicOffset.toInt()) - WGPUBufferBindingLayout.minBindingSize(bufferBinding, minBindingSize) - } -} - -actual class TextureBindingLayout -actual constructor( - val sampleType: TextureSampleType, - val viewDimension: TextureViewDimension, - val multisampled: Boolean -) : BindingLayout() { - - override fun intoNative( - bufferBinding: MemorySegment, - samplerBinding: MemorySegment, - textureBinding: MemorySegment, - storageTextureBinding: MemorySegment - ) { - WGPUTextureBindingLayout.sampleType(textureBinding, sampleType.nativeVal) - WGPUTextureBindingLayout.viewDimension(textureBinding, viewDimension.nativeVal) - WGPUTextureBindingLayout.multisampled(textureBinding, multisampled.toInt()) - } -} - -actual class SamplerBindingLayout actual constructor(val type: SamplerBindingType) : - BindingLayout() { - override fun intoNative( - bufferBinding: MemorySegment, - samplerBinding: MemorySegment, - textureBinding: MemorySegment, - storageTextureBinding: MemorySegment - ) { - WGPUSamplerBindingLayout.type(samplerBinding, type.nativeVal) - } -} - -actual class BindGroupLayoutEntry -actual constructor(val binding: Int, val visibility: ShaderStage, val bindingLayout: BindingLayout) - -actual class BindGroupLayout internal constructor(val segment: MemorySegment) : Releasable { - - actual override fun release() { - wgpuBindGroupLayoutRelease(segment) - } - - override fun toString(): String { - return "BindGroupLayout" - } -} - -actual class PipelineLayout(val segment: MemorySegment) : Releasable { - - actual override fun release() { - wgpuPipelineLayoutRelease(segment) - } - - override fun toString(): String { - return "PipelineLayout" - } -} - -class MemorySegmentList(segments: List) : List by segments - -actual class PipelineLayoutDescriptor -internal constructor(val segments: MemorySegmentList, val label: String?) { - actual constructor( - bindGroupLayouts: List, - label: String? - ) : this(MemorySegmentList(bindGroupLayouts.map { it.segment }), label) - - actual constructor( - bindGroupLayout: BindGroupLayout, - label: String? - ) : this(listOf(bindGroupLayout)) -} diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt deleted file mode 100644 index 209b01eef..000000000 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/command.jvm.kt +++ /dev/null @@ -1,296 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.EngineStats -import com.littlekt.Releasable -import com.littlekt.wgpu.* -import com.littlekt.wgpu.WGPU.* -import java.lang.foreign.Arena -import java.lang.foreign.MemorySegment -import java.lang.foreign.SegmentAllocator -import java.lang.foreign.ValueLayout - -actual class CommandBuffer(val segment: MemorySegment) : Releasable { - actual override fun release() { - wgpuCommandBufferRelease(segment) - } -} - -fun TextureCopyView.toNative(scope: SegmentAllocator): MemorySegment { - val native = WGPUImageCopyTexture.allocate(scope) - val nativeOrigin = WGPUImageCopyTexture.origin(native) - - WGPUImageCopyTexture.texture(native, texture.segment) - WGPUImageCopyTexture.mipLevel(native, mipLevel) - WGPUOrigin3D.x(nativeOrigin, origin.x) - WGPUOrigin3D.y(nativeOrigin, origin.y) - WGPUOrigin3D.z(nativeOrigin, origin.z) - - return native -} - -fun TextureDataLayout.toNative(scope: SegmentAllocator): MemorySegment { - val native = WGPUTextureDataLayout.allocate(scope) - - WGPUTextureDataLayout.bytesPerRow(native, bytesPerRow) - WGPUTextureDataLayout.rowsPerImage(native, rowsPerImage) - WGPUTextureDataLayout.offset(native, offset) - - return native -} - -fun BufferCopyView.toNative(scope: SegmentAllocator): MemorySegment { - val native = WGPUImageCopyBuffer.allocate(scope) - val layoutNative = WGPUImageCopyBuffer.layout(native) - - WGPUImageCopyBuffer.buffer(native, buffer.segment) - WGPUTextureDataLayout.bytesPerRow(layoutNative, layout.bytesPerRow) - WGPUTextureDataLayout.rowsPerImage(layoutNative, layout.rowsPerImage) - WGPUTextureDataLayout.offset(layoutNative, layout.offset) - - return native -} - -actual class CommandEncoder(val segment: MemorySegment) : Releasable { - - actual fun beginRenderPass(desc: RenderPassDescriptor): RenderPassEncoder { - return Arena.ofConfined().use { scope -> - WGPURenderPassDescriptor.allocate(scope).let { renderPassDesc -> - WGPURenderPassDescriptor.label( - renderPassDesc, - desc.label?.toNativeString(scope) ?: WGPU_NULL - ) - WGPURenderPassDescriptor.colorAttachmentCount( - renderPassDesc, - desc.colorAttachments.size.toLong() - ) - WGPURenderPassDescriptor.colorAttachments( - renderPassDesc, - desc.colorAttachments.mapToNativeEntries( - scope, - WGPURenderPassColorAttachment.sizeof(), - WGPURenderPassColorAttachment::allocateArray - ) { colorAttachment, nativeColorAttachment -> - WGPURenderPassColorAttachment.view( - nativeColorAttachment, - colorAttachment.view.segment - ) - WGPURenderPassColorAttachment.loadOp( - nativeColorAttachment, - colorAttachment.loadOp.nativeVal - ) - WGPURenderPassColorAttachment.storeOp( - nativeColorAttachment, - colorAttachment.storeOp.nativeVal - ) - colorAttachment.clearColor?.let { clearColor -> - WGPUColor.allocate(scope) - .also { - WGPUColor.r(it, clearColor.r.toDouble()) - WGPUColor.g(it, clearColor.g.toDouble()) - WGPUColor.b(it, clearColor.b.toDouble()) - WGPUColor.a(it, clearColor.a.toDouble()) - } - .let { - WGPURenderPassColorAttachment.clearValue( - nativeColorAttachment, - it - ) - } - } - } - ) - - desc.depthStencilAttachment?.let { depthStencilAttachment -> - val nativeDepthStencilAttachment = - WGPURenderPassDepthStencilAttachment.allocate(scope) - - WGPURenderPassDepthStencilAttachment.view( - nativeDepthStencilAttachment, - depthStencilAttachment.view.segment - ) - WGPURenderPassDepthStencilAttachment.depthClearValue( - nativeDepthStencilAttachment, - depthStencilAttachment.depthClearValue - ) - depthStencilAttachment.depthLoadOp?.nativeVal?.let { - WGPURenderPassDepthStencilAttachment.depthLoadOp( - nativeDepthStencilAttachment, - it - ) - } - - depthStencilAttachment.depthStoreOp?.nativeVal?.let { - WGPURenderPassDepthStencilAttachment.depthStoreOp( - nativeDepthStencilAttachment, - it - ) - } - WGPURenderPassDepthStencilAttachment.depthReadOnly( - nativeDepthStencilAttachment, - depthStencilAttachment.depthReadOnly.toInt() - ) - WGPURenderPassDepthStencilAttachment.stencilClearValue( - nativeDepthStencilAttachment, - depthStencilAttachment.stencilClearValue - ) - - depthStencilAttachment.stencilLoadOp?.nativeVal?.let { - WGPURenderPassDepthStencilAttachment.stencilLoadOp( - nativeDepthStencilAttachment, - it - ) - } - - depthStencilAttachment.stencilStoreOp?.nativeVal?.let { - WGPURenderPassDepthStencilAttachment.stencilStoreOp( - nativeDepthStencilAttachment, - it - ) - } - WGPURenderPassDepthStencilAttachment.depthReadOnly( - nativeDepthStencilAttachment, - depthStencilAttachment.stencilReadOnly.toInt() - ) - - WGPURenderPassDescriptor.depthStencilAttachment( - renderPassDesc, - nativeDepthStencilAttachment - ) - } - RenderPassEncoder( - wgpuCommandEncoderBeginRenderPass(segment, renderPassDesc), - desc.label - ) - } - } - } - - actual fun finish(): CommandBuffer { - return CommandBuffer(wgpuCommandEncoderFinish(segment, NULL())) - } - - actual fun copyBufferToTexture( - source: BufferCopyView, - destination: TextureCopyView, - copySize: Extent3D - ) { - Arena.ofConfined().use { scope -> - wgpuCommandEncoderCopyBufferToTexture( - segment, - source.toNative(scope), - destination.toNative(scope), - copySize.toNative(scope) - ) - } - } - - actual fun beginComputePass(label: String?): ComputePassEncoder { - return Arena.ofConfined().use { scope -> - val desc = WGPUComputePipelineDescriptor.allocate(scope) - WGPUComputePipelineDescriptor.label(desc, label?.toNativeString(scope) ?: WGPU_NULL) - ComputePassEncoder(wgpuCommandEncoderBeginComputePass(segment, desc)) - } - } - - actual fun copyTextureToBuffer(source: TextureCopyView, dest: BufferCopyView, size: Extent3D) { - TODO("IMPL") - } - - actual override fun release() { - wgpuCommandEncoderRelease(segment) - } -} - -actual class RenderPassEncoder(val segment: MemorySegment, actual val label: String? = null) : - Releasable { - - actual fun draw(vertexCount: Int, instanceCount: Int, firstVertex: Int, firstInstance: Int) { - EngineStats.drawCalls++ - EngineStats.triangles += (vertexCount / 3) * instanceCount - wgpuRenderPassEncoderDraw(segment, vertexCount, instanceCount, firstVertex, firstInstance) - } - - actual fun end() { - wgpuRenderPassEncoderEnd(segment) - } - - actual fun setVertexBuffer(slot: Int, buffer: GPUBuffer, offset: Long, size: Long) { - wgpuRenderPassEncoderSetVertexBuffer(segment, slot, buffer.segment, offset, size) - } - - actual fun drawIndexed( - indexCount: Int, - instanceCount: Int, - firstIndex: Int, - baseVertex: Int, - firstInstance: Int - ) { - EngineStats.drawCalls++ - EngineStats.triangles += (indexCount / 3) * instanceCount - wgpuRenderPassEncoderDrawIndexed( - segment, - indexCount, - instanceCount, - firstIndex, - baseVertex, - firstInstance - ) - } - - actual fun setIndexBuffer( - buffer: GPUBuffer, - indexFormat: IndexFormat, - offset: Long, - size: Long - ) { - wgpuRenderPassEncoderSetIndexBuffer( - segment, - buffer.segment, - indexFormat.nativeVal, - offset, - size - ) - } - - actual override fun release() { - wgpuRenderPassEncoderRelease(segment) - } - - actual fun setScissorRect(x: Int, y: Int, width: Int, height: Int) { - wgpuRenderPassEncoderSetScissorRect(segment, x, y, width, height) - } - - override fun toString(): String { - return "RenderPassEncoder(label=$label)" - } -} - -actual class ComputePipeline(val segment: MemorySegment) : Releasable { - actual override fun release() { - wgpuComputePipelineRelease(segment) - } - - override fun toString(): String { - return "ComputePipeline" - } -} - -actual class ComputePassEncoder(val segment: MemorySegment) : Releasable { - - actual fun dispatchWorkgroups( - workgroupCountX: Int, - workgroupCountY: Int, - workgroupCountZ: Int - ) { - wgpuComputePassEncoderDispatchWorkgroups( - segment, - workgroupCountX, - workgroupCountY, - workgroupCountZ - ) - } - - actual override fun release() { - wgpuComputePassEncoderRelease(segment) - } -} diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/enums.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/enums.jvm.kt deleted file mode 100644 index c53c22b68..000000000 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/enums.jvm.kt +++ /dev/null @@ -1,458 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.wgpu.WGPU.* - -val PrimitiveTopology.nativeVal: Int - get() = - when (this) { - PrimitiveTopology.POINT_LIST -> WGPUPrimitiveTopology_PointList() - PrimitiveTopology.LINE_LIST -> WGPUPrimitiveTopology_LineList() - PrimitiveTopology.LINE_STRIP -> WGPUPrimitiveTopology_LineStrip() - PrimitiveTopology.TRIANGLE_LIST -> WGPUPrimitiveTopology_TriangleList() - PrimitiveTopology.TRIANGLE_STRIP -> WGPUPrimitiveTopology_TriangleStrip() - } - -val FrontFace.nativeVal: Int - get() = - when (this) { - FrontFace.CCW -> WGPUFrontFace_CCW() - FrontFace.CW -> WGPUFrontFace_CW() - } - -val CullMode.nativeVal: Int - get() = - when (this) { - CullMode.NONE -> WGPUCullMode_None() - CullMode.FRONT -> WGPUCullMode_Front() - CullMode.BACK -> WGPUCullMode_Back() - } - -val TextureViewDimension.nativeVal: Int - get() = - when (this) { - TextureViewDimension.D1 -> WGPUTextureViewDimension_1D() - TextureViewDimension.D2 -> WGPUTextureViewDimension_2D() - TextureViewDimension.D2_ARRAY -> WGPUTextureViewDimension_2DArray() - TextureViewDimension.CUBE -> WGPUTextureViewDimension_Cube() - TextureViewDimension.CUBE_ARRAY -> WGPUTextureViewDimension_CubeArray() - TextureViewDimension.D3 -> WGPUTextureViewDimension_3D() - } - -val TextureAspect.nativeVal: Int - get() = - when (this) { - TextureAspect.ALL -> WGPUTextureAspect_All() - TextureAspect.STENCIL_ONLY -> WGPUTextureAspect_StencilOnly() - TextureAspect.DEPTH_ONLY -> WGPUTextureAspect_DepthOnly() - } - -val TextureDimension.nativeVal: Int - get() = - when (this) { - TextureDimension.D1 -> WGPUTextureDimension_1D() - TextureDimension.D2 -> WGPUTextureDimension_2D() - TextureDimension.D3 -> WGPUTextureDimension_3D() - } - -val TextureFormat.nativeVal: Int - get() = - when (this) { - /** 8 Bit Red channel only. `[0, 255]` converted to/from float `[0, 1]` in shader. */ - TextureFormat.R8_UNORM -> WGPUTextureFormat_R8Unorm() - - /** - * 8 Bit Red channel only. `[-127, 127]` converted to/from float `[-1, 1]` in shader. - */ - TextureFormat.R8_SNORM -> WGPUTextureFormat_R8Snorm() - - /** Red channel only. 8 bit integer per channel. Unsigned in shader. */ - TextureFormat.R8_UINT -> WGPUTextureFormat_R8Uint() - - /** Red channel only. 8 bit integer per channel. Signed in shader. */ - TextureFormat.R8_SINT -> WGPUTextureFormat_R8Sint() - - /** Red channel only. 16 bit integer per channel. Unsigned in shader. */ - TextureFormat.R16_UINT -> WGPUTextureFormat_R16Uint() - - /** Red channel only. 16 bit integer per channel. Signed in shader. */ - TextureFormat.R16_SINT -> WGPUTextureFormat_R16Sint() - - /** Red channel only. 16 bit float per channel. Float in shader. */ - TextureFormat.R16_FLOAT -> WGPUTextureFormat_RG16Float() - - /** - * Red and green channels. 8 bit integer per channel. `[0, 255]` converted to/from float - * `[0, 1]` in shader. - */ - TextureFormat.RG8_UNORM -> WGPUTextureFormat_RG8Unorm() - - /** - * Red and green channels. 8 bit integer per channel. `[-127, 127]` converted to/from - * float `[-1, 1]` in shader. - */ - TextureFormat.RG8_SNORM -> WGPUTextureFormat_RG8Snorm() - - /** Red and green channels. 8 bit integer per channel. Unsigned in shader. */ - TextureFormat.RG8_UINT -> WGPUTextureFormat_RG8Uint() - - /** Red and green channel s. 8 bit integer per channel. Signed in shader. */ - TextureFormat.RG8_SINT -> WGPUTextureFormat_RG8Sint() - - /** Red channel only. 32 bit integer per channel. Unsigned in shader. */ - TextureFormat.R32_UINT -> WGPUTextureFormat_R32Uint() - - /** Red channel only. 32 bit integer per channel. Signed in shader. */ - TextureFormat.R32_SINT -> WGPUTextureFormat_R32Sint() - - /** Red channel only. 32 bit float per channel. Float in shader. */ - TextureFormat.R32_FLOAT -> WGPUTextureFormat_R32Float() - - /** Red and green channels. 16 bit integer per channel. Unsigned in shader. */ - TextureFormat.RG16_UINT -> WGPUTextureFormat_RG16Uint() - - /** Red and green channels. 16 bit integer per channel. Signed in shader. */ - TextureFormat.RG16_SINT -> WGPUTextureFormat_RG16Sint() - - /** Red and green channels. 16 bit float per channel. Float in shader. */ - TextureFormat.RG16_FLOAT -> WGPUTextureFormat_RG16Float() - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. `[0, 255]` converted - * to/from float `[0, 1]` in shader. - */ - TextureFormat.RGBA8_UNORM -> WGPUTextureFormat_RGBA8Unorm() - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. Srgb-color `[0, - * 255]` converted to/from linear-color float `[0, 1]` in shader. - */ - TextureFormat.RGBA8_UNORM_SRGB -> WGPUTextureFormat_RGBA8UnormSrgb() - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. `[-127, 127]` - * converted to/from float `[-1, 1]` in shader. - */ - TextureFormat.RGBA8_SNORM -> WGPUTextureFormat_RGBA8Snorm() - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. Unsigned in shader. - */ - TextureFormat.RGBA8_UINT -> WGPUTextureFormat_RGBA8Uint() - - /** - * Red, green, blue, and alpha channels. 8 bit integer per channel. Signed in shader. - */ - TextureFormat.RGBA8_SINT -> WGPUTextureFormat_RGBA8Sint() - - /** - * Blue, green, red, and alpha channels. 8 bit integer per channel. `[0, 255]` converted - * to/from float `[0, 1]` in shader. - */ - TextureFormat.BGRA8_UNORM -> WGPUTextureFormat_BGRA8Unorm() - - /** - * Blue, green, red, and alpha channels. 8 bit integer per channel. Srgb-color `[0, - * 255]` converted to/from linear-color float `[0, 1]` in shader. - */ - TextureFormat.BGRA8_UNORM_SRGB -> WGPUTextureFormat_BGRA8UnormSrgb() - - /** - * Red, green, blue, and alpha channels. 10 bit integer for RGB channels, 2 bit integer - * for alpha channel. `[0, 1023]` (`[0, 3]` for alpha) converted to/from float `[0, 1]` - * in shader. - */ - TextureFormat.RGB10A2_UNORM -> WGPUTextureFormat_RGB10A2Unorm() - - /** - * Red, green, and blue channels. 11 bit float with no sign bit for RG channels. 10 bit - * float with no sign bit for blue channel. Float in shader. - */ - TextureFormat.RG11B10_FLOAT -> WGPUTextureFormat_RG11B10Ufloat() - - /** Red and green channels. 32 bit integer per channel. Unsigned in shader. */ - TextureFormat.RG32_UINT -> WGPUTextureFormat_RG32Uint() - - /** Red and green channels. 32 bit integer per channel. Signed in shader. */ - TextureFormat.RG32_SINT -> WGPUTextureFormat_RG32Sint() - - /** Red and green channels. 32 bit float per channel. Float in shader. */ - TextureFormat.RG32_FLOAT -> WGPUTextureFormat_RG32Float() - - /** - * Red, green, blue, and alpha channels. 16 bit integer per channel. Unsigned in shader. - */ - TextureFormat.RGBA16_UINT -> WGPUTextureFormat_RGBA16Uint() - - /** - * Red, green, blue, and alpha channels. 16 bit integer per channel. Signed in shader. - */ - TextureFormat.RGBA16_SINT -> WGPUTextureFormat_RGBA16Sint() - - /** Red, green, blue, and alpha channels. 16 bit float per channel. Float in shader. */ - TextureFormat.RGBA16_FLOAT -> WGPUTextureFormat_RGBA16Float() - - /** - * Red, green, blue, and alpha channels. 32 bit integer per channel. Unsigned in shader. - */ - TextureFormat.RGBA32_UINT -> WGPUTextureFormat_RGBA32Uint() - - /** - * Red, green, blue, and alpha channels. 32 bit integer per channel. Signed in shader. - */ - TextureFormat.RGBA32_SINT -> WGPUTextureFormat_RGBA32Sint() - - /** Red, green, blue, and alpha channels. 32 bit float per channel. Float in shader. */ - TextureFormat.RGBA32_FLOAT -> WGPUTextureFormat_RGBA32Float() - - /** Special depth format with 32 bit floating point depth. */ - TextureFormat.DEPTH32_FLOAT -> WGPUTextureFormat_Depth32Float() - - /** Special depth format with at least 24 bit integer depth. */ - TextureFormat.DEPTH24_PLUS -> WGPUTextureFormat_Depth24Plus() - - /** - * Special depth/stencil format with at least 24 bit integer depth and 8 bits integer - * stencil. - */ - TextureFormat.DEPTH24_PLUS_STENCIL8 -> WGPUTextureFormat_Depth24PlusStencil8() - } - -fun TextureFormat.Companion.from(nativeVal: Int) = - TextureFormat.entries.firstOrNull { it.nativeVal == nativeVal } - -val BlendOperation.nativeVal: Int - get() = - when (this) { - BlendOperation.ADD -> WGPUBlendOperation_Add() - BlendOperation.SUBTRACT -> WGPUBlendOperation_Subtract() - BlendOperation.REVERSE_SUBTRACT -> WGPUBlendOperation_ReverseSubtract() - BlendOperation.MIN -> WGPUBlendOperation_Min() - BlendOperation.MAX -> WGPUBlendOperation_Max() - } - -val StencilOperation.nativeVal: Int - get() = - when (this) { - StencilOperation.KEEP -> WGPUStencilOperation_Keep() - StencilOperation.ZERO -> WGPUStencilOperation_Zero() - StencilOperation.REPLACE -> WGPUStencilOperation_Replace() - StencilOperation.INVERT -> WGPUStencilOperation_Invert() - StencilOperation.INCREMENT_CLAMP -> WGPUStencilOperation_IncrementClamp() - StencilOperation.DECREMENT_CLAMP -> WGPUStencilOperation_DecrementClamp() - StencilOperation.INCREMENT_WRAP -> WGPUStencilOperation_IncrementWrap() - StencilOperation.DECREMENT_WRAP -> WGPUStencilOperation_DecrementWrap() - } - -val BlendFactor.nativeVal: Int - get() = - when (this) { - BlendFactor.ZERO -> WGPUBlendFactor_Zero() - BlendFactor.ONE -> WGPUBlendFactor_One() - BlendFactor.SRC_COLOR -> WGPUBlendFactor_Src() - BlendFactor.ONE_MINUS_SRC_COLOR -> WGPUBlendFactor_OneMinusSrc() - BlendFactor.SRC_ALPHA -> WGPUBlendFactor_SrcAlpha() - BlendFactor.ONE_MINUS_SRC_ALPHA -> WGPUBlendFactor_OneMinusSrcAlpha() - BlendFactor.DST_COLOR -> WGPUBlendFactor_Dst() - BlendFactor.ONE_MINUS_DST_COLOR -> WGPUBlendFactor_OneMinusDst() - BlendFactor.DST_ALPHA -> WGPUBlendFactor_DstAlpha() - BlendFactor.ONE_MINUS_DST_ALPHA -> WGPUBlendFactor_OneMinusDstAlpha() - BlendFactor.SRC_ALPHA_SATURATED -> WGPUBlendFactor_SrcAlphaSaturated() - BlendFactor.CONSTANT_COLOR -> WGPUBlendFactor_Constant() - BlendFactor.ONE_MINUS_CONSTANT_COLOR -> WGPUBlendFactor_OneMinusConstant() - } - -val IndexFormat.nativeVal: Int - get() = - when (this) { - /// Supported on Web and Desktop - IndexFormat.UINT16 -> WGPUIndexFormat_Uint16() - - /// Not supported on web for WGPU. - IndexFormat.UINT32 -> WGPUIndexFormat_Uint32() - } - -val VertexFormat.nativeVal: Int - get() = - when (this) { - VertexFormat.UINT8x2 -> WGPUVertexFormat_Uint8x2() - VertexFormat.UINT8x4 -> WGPUVertexFormat_Uint8x4() - VertexFormat.SINT8x2 -> WGPUVertexFormat_Sint8x2() - VertexFormat.SINT8x4 -> WGPUVertexFormat_Sint8x4() - VertexFormat.UNORM8x2 -> WGPUVertexFormat_Unorm8x2() - VertexFormat.UNORM8x4 -> WGPUVertexFormat_Unorm8x4() - VertexFormat.SNORM8x2 -> WGPUVertexFormat_Snorm8x2() - VertexFormat.SNORM8x4 -> WGPUVertexFormat_Snorm8x4() - VertexFormat.UINT16x2 -> WGPUVertexFormat_Uint16x2() - VertexFormat.UINT16x4 -> WGPUVertexFormat_Uint16x4() - VertexFormat.SINT16x2 -> WGPUVertexFormat_Sint16x2() - VertexFormat.SINT16x4 -> WGPUVertexFormat_Sint16x4() - VertexFormat.UNORM16x2 -> WGPUVertexFormat_Unorm16x2() - VertexFormat.UNORM16x4 -> WGPUVertexFormat_Unorm16x4() - VertexFormat.SNORM16x2 -> WGPUVertexFormat_Snorm16x2() - VertexFormat.SNORM16x4 -> WGPUVertexFormat_Snorm16x4() - VertexFormat.FLOAT16x2 -> WGPUVertexFormat_Float16x2() - VertexFormat.FLOAT16x4 -> WGPUVertexFormat_Float16x4() - VertexFormat.FLOAT32 -> WGPUVertexFormat_Float32() - VertexFormat.FLOAT32x2 -> WGPUVertexFormat_Float32x2() - VertexFormat.FLOAT32x3 -> WGPUVertexFormat_Float32x3() - VertexFormat.FLOAT32x4 -> WGPUVertexFormat_Float32x4() - VertexFormat.UINT32 -> WGPUVertexFormat_Uint32() - VertexFormat.UINT32x2 -> WGPUVertexFormat_Uint32x2() - VertexFormat.UINT32x3 -> WGPUVertexFormat_Uint32x3() - VertexFormat.UINT32x4 -> WGPUVertexFormat_Uint32x4() - VertexFormat.SINT32 -> WGPUVertexFormat_Sint32() - VertexFormat.SINT32x2 -> WGPUVertexFormat_Sint32x2() - VertexFormat.SINT32x3 -> WGPUVertexFormat_Sint32x3() - VertexFormat.SINT32x4 -> WGPUVertexFormat_Sint32x4() - } - -val VertexStepMode.nativeVal: Int - get() = - when (this) { - VertexStepMode.VERTEX -> WGPUVertexStepMode_Vertex() - VertexStepMode.INSTANCE -> WGPUVertexStepMode_Instance() - } - -val LoadOp.nativeVal: Int - get() = - when (this) { - LoadOp.CLEAR -> WGPULoadOp_Clear() - LoadOp.LOAD -> WGPULoadOp_Load() - } - -val StoreOp.nativeVal: Int - get() = - when (this) { - StoreOp.DISCARD -> WGPUStoreOp_Discard() - StoreOp.STORE -> WGPUStoreOp_Store() - } - -val BufferBindingType.nativeVal: Int - get() = - when (this) { - BufferBindingType.UNIFORM -> WGPUBufferBindingType_Uniform() - BufferBindingType.STORAGE -> WGPUBufferBindingType_Storage() - BufferBindingType.READ_ONLY_STORAGE -> WGPUBufferBindingType_ReadOnlyStorage() - } - -val AddressMode.nativeVal: Int - get() = - when (this) { - AddressMode.CLAMP_TO_EDGE -> WGPUAddressMode_ClampToEdge() - AddressMode.REPEAT -> WGPUAddressMode_Repeat() - AddressMode.MIRROR_REPEAT -> WGPUAddressMode_MirrorRepeat() - } - -val FilterMode.nativeVal: Int - get() = - when (this) { - FilterMode.NEAREST -> WGPUFilterMode_Nearest() - FilterMode.LINEAR -> WGPUFilterMode_Linear() - } - -val CompareFunction.nativeVal: Int - get() = - when (this) { - CompareFunction.NEVER -> WGPUCompareFunction_Never() - CompareFunction.LESS -> WGPUCompareFunction_Less() - CompareFunction.EQUAL -> WGPUCompareFunction_Equal() - CompareFunction.LESS_EQUAL -> WGPUCompareFunction_LessEqual() - CompareFunction.GREATER -> WGPUCompareFunction_Greater() - CompareFunction.NOT_EQUAL -> WGPUCompareFunction_NotEqual() - CompareFunction.GREATER_EQUAL -> WGPUCompareFunction_GreaterEqual() - CompareFunction.ALWAYS -> WGPUCompareFunction_Always() - } - -val TextureSampleType.nativeVal: Int - get() = - when (this) { - TextureSampleType.FLOAT -> WGPUTextureSampleType_Float() - TextureSampleType.SINT -> WGPUTextureSampleType_Sint() - TextureSampleType.UINT -> WGPUTextureSampleType_Uint() - TextureSampleType.DEPTH -> WGPUTextureSampleType_Depth() - } - -val SamplerBindingType.nativeVal: Int - get() = - when (this) { - SamplerBindingType.FILTERING -> WGPUSamplerBindingType_Filtering() - SamplerBindingType.NON_FILTERING -> WGPUSamplerBindingType_NonFiltering() - SamplerBindingType.COMPARISON -> WGPUSamplerBindingType_Comparison() - } - -val AlphaMode.nativeVal: Int - get() = - when (this) { - AlphaMode.AUTO -> WGPUCompositeAlphaMode_Auto() - AlphaMode.OPAQUE -> WGPUCompositeAlphaMode_Opaque() - AlphaMode.PREMULTIPLIED -> WGPUCompositeAlphaMode_Premultiplied() - AlphaMode.UNPREMULTIPLIED -> WGPUCompositeAlphaMode_Unpremultiplied() - AlphaMode.INHERIT -> WGPUCompositeAlphaMode_Inherit() - } - -fun AlphaMode.Companion.from(nativeVal: Int): AlphaMode? = - AlphaMode.entries.firstOrNull { it.nativeVal == nativeVal } - -val PresentMode.nativeVal: Int - get() = - when (this) { - PresentMode.FIFO -> WGPUPresentMode_Fifo() - PresentMode.FIFO_RELAXED -> WGPUPresentMode_FifoRelaxed() - PresentMode.IMMEDIATE -> WGPUPresentMode_Immediate() - PresentMode.MAILBOX -> WGPUPresentMode_Mailbox() - } - -val TextureStatus.nativeVal: Int - get() = - when (this) { - TextureStatus.SUCCESS -> WGPUSurfaceGetCurrentTextureStatus_Success() - TextureStatus.TIMEOUT -> WGPUSurfaceGetCurrentTextureStatus_Timeout() - TextureStatus.OUTDATED -> WGPUSurfaceGetCurrentTextureStatus_Outdated() - TextureStatus.LOST -> WGPUSurfaceGetCurrentTextureStatus_Lost() - TextureStatus.OUT_OF_MEMORY -> WGPUSurfaceGetCurrentTextureStatus_OutOfMemory() - TextureStatus.DEVICE_LOST -> WGPUSurfaceGetCurrentTextureStatus_DeviceLost() - } - -fun TextureStatus.Companion.from(nativeVal: Int): TextureStatus? = - TextureStatus.entries.firstOrNull { it.nativeVal == nativeVal } - -@JvmInline -value class Backend(val flag: Int) { - - infix fun or(other: Backend): Backend = Backend(flag or other.flag) - - infix fun and(other: Backend): Backend = Backend(flag and other.flag) - - fun isInvalid(): Boolean = this or all != all - - companion object { - val VULKAN: Backend = Backend(WGPUInstanceBackend_Vulkan()) - val GL: Backend = Backend(WGPUInstanceBackend_GL()) - val METAL: Backend = Backend(WGPUInstanceBackend_Metal()) - val DX11: Backend = Backend(WGPUInstanceBackend_DX11()) - val DX12: Backend = Backend(WGPUInstanceBackend_DX12()) - val ALL: Backend = Backend(WGPUInstanceBackend_All()) - - private val all = VULKAN or GL or METAL or DX11 or DX12 - } -} - -val Feature.nativeVal: Int - get() = - when (this) { - Feature.DEPTH_CLIP_CONTROL -> WGPUFeatureName_DepthClipControl() - Feature.DEPTH32FLOAT_STENCIL18 -> WGPUFeatureName_Depth32FloatStencil8() - Feature.TEXTURE_COMPRESSION_BC -> WGPUFeatureName_TextureCompressionBC() - Feature.TEXTURE_COMPRESSION_ETC2 -> WGPUFeatureName_TextureCompressionETC2() - Feature.TEXTURE_COMPRESSION_ASTC -> WGPUFeatureName_TextureCompressionASTC() - Feature.TIMESTAMP_QUERY -> WGPUFeatureName_TimestampQuery() - Feature.INDIRECT_FIRST_INSTANCE -> WGPUFeatureName_IndirectFirstInstance() - Feature.SHADER_F16 -> WGPUFeatureName_ShaderF16() - Feature.RG11B10UFLOAT_RENDERABLE -> WGPUFeatureName_RG11B10UfloatRenderable() - Feature.BGRA8UNORM_STORAGE -> WGPUFeatureName_BGRA8UnormStorage() - Feature.FLOAT32_FILTERABLE -> WGPUFeatureName_Float32Filterable() - Feature.CLIP_DISTANCES -> - WGPUFeatureName_Undefined() // TODO check if this exists in WGPU in the future - Feature.DUAL_SOURCE_BLENDING -> - WGPUFeatureName_Undefined() // TODO check if this exists in WGPU in the future - } diff --git a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt deleted file mode 100644 index 6841952bc..000000000 --- a/core/src/jvmMain/kotlin/com/littlekt/graphics/webgpu/webgpu.jvm.kt +++ /dev/null @@ -1,295 +0,0 @@ -package com.littlekt.graphics.webgpu - -import com.littlekt.Releasable -import com.littlekt.file.* -import com.littlekt.log.Logger -import com.littlekt.resources.BufferResourceInfo -import com.littlekt.resources.TextureResourceInfo -import com.littlekt.wgpu.* -import com.littlekt.wgpu.WGPU.* -import java.lang.foreign.Arena -import java.lang.foreign.MemorySegment -import java.lang.foreign.SegmentAllocator -import java.lang.foreign.ValueLayout - -actual class Device(val segment: MemorySegment) : Releasable { - - actual fun createSampler(desc: SamplerDescriptor): Sampler { - return Arena.ofConfined().use { scope -> - val descriptor = WGPUSamplerDescriptor.allocate(scope) - - WGPUSamplerDescriptor.label(descriptor, desc.label?.toNativeString(scope) ?: WGPU_NULL) - WGPUSamplerDescriptor.addressModeU(descriptor, desc.addressModeU.nativeVal) - WGPUSamplerDescriptor.addressModeV(descriptor, desc.addressModeV.nativeVal) - WGPUSamplerDescriptor.addressModeW(descriptor, desc.addressModeW.nativeVal) - WGPUSamplerDescriptor.magFilter(descriptor, desc.magFilter.nativeVal) - WGPUSamplerDescriptor.minFilter(descriptor, desc.minFilter.nativeVal) - WGPUSamplerDescriptor.mipmapFilter(descriptor, desc.mipmapFilter.nativeVal) - WGPUSamplerDescriptor.lodMinClamp(descriptor, desc.lodMinClamp) - WGPUSamplerDescriptor.lodMaxClamp(descriptor, desc.lodMaxClamp) - WGPUSamplerDescriptor.compare( - descriptor, - desc.compare?.nativeVal ?: WGPUCompareFunction_Undefined() - ) - WGPUSamplerDescriptor.maxAnisotropy(descriptor, desc.maxAnisotropy) - - Sampler(wgpuDeviceCreateSampler(segment, descriptor)) - } - } - - actual fun createTexture(desc: TextureDescriptor): WebGPUTexture { - return Arena.ofConfined().use { scope -> - val descriptor = WGPUTextureDescriptor.allocate(scope) - val size = WGPUTextureDescriptor.size(descriptor) - - WGPUTextureDescriptor.label(descriptor, desc.label?.toNativeString(scope) ?: WGPU_NULL) - WGPUTextureDescriptor.usage(descriptor, desc.usage.usageFlag) - WGPUTextureDescriptor.dimension(descriptor, desc.dimension.nativeVal) - WGPUTextureDescriptor.format(descriptor, desc.format.nativeVal) - WGPUTextureDescriptor.mipLevelCount(descriptor, desc.mipLevelCount) - WGPUTextureDescriptor.sampleCount(descriptor, desc.sampleCount) - WGPUExtent3D.width(size, desc.size.width) - WGPUExtent3D.height(size, desc.size.height) - WGPUExtent3D.depthOrArrayLayers(size, desc.size.depth) - - val textureSize = - (desc.size.width * desc.size.height * desc.size.depth * desc.format.bytes).toLong() - WebGPUTexture(wgpuDeviceCreateTexture(segment, descriptor), textureSize) - } - } - - actual override fun release() { - wgpuDeviceRelease(segment) - } - - override fun toString(): String { - return "Device" - } -} - -actual class Adapter(var segment: MemorySegment) : Releasable { - - actual override fun release() { - wgpuAdapterRelease(segment) - } - - override fun toString(): String { - return "Adapter" - } - - companion object { - private val logger = Logger() - } -} - -actual class Queue(val segment: MemorySegment) : Releasable { - - actual fun submit(vararg cmdBuffers: CommandBuffer) { - Arena.ofConfined().use { scope -> - wgpuQueueSubmit( - segment, - cmdBuffers.size.toLong(), - cmdBuffers.map { it.segment }.toNativeArray(scope) - ) - } - } - - actual fun writeTexture( - data: ByteBuffer, - destination: TextureCopyView, - layout: TextureDataLayout, - copySize: Extent3D, - size: Long, - ) { - data as ByteBufferImpl - Arena.ofConfined().use { scope -> - wgpuQueueWriteTexture( - segment, - destination.toNative(scope), - data.segment, - size, - layout.toNative(scope), - copySize.toNative(scope) - ) - } - } - - actual fun writeBuffer( - buffer: GPUBuffer, - data: ShortBuffer, - offset: Long, - dataOffset: Long, - size: Long - ) { - data as ShortBufferImpl - wgpuQueueWriteBuffer( - segment, - buffer.segment, - offset, - if (dataOffset > 0) data.segment.asSlice(dataOffset) else data.segment, - size * Short.SIZE_BYTES - ) - } - - actual fun writeBuffer( - buffer: GPUBuffer, - data: IntBuffer, - offset: Long, - dataOffset: Long, - size: Long - ) { - data as IntBufferImpl - wgpuQueueWriteBuffer( - segment, - buffer.segment, - offset, - if (dataOffset > 0) data.segment.asSlice(dataOffset) else data.segment, - size * Int.SIZE_BYTES - ) - } - - actual fun writeBuffer( - buffer: GPUBuffer, - data: FloatBuffer, - offset: Long, - dataOffset: Long, - size: Long - ) { - data as FloatBufferImpl - wgpuQueueWriteBuffer( - segment, - buffer.segment, - offset, - if (dataOffset > 0) data.segment.asSlice(dataOffset) else data.segment, - size * Float.SIZE_BYTES - ) - } - - actual fun writeBuffer( - buffer: GPUBuffer, - data: ByteBuffer, - offset: Long, - dataOffset: Long, - size: Long - ) { - data as ByteBufferImpl - wgpuQueueWriteBuffer( - segment, - buffer.segment, - offset, - if (dataOffset > 0) data.segment.asSlice(dataOffset) else data.segment, - size - ) - } - - actual fun writeTexture( - data: ByteArray, - destination: TextureCopyView, - layout: TextureDataLayout, - copySize: Extent3D, - size: Long - ) { - Arena.ofConfined().use { scope -> - wgpuQueueWriteTexture( - segment, - destination.toNative(scope), - scope.allocateFrom(ValueLayout.JAVA_BYTE, *data), - size, - layout.toNative(scope), - copySize.toNative(scope) - ) - } - } - - actual override fun release() { - wgpuQueueRelease(segment) - } - - override fun toString(): String { - return "Queue" - } -} - -actual class ShaderModule(val segment: MemorySegment) : Releasable { - actual override fun release() { - wgpuShaderModuleRelease(segment) - } - - override fun toString(): String { - return "ShaderModule" - } -} - -actual class WebGPUTexture(val segment: MemorySegment, val size: Long) : Releasable { - - private val info = TextureResourceInfo(this, size) - - actual override fun release() { - wgpuTextureRelease(segment) - info.delete() - } - - actual fun destroy() { - wgpuTextureDestroy(segment) - info.delete() - } -} - -actual class TextureView(val segment: MemorySegment) : IntoBindingResource { - - override fun intoBindingResource(entry: MemorySegment) { - WGPUBindGroupEntry.textureView(entry, segment) - } - - actual fun release() { - wgpuTextureViewRelease(segment) - } -} - -actual class GPUBuffer(val segment: MemorySegment, actual val size: Long) : Releasable { - - private val info = BufferResourceInfo(this, size) - - actual fun getMappedRange(offset: Long, size: Long): ByteBuffer { - val mappedRange = wgpuBufferGetMappedRange(segment, offset, size).asSlice(offset, size) - return ByteBufferImpl(mappedRange.byteSize().toInt(), segment = mappedRange) - } - - actual fun getMappedRange(): ByteBuffer = getMappedRange(0, size) - - actual fun unmap() { - wgpuBufferUnmap(segment) - } - - actual override fun release() { - wgpuBufferRelease(segment) - } - - actual fun destroy() { - wgpuBufferDestroy(segment) - info.delete() - } -} - -actual class Sampler(val segment: MemorySegment) : IntoBindingResource, Releasable { - - override fun intoBindingResource(entry: MemorySegment) { - WGPUBindGroupEntry.sampler(entry, segment) - } - - actual override fun release() { - wgpuSamplerRelease(segment) - } -} - -fun Extent3D.toNative(scope: SegmentAllocator): MemorySegment { - val native = WGPUExtent3D.allocate(scope) - - WGPUExtent3D.width(native, width) - WGPUExtent3D.height(native, height) - WGPUExtent3D.depthOrArrayLayers(native, depth) - - return native -} - - diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/GameWorldAndUIViewports.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/GameWorldAndUIViewports.kt index 3213ac010..3b7ffbfba 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/GameWorldAndUIViewports.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/GameWorldAndUIViewports.kt @@ -7,7 +7,6 @@ import com.littlekt.graph.node.ui.centerContainer import com.littlekt.graph.node.ui.label import com.littlekt.graph.sceneGraph import com.littlekt.graphics.g2d.SpriteBatch -import com.littlekt.graphics.webgpu.* import com.littlekt.util.viewport.ExtendViewport /** diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt index 67713dcf0..9566efdbe 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt @@ -5,7 +5,6 @@ import com.littlekt.ContextListener import com.littlekt.file.vfs.readPixmap import com.littlekt.graphics.Color import com.littlekt.graphics.textureIndexedMesh -import com.littlekt.graphics.webgpu.* /** * An example showing drawing a texture with a [textureIndexedMesh]. diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TriangleExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TriangleExample.kt index 18262c7ab..25d479943 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TriangleExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TriangleExample.kt @@ -3,7 +3,6 @@ package com.littlekt.examples import com.littlekt.Context import com.littlekt.ContextListener import com.littlekt.graphics.Color -import com.littlekt.graphics.webgpu.* /** * An example rendering a simple triangle in pure WebGPU. diff --git a/gradlew b/gradlew old mode 100644 new mode 100755 diff --git a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/SceneGraph.kt b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/SceneGraph.kt index 13b86c95a..ba001ebbc 100644 --- a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/SceneGraph.kt +++ b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/SceneGraph.kt @@ -12,7 +12,6 @@ import com.littlekt.graphics.g2d.Batch import com.littlekt.graphics.g2d.SpriteBatch import com.littlekt.graphics.g2d.TextureSlice import com.littlekt.graphics.g2d.shape.ShapeRenderer -import com.littlekt.graphics.webgpu.* import com.littlekt.input.* import com.littlekt.math.MutableVec2f import com.littlekt.resources.Textures diff --git a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/CanvasLayer.kt b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/CanvasLayer.kt index 1b58767cd..0b96bfc37 100644 --- a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/CanvasLayer.kt +++ b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/CanvasLayer.kt @@ -12,7 +12,6 @@ import com.littlekt.graphics.g2d.Batch import com.littlekt.graphics.g2d.SpriteBatchShader import com.littlekt.graphics.g2d.shape.ShapeRenderer import com.littlekt.graphics.shader.Shader -import com.littlekt.graphics.webgpu.* import com.littlekt.log.Logger import com.littlekt.math.Mat4 import com.littlekt.math.MutableVec2f diff --git a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/Node.kt b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/Node.kt index 4afc6c574..e19d208a1 100644 --- a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/Node.kt +++ b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/Node.kt @@ -10,7 +10,6 @@ import com.littlekt.graph.util.* import com.littlekt.graphics.Camera import com.littlekt.graphics.g2d.Batch import com.littlekt.graphics.g2d.shape.ShapeRenderer -import com.littlekt.graphics.webgpu.RenderPassEncoder import com.littlekt.util.datastructure.fastForEach import kotlin.contracts.ExperimentalContracts import kotlin.contracts.InvocationKind diff --git a/settings.gradle.kts b/settings.gradle.kts index 8d7bc5075..911ecb287 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -11,7 +11,7 @@ plugins { id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0" dependencyResolutionManagement { repositories { - mavenLocal() + //mavenLocal() google() mavenCentral() //wgpu4k snapshot & preview repository From 8ed0e4e5727974d5344fa34b4c6d6b1a2079597e Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Fri, 27 Sep 2024 01:20:51 +0200 Subject: [PATCH 16/22] Refactor and simplify GPU-related codebase Removed redundant GPU-related classes and interfaces across multiple files to streamline the codebase. Consolidated functions for surface creation based on OS-specific logic. Enhanced code readability and maintainability by focusing on essential functionality and reducing clutter. --- core/build.gradle.kts | 4 + .../com/littlekt/ContextConfiguration.kt | 9 - .../littlekt/resources/TextureResourceInfo.kt | 1 + .../kotlin/com/littlekt/LittleKtApp.js.kt | 12 +- .../kotlin/com/littlekt/LittleKtApp.jvm.kt | 18 +- .../kotlin/com/littlekt/LwjglContext.kt | 1 - .../kotlin/com/littlekt/LwjglGraphics.kt | 260 +++++------------- .../com/littlekt/file/vfs/VfsLoaders.jvm.kt | 1 + gradle/libs.versions.toml | 4 + 9 files changed, 92 insertions(+), 218 deletions(-) diff --git a/core/build.gradle.kts b/core/build.gradle.kts index 1a01fabc9..28cbbac6b 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -54,6 +54,10 @@ kotlin { implementation(libs.mp3.decoder) + // Helper to create surface + implementation(libs.rococoa) + implementation(libs.jnaPlatform) + implementation(libs.lwjgl.core) implementation(libs.lwjgl.glfw) implementation(libs.lwjgl.openal) diff --git a/core/src/commonMain/kotlin/com/littlekt/ContextConfiguration.kt b/core/src/commonMain/kotlin/com/littlekt/ContextConfiguration.kt index b87f543cd..5ca2b8d5a 100644 --- a/core/src/commonMain/kotlin/com/littlekt/ContextConfiguration.kt +++ b/core/src/commonMain/kotlin/com/littlekt/ContextConfiguration.kt @@ -8,12 +8,3 @@ abstract class ContextConfiguration { abstract val title: String open val loadInternalResources: Boolean = true } - -/** When requesting an adapter, what is the preferred power usage. */ -enum class PowerPreference { - /** Lower power adapter. */ - LOW_POWER, - - /** High power adapter. */ - HIGH_POWER -} diff --git a/core/src/commonMain/kotlin/com/littlekt/resources/TextureResourceInfo.kt b/core/src/commonMain/kotlin/com/littlekt/resources/TextureResourceInfo.kt index 891fcaabd..231a9740b 100644 --- a/core/src/commonMain/kotlin/com/littlekt/resources/TextureResourceInfo.kt +++ b/core/src/commonMain/kotlin/com/littlekt/resources/TextureResourceInfo.kt @@ -1,6 +1,7 @@ package com.littlekt.resources import com.littlekt.EngineStats +import io.ygdrasil.wgpu.Texture /** * @author Colton Daily diff --git a/core/src/jsMain/kotlin/com/littlekt/LittleKtApp.js.kt b/core/src/jsMain/kotlin/com/littlekt/LittleKtApp.js.kt index 55305f5e3..bc101a219 100644 --- a/core/src/jsMain/kotlin/com/littlekt/LittleKtApp.js.kt +++ b/core/src/jsMain/kotlin/com/littlekt/LittleKtApp.js.kt @@ -1,5 +1,7 @@ package com.littlekt +import io.ygdrasil.wgpu.PowerPreference + /** Properties related to creating a [LittleKtApp] */ actual class LittleKtProps { var width: Int = 960 @@ -8,7 +10,7 @@ actual class LittleKtProps { var title: String = "LitteKt" var resourcesDir: String = "./" var applicationDir: String = "./" - var powerPreference = PowerPreference.HIGH_POWER + var powerPreference = PowerPreference.highPerformance } /** @@ -40,12 +42,6 @@ class JsConfiguration( val canvasId: String = "canvas", val resourcesPath: String = "./", val applicationPath: String = "./", - val powerPreference: PowerPreference = PowerPreference.HIGH_POWER + val powerPreference: PowerPreference = PowerPreference.highPerformance ) : ContextConfiguration() -val PowerPreference.nativeFlag: String - get() = - when (this) { - PowerPreference.LOW_POWER -> "low-power" - PowerPreference.HIGH_POWER -> "high-performance" - } diff --git a/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt index 042bed62a..3e85affd5 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt @@ -1,6 +1,8 @@ package com.littlekt import com.littlekt.graphics.HdpiMode +import io.ygdrasil.wgpu.BackendType +import io.ygdrasil.wgpu.PowerPreference internal val ktHead32x32 = "iVBORw0KGgoAAAANSUhEUgAAACAAAAAhCAYAAAC4JqlRAAAAAXNSR0IArs4c6QAABKNJREFUWIWVl39oVWUYxz/vzgnCsFqxS2tBymKgCF6vOs3Zbu6/zHBCf5gOQnYURBKMhit/YJszZVGwFmLeIULzL8EtMIPAebOprDYnQ8sRNQldXCulH4PkHN/+OOc9e8+vu7sHLpxz7vc83+/zfZ73PecIoiFD5yIGM9tIzFkWAsmbow+wsgX/F3PzrMmtbAEpJVLKSE6lREop2fry3dgMuXwqoHo25FK6XHru4xcqEEIACF+Ap6wkAfcyzYmulI/0lJRT5S3TVXpEkVC23Vi+V95c1ir/LHuKv8oe51/xGOUjPZSP9ABg4jCVaZIPlrwhVaVxcev3c/6xGaqyaCz87mCSOMq1+6cyTQCJLf36+pv+faYCWtkCZ681RsC5fIpfmlrJaWTqeub5logQgDn5FHL7EcTRFDO1QV8FTN6/FLAt5yXq+PVtdr56l1w+5TtlZQtk5rUwMtEZSWplC2y9sQWA4wtPFHW3LOkPRT73xCcAdJ2toLGyl8bK3oCQJBG6ELn9SECElS1w5ae9gDvZclHVNla+cNAnBjwLdyOlRAhBY2VvhKBvcvOMFuvFiKO7fbxaWYlLRrc6l0/5AvomN8dWWoqI8AwBwiwGPn6hwp9kRSxHcwGsSFsR0XGbWpLIWAEq9CRhYv26SKcCGCFErIiwC5AwhMp2dVMSuS5Cx8jRHEKIxI0oVoDaA0rZkEoJJULPGdcGvwWVT9QlJoJgr4s5ouNUhCY/IMQXkJnXQi6f4uO6PNdjks7UhjhxIm0F+m5lC7T/8z6VmstlAAdWXyWXT3F49WV2DWZjk4q05f+KhY6LE105/CmTS3cAcC9jSRPAFgYHVl+l9dslgakOOCAlVQ173AuLm+FaT5R9cTPPrvkZgNvnO9zV4OVTg62KmVy6AxvbdcDBxBZGoGK9Tzq5ShxbvRDcPt8BQFXDHtRjXs+rwsHAxnQFfHBxoXAwqXl6jQ8Ir4Y7A4e4M3AIgHWddqwAdV3HKuJcPhVony1MHIzpZWhjMv7HAAB9X3wVS6AqKxZx/yviM22vA/Dj8vewMXluuEtMCxAGLS+N++D2LdlpF671sK7T5tTgQzJr2xjrrvaT3/97yj8e664ms7aNU4MPXTe8OZGjOZ9cpC1sDGzvKRBwQInYsP80i+YHd7Gx7mre3TSfse5qJvr3+eRPzp3ji5jo3xfAhR3YsP80w7UH3ZnDnbnANL1Vf0ua3nh8+E2NPzTz1rcz8cP3Lmi83z33ROjhX69Z754vWObjlIih2sMY2Cwd2isiArZnb0tT2pg4mNKm8+K0CJWU8f4IcSRCWJG2GFjRhSHd2k0caodaowLCIsJOFIukjUekLc6tOIaBwyPYGNKhfmiXzxt5HDsY3nuSe/5O/TginSxCWZtEfmblSWwct1YJMrSHxO4o27K/ScNrw2yd0Mk/f/E0j/IfhmorNq9c2RbgjH0f+Cz/jHC8pWJj4GB6ThR/DujkJ1edAXDv9/KEyWGG770kJyDZcoBjq770K1aDt/Hyxliukj44w4NpSofDFxdEcB/V5TWMi2++9FpRjll98er7hCnVdqIc0o8ddg42lJT7fz+5dOVMdmd7AAAAAElFTkSuQmCC" @@ -25,12 +27,12 @@ actual class LittleKtProps { var traceWgpu = false var enableWGPULogging = false - /** Bitmask for backends. Defaults to [Backend.ALL]. */ - var preferredBackends = Backend.ALL + /** Bitmask for backends. Defaults to [BackendType.undefined]. */ + var preferredBackends = BackendType.undefined var loadInternalResources: Boolean = true - var powerPreference = PowerPreference.HIGH_POWER + var powerPreference = PowerPreference.highPerformance } /** @@ -81,14 +83,8 @@ class JvmConfiguration( val windowPosY: Int?, val hdpiMode: HdpiMode, val enableWGPULogging: Boolean, - val preferredBackends: Backend, + val preferredBackends: BackendType, override val loadInternalResources: Boolean, - val powerPreference: PowerPreference = PowerPreference.HIGH_POWER + val powerPreference: PowerPreference = PowerPreference.highPerformance ) : ContextConfiguration() -val PowerPreference.nativeVal: Int - get() = - when (this) { - PowerPreference.LOW_POWER -> 1 - PowerPreference.HIGH_POWER -> 2 - } diff --git a/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt b/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt index 5ea008ffc..3b6f06764 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt @@ -117,7 +117,6 @@ class LwjglContext(override val configuration: JvmConfiguration) : Context() { if (windowHandle == MemoryUtil.NULL) throw RuntimeException("Failed to create the GLFW window") - graphics.createInstance(configuration) graphics.configureSurfaceToWindow(windowHandle) graphics.requestAdapterAndDevice(configuration.powerPreference) diff --git a/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt b/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt index 282678fcc..0650c9edc 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt @@ -5,17 +5,35 @@ import com.littlekt.graphics.HdpiMode import com.littlekt.graphics.SystemCursor import com.littlekt.log.Logger import io.ygdrasil.wgpu.Adapter +import io.ygdrasil.wgpu.CompositeAlphaMode import io.ygdrasil.wgpu.Device +import io.ygdrasil.wgpu.PowerPreference +import io.ygdrasil.wgpu.PresentMode import io.ygdrasil.wgpu.Surface +import io.ygdrasil.wgpu.SurfaceConfiguration +import io.ygdrasil.wgpu.TextureFormat +import io.ygdrasil.wgpu.TextureUsage import io.ygdrasil.wgpu.WGPU import io.ygdrasil.wgpu.WGPU.Companion import java.lang.foreign.Arena import java.lang.foreign.MemorySegment import kotlinx.atomicfu.atomic import kotlinx.atomicfu.update +import kotlinx.coroutines.runBlocking import org.lwjgl.glfw.* +import org.lwjgl.glfw.GLFWNativeCocoa.glfwGetCocoaWindow +import org.lwjgl.glfw.GLFWNativeWin32.glfwGetWin32Window +import org.lwjgl.glfw.GLFWNativeX11.glfwGetX11Display +import org.lwjgl.glfw.GLFWNativeX11.glfwGetX11Window import org.lwjgl.system.JNI.* import org.lwjgl.system.macosx.ObjCRuntime.* +import java.awt.AlphaComposite +import org.rococoa.ID +import org.rococoa.Rococoa +import com.sun.jna.Pointer +import com.sun.jna.platform.win32.Kernel32 +import darwin.CAMetalLayer +import darwin.NSWindow /** * @author Colton Daily @@ -46,59 +64,34 @@ class LwjglGraphics(private val context: LwjglContext) : Graphics, Releasable { override val backBufferHeight: Int get() = _backBufferHeight - internal var instance: Instance = WGPU.createInstance() ?: error("fail to wgpu instance") + internal var instance = WGPU.createInstance() ?: error("fail to wgpu instance") - override var surface: Surface = Surface(WGPU_NULL) - override var adapter: Adapter = Adapter(WGPU_NULL) - override var device: Device = Device(WGPU_NULL) + override lateinit var surface: Surface + override lateinit var adapter: Adapter + override lateinit var device: Device - override val preferredFormat by lazy { surface.getPreferredFormat(adapter) } + + override val preferredFormat by lazy { surface.preferredCanvasFormat ?: error("fail to get preferredCanvasFormat") } private var hasSurfaceCapabilities = false - override val surfaceCapabilities: SurfaceCapabilities by lazy { - hasSurfaceCapabilities = true - surface.getCapabilities(adapter) - } override fun configureSurface( - usage: TextureUsage, + usage: Set, format: TextureFormat, presentMode: PresentMode, - alphaMode: AlphaMode + alphaMode: CompositeAlphaMode ) { surface.configure( - SurfaceConfiguration(device, usage, format, presentMode, alphaMode, width, height) + SurfaceConfiguration(device, format, usage, alphaMode = alphaMode, presentMode = presentMode) //width, height ) } internal suspend fun requestAdapterAndDevice(powerPreference: PowerPreference) { - val output = atomic(WGPU_NULL) - - Arena.ofConfined().use { scope -> - val options = WGPURequestAdapterOptions.allocate(scope) - val callback = - WGPURequestAdapterCallback.allocate( - { status, adapter, message, _ -> - if (status == WGPURequestAdapterStatus_Success()) { - output.update { adapter } - } else { - logger.error { - "requestAdapter status=$status, message=${message.getString(0)}" - } - } - }, - scope - ) - WGPURequestAdapterOptions.powerPreference(options, powerPreference.nativeVal) - WGPURequestAdapterOptions.compatibleSurface(options, surface.segment) - WGPURequestAdapterOptions.nextInChain(options, WGPU_NULL) - wgpuInstanceRequestAdapter(instance.segment, options, callback, WGPU_NULL) - } - adapter = Adapter(output.value) + adapter = instance.requestAdapter(surface, powerPreference) ?: error("No adapter found.") requestDevice() } private suspend fun requestDevice() { - device = adapter.requestDevice() + device = adapter.requestDevice() ?: error("No device found.") } override fun supportsExtension(extension: String): Boolean { @@ -130,163 +123,52 @@ class LwjglGraphics(private val context: LwjglContext) : Graphics, Releasable { GLFW.glfwSetCursor(context.windowHandle, handle) } - internal fun createInstance(configuration: JvmConfiguration) { - instance = - Arena.ofConfined().use { scope -> - val instanceDesc = WGPUInstanceDescriptor.allocate(scope) - val extras = WGPUInstanceExtras.allocate(scope) - if (configuration.preferredBackends.isInvalid()) { - logger.warn { - "Configuration.preferredBackends is invalid and will resort to the default backend. Specify at least one backend or remove the list to get rid of this warning." - } - } else { - WGPUInstanceExtras.backends(extras, configuration.preferredBackends.flag) - } - WGPUChainedStruct.sType( - WGPUInstanceExtras.chain(extras), - WGPUSType_InstanceExtras() - ) - WGPUInstanceDescriptor.nextInChain(instanceDesc, extras) - Instance(wgpuCreateInstance(instanceDesc)) - } - } - internal fun configureSurfaceToWindow(windowHandle: Long) { - val isMac = System.getProperty("os.name").lowercase().contains("mac") - val isWindows = System.getProperty("os.name").lowercase().contains("windows") - val isLinux = System.getProperty("os.name").lowercase().contains("linux") - surface = - Surface( - when { - isWindows -> { - val osHandle = GLFWNativeWin32.glfwGetWin32Window(windowHandle) - Arena.ofConfined().use { scope -> - val desc = WGPUSurfaceDescriptor.allocate(scope) - val windowsDesc = WGPUSurfaceDescriptorFromWindowsHWND.allocate(scope) - WGPUSurfaceDescriptorFromWindowsHWND.hwnd( - windowsDesc, - MemorySegment.ofAddress(osHandle) - ) - WGPUSurfaceDescriptorFromWindowsHWND.hinstance(windowsDesc, WGPU_NULL) - WGPUChainedStruct.sType( - WGPUSurfaceDescriptorFromWindowsHWND.chain(windowsDesc), - WGPUSType_SurfaceDescriptorFromWindowsHWND() - ) - WGPUSurfaceDescriptor.label(desc, WGPU_NULL) - WGPUSurfaceDescriptor.nextInChain(desc, windowsDesc) - wgpuInstanceCreateSurface(instance.segment, desc) - } - } - isLinux -> { - val platform = GLFW.glfwGetPlatform() - when (platform) { - GLFW.GLFW_PLATFORM_X11 -> { - Arena.ofConfined().use { scope -> - val display = GLFWNativeX11.glfwGetX11Display() - val osHandle = GLFWNativeX11.glfwGetX11Window(windowHandle) - val desc = WGPUSurfaceDescriptor.allocate(scope) - val windowsDesc = - WGPUSurfaceDescriptorFromXlibWindow.allocate(scope) - WGPUSurfaceDescriptorFromXlibWindow.display( - windowsDesc, - MemorySegment.ofAddress(display) - ) - WGPUSurfaceDescriptorFromXlibWindow.window( - windowsDesc, - osHandle - ) - WGPUChainedStruct.sType( - WGPUSurfaceDescriptorFromXlibWindow.chain(windowsDesc), - WGPUSType_SurfaceDescriptorFromXlibWindow() - ) - WGPUSurfaceDescriptor.label(desc, WGPU_NULL) - WGPUSurfaceDescriptor.nextInChain(desc, windowsDesc) - wgpuInstanceCreateSurface(instance.segment, desc) - } - } - GLFW.GLFW_PLATFORM_WAYLAND -> { - Arena.ofConfined().use { scope -> - val display = GLFWNativeWayland.glfwGetWaylandDisplay() - val osHandle = - GLFWNativeWayland.glfwGetWaylandWindow(windowHandle) - val desc = WGPUSurfaceDescriptor.allocate(scope) - val windowsDesc = - WGPUSurfaceDescriptorFromWaylandSurface.allocate(scope) - WGPUSurfaceDescriptorFromWaylandSurface.display( - windowsDesc, - MemorySegment.ofAddress(display) - ) - WGPUSurfaceDescriptorFromWaylandSurface.surface( - windowsDesc, - MemorySegment.ofAddress(osHandle) - ) - WGPUChainedStruct.sType( - WGPUSurfaceDescriptorFromWaylandSurface.chain(windowsDesc), - WGPUSType_SurfaceDescriptorFromWaylandSurface() - ) - WGPUSurfaceDescriptor.label(desc, WGPU_NULL) - WGPUSurfaceDescriptor.nextInChain(desc, windowsDesc) - wgpuInstanceCreateSurface(instance.segment, desc) - } - } - else -> { - logger.log(Logger.Level.ERROR) { - "Linux platform not supported. Supported backends: [X11, Wayland]" - } - WGPU_NULL - } - } - } - isMac -> { - val osHandle = GLFWNativeCocoa.glfwGetCocoaWindow(windowHandle) - Arena.ofConfined().use { scope -> - val objc_msgSend = getLibrary().getFunctionAddress("objc_msgSend") - val CAMetalLayer = objc_getClass("CAMetalLayer") - val contentView = - invokePPP(osHandle, sel_getUid("contentView"), objc_msgSend) - // [ns_window.contentView setWantsLayer:YES]; - invokePPV(contentView, sel_getUid("setWantsLayer:"), true, objc_msgSend) - // metal_layer = [CAMetalLayer layer]; - val metal_layer = - invokePPP(CAMetalLayer, sel_registerName("layer"), objc_msgSend) - // [ns_window.contentView setLayer:metal_layer]; - invokePPPP( - contentView, - sel_getUid("setLayer:"), - metal_layer, - objc_msgSend - ) - - val desc = WGPUSurfaceDescriptor.allocate(scope) - val metalDesc = WGPUSurfaceDescriptorFromMetalLayer.allocate(scope) - WGPUSurfaceDescriptorFromMetalLayer.layer( - metalDesc, - MemorySegment.ofAddress(metal_layer) - ) - WGPUChainedStruct.sType( - WGPUSurfaceDescriptorFromMetalLayer.chain(metalDesc), - WGPUSType_SurfaceDescriptorFromMetalLayer() - ) - WGPUSurfaceDescriptor.label(desc, WGPU_NULL) - WGPUSurfaceDescriptor.nextInChain(desc, metalDesc) - - wgpuInstanceCreateSurface(instance.segment, desc) - } - } - else -> { - logger.log(Logger.Level.ERROR) { "Platform not supported." } - WGPU_NULL - } - } - ) + surface = instance.getSurface(windowHandle, { width to height }) } - override fun release() { + private fun WGPU.getSurface(window: Long, sizeProvider: () -> Pair): Surface = when (Platform.os) { + Os.Linux -> { + val display = glfwGetX11Display().let { MemorySegment.ofAddress(it) } + val x11_window = glfwGetX11Window(window) + getSurfaceFromX11Window(display, x11_window) ?: error("fail to get surface on Linux") + } + Os.Window -> { + val hwnd = glfwGetWin32Window(window).let { MemorySegment.ofAddress(it) } + val hinstance = Kernel32.INSTANCE.GetModuleHandle(null).pointer.toMemory() + getSurfaceFromWindows(hinstance, hwnd) ?: error("fail to get surface on Windows") + } + Os.MacOs -> { + val nsWindowPtr = glfwGetCocoaWindow(window) + val nswindow = Rococoa.wrap(ID.fromLong(nsWindowPtr), NSWindow::class.java) + nswindow.contentView()?.setWantsLayer(true) + val layer = CAMetalLayer.layer() + nswindow.contentView()?.setLayer(layer.id().toLong().toPointer()) + getSurfaceFromMetalLayer(MemorySegment.ofAddress(layer.id().toLong())) + } + }.also { if( it == MemorySegment.NULL) error("fail to get surface") } + .let { Surface(it, sizeProvider) } + override fun release() { } +} - } +private enum class Os { + Linux, + Window, + MacOs +} - companion object { - private val logger = Logger() - } +private object Platform { + val os: Os + get() = System.getProperty("os.name").let { name -> + when { + arrayOf("Linux", "SunOS", "Unit").any { name.startsWith(it) } -> Os.Linux + arrayOf("Mac OS X", "Darwin").any { name.startsWith(it) } -> Os.MacOs + arrayOf("Windows").any { name.startsWith(it) } -> Os.Window + else -> error("Unrecognized or unsupported operating system.") + } + } } + +private fun Pointer.toMemory() = MemorySegment.ofAddress(Pointer.nativeValue(this)) +private fun Long.toPointer(): Pointer = Pointer(this) \ No newline at end of file diff --git a/core/src/jvmMain/kotlin/com/littlekt/file/vfs/VfsLoaders.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/file/vfs/VfsLoaders.jvm.kt index 0a677edd3..bdbd9b596 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/file/vfs/VfsLoaders.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/file/vfs/VfsLoaders.jvm.kt @@ -13,6 +13,7 @@ import com.littlekt.graphics.PixmapTexture import com.littlekt.graphics.Texture import com.littlekt.log.Logger import fr.delthas.javamp3.Sound +import io.ygdrasil.wgpu.TextureFormat import java.io.ByteArrayInputStream import java.nio.ByteBuffer import java.nio.IntBuffer diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 3b86457b4..56efc9566 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -2,12 +2,14 @@ download-gradle = "5.6.0" wgpu4k = "0.0.0-SNAPSHOT" kotlin = "2.0.0" +rococoa = "0.0.1" kotlinxHtmlVersion = "0.11.0" kotlinx-atomicfu = "0.24.0" kotlinx-coroutines = "1.9.0-RC" kotlinx-serialization = "1.7.0" lwjgl = "3.3.3" mp3-decoder = "1.0.1" +jna = "5.14.0" [libraries] kotlin-test = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" } @@ -21,6 +23,8 @@ lwjgl-openal = { module = "org.lwjgl:lwjgl-openal", version.ref = "lwjgl" } lwjgl-stb = { module = "org.lwjgl:lwjgl-stb", version.ref = "lwjgl" } mp3-decoder = { module = "fr.delthas:javamp3", version.ref = "mp3-decoder" } wgpu4k = { module = "io.ygdrasil:wgpu4k", version.ref = "wgpu4k" } +rococoa = { module = "io.ygdrasil:rococoa", version.ref = "rococoa" } +jnaPlatform = { module = "net.java.dev.jna:jna-platform", version.ref = "jna" } [plugins] From 1eb09e4a8fc181d939c6c653e6d8ba3df728514c Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Fri, 27 Sep 2024 12:04:36 +0200 Subject: [PATCH 17/22] Add WebGPU conversion methods and refactor WebGPU usage. Added `toWebGPUColor` method for converting colors to WebGPU format in `Color.kt`. Refactored multiple classes to replace deprecated WebGPU constructs with updated ones, ensuring code compatibility and modernization. Additionally, disabled `allWarningsAsErrors` in the build script temporarily for smoother development. --- core/build.gradle.kts | 3 +- .../kotlin/com/littlekt/graphics/Color.kt | 1 + .../com/littlekt/graphics/EmptyTexture.kt | 2 +- .../kotlin/com/littlekt/WebGPUContext.kt | 6 +- .../littlekt/examples/AssetProviderExample.kt | 52 ++-- .../littlekt/examples/ComputeBoidsExample.kt | 28 +-- .../com/littlekt/examples/FontExample.kt | 52 ++-- .../examples/GameWorldAndUIViewports.kt | 62 ++--- .../examples/HelloSceneGraphExample.kt | 53 ++-- .../examples/LDtkTileMapCacheExample.kt | 60 ++--- .../littlekt/examples/LDtkTileMapExample.kt | 54 ++--- .../examples/MultipleTexturesExample.kt | 52 ++-- ...derSpriteBatchAndMultipleShadersExample.kt | 39 +-- .../littlekt/examples/RenderTargetExample.kt | 65 +++-- .../littlekt/examples/RotatingCubeExample.kt | 227 ++++++++++-------- .../littlekt/examples/SimpleCameraExample.kt | 62 ++--- .../examples/SpriteBatchMultiPassExample.kt | 52 ++-- .../examples/SpriteCacheQuadsExample.kt | 52 ++-- .../littlekt/examples/TextureBlendsExample.kt | 28 +-- .../com/littlekt/examples/TextureExample.kt | 34 +-- .../examples/TextureMeshAndCameraExample.kt | 34 +-- .../littlekt/examples/TextureMeshExample.kt | 32 +-- .../TextureViaCommandEncoderExample.kt | 34 +-- .../com/littlekt/examples/TiledMeshExample.kt | 34 +-- .../examples/TiledTileMapCacheExample.kt | 28 +-- .../littlekt/examples/TiledTileMapExample.kt | 28 +-- .../com/littlekt/examples/TriangleExample.kt | 90 ++++--- .../kotlin/com/littlekt/examples/utils.kt | 11 +- .../kotlin/com/littlekt/graph/SceneGraph.kt | 5 +- .../com/littlekt/graph/node/CanvasLayer.kt | 21 +- .../kotlin/com/littlekt/graph/node/Node.kt | 1 + .../littlekt/graph/node/render/Material.kt | 5 +- 32 files changed, 681 insertions(+), 626 deletions(-) diff --git a/core/build.gradle.kts b/core/build.gradle.kts index 28cbbac6b..fcdaff7c9 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -99,7 +99,8 @@ kotlin { @OptIn(ExperimentalKotlinGradlePluginApi::class) compilerOptions { - allWarningsAsErrors = true + // Fix warning, then turn this on + allWarningsAsErrors = false progressiveMode = true freeCompilerArgs.add("-Xexpect-actual-classes") } diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/Color.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/Color.kt index c85be3512..c756b1d97 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/Color.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/Color.kt @@ -101,6 +101,7 @@ open class Color(r: Float, g: Float, b: Float, a: Float = 1f) : Vec4f(r, g, b, a /** @return a new [MutableColor] using the color values of this color. */ fun toMutableColor(result: MutableColor = MutableColor()) = result.set(r, g, b, a) + fun toWebGPUColor() = io.ygdrasil.wgpu.Color(r.toDouble(), g.toDouble(), b.toDouble(), a.toDouble()) companion object { val CLEAR = Color(0f, 0f, 0f, 0f) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt index 25debab85..332599efc 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt @@ -17,7 +17,7 @@ import io.ygdrasil.wgpu.Texture as WebGPUTexture /** * A [Texture] that doesn't contain any underlying raw image data, but instead, is intended to be * used in a render pass as an output. By default, the [textureDescriptor] uses - * `TextureUsage.TEXTURE or TextureUsage.RENDER_ATTACHMENT` as usage. + * `TextureUsage.TEXTURE or TextureUsage.renderAttachment` as usage. * * @param device the device for underlying GPU buffers creation * @param preferredFormat the preferred [TextureFormat] diff --git a/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt b/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt index 33bf38f5f..1ca5680a5 100644 --- a/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt +++ b/core/src/jsMain/kotlin/com/littlekt/WebGPUContext.kt @@ -60,10 +60,10 @@ class WebGPUContext(override val configuration: JsConfiguration) : Context() { graphics._height = canvas.clientHeight KtScope.launch { - val adapterOptions = jsObject { - powerPreference = configuration.powerPreference.nativeFlag + val adapterOptions: GPURequestAdapterOptions = jsObject { + powerPreference = configuration.powerPreference.value } - graphics.adapter = requestAdapter() ?: error("No appropriate Adapter found.") + graphics.adapter = requestAdapter(adapterOptions) ?: error("No appropriate Adapter found.") graphics.device = graphics.adapter.requestDevice() ?: error("No appropriate Device found.") if (configuration.loadInternalResources) { InternalResources.createInstance(this@WebGPUContext) diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/AssetProviderExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/AssetProviderExample.kt index 60f5512a9..efb92aefa 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/AssetProviderExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/AssetProviderExample.kt @@ -10,9 +10,14 @@ import com.littlekt.graphics.g2d.SpriteBatch import com.littlekt.graphics.g2d.font.BitmapFont import com.littlekt.graphics.g2d.tilemap.ldtk.LDtkWorld import com.littlekt.graphics.g2d.use -import com.littlekt.graphics.webgpu.* import com.littlekt.resources.Fonts import com.littlekt.util.viewport.ExtendViewport +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * @author Colton Daily @@ -31,14 +36,13 @@ class AssetProviderExample(context: Context) : ContextListener(context) { val device = graphics.device - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat) @@ -48,10 +52,10 @@ class AssetProviderExample(context: Context) : ContextListener(context) { onResize { width, height -> viewport.update(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -65,13 +69,13 @@ class AssetProviderExample(context: Context) : ContextListener(context) { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -88,16 +92,13 @@ class AssetProviderExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ) ) @@ -115,14 +116,13 @@ class AssetProviderExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { batch.release() } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt index 5e935fde2..015bb6882 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/ComputeBoidsExample.kt @@ -5,7 +5,6 @@ import com.littlekt.ContextListener import com.littlekt.file.FloatBuffer import com.littlekt.graphics.* import com.littlekt.graphics.shader.Shader -import com.littlekt.graphics.webgpu.TextureStatus import io.ygdrasil.wgpu.BindGroupDescriptor import io.ygdrasil.wgpu.BindGroupDescriptor.BindGroupEntry import io.ygdrasil.wgpu.BindGroupDescriptor.BufferBinding @@ -16,6 +15,7 @@ import io.ygdrasil.wgpu.BufferBindingType import io.ygdrasil.wgpu.BufferDescriptor import io.ygdrasil.wgpu.BufferUsage import io.ygdrasil.wgpu.ColorWriteMask +import io.ygdrasil.wgpu.CommandEncoderDescriptor import io.ygdrasil.wgpu.ComputePipelineDescriptor import io.ygdrasil.wgpu.ComputePipelineDescriptor.ProgrammableStage import io.ygdrasil.wgpu.LoadOp @@ -27,6 +27,7 @@ import io.ygdrasil.wgpu.RenderPipelineDescriptor.VertexState import io.ygdrasil.wgpu.ShaderModuleDescriptor import io.ygdrasil.wgpu.ShaderStage import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus import io.ygdrasil.wgpu.TextureUsage import io.ygdrasil.wgpu.VertexFormat import io.ygdrasil.wgpu.VertexStepMode @@ -46,7 +47,6 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { addCloseOnEsc() val device = graphics.device - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( @@ -112,7 +112,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { targets = listOf( RenderPipelineDescriptor.FragmentState.ColorTargetState( format = preferredFormat, - blend = RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState.NonPreMultiplied, + blend = BlendStates.NonPreMultiplied, writeMask = ColorWriteMask.all ) ) @@ -213,7 +213,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { simParams.rule3Scale ) ) - device.queue.writeBuffer(simParamBuffer, simParamBufferData) + device.queue.writeBuffer(simParamBuffer, 0L, simParamBufferData.toArray()) val numParticles = 1500 val initialParticleData = FloatArray(numParticles * 4) @@ -262,7 +262,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { setOf(TextureUsage.renderAttachment), preferredFormat, PresentMode.fifo, - surfaceCapabilities.alphaModes[0] + graphics.surface.supportedAlphaMode.first() ) } @@ -270,13 +270,13 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { onUpdate { dt -> val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -290,7 +290,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { val swapChainTexture = checkNotNull(surfaceTexture.texture) val frame = swapChainTexture.createView() - val commandEncoder = device.createCommandEncoder("scenegraph command encoder") + val commandEncoder = device.createCommandEncoder(CommandEncoderDescriptor("scenegraph command encoder")) val renderPassDescriptor = RenderPassDescriptor( listOf( @@ -298,7 +298,7 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { view = frame, loadOp = LoadOp.clear, storeOp = StoreOp.store, - clearValue = Color.DARK_GRAY + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ), label = "Init render pass" @@ -331,8 +331,8 @@ class ComputeBoidsExample(context: Context) : ContextListener(context) { commandBuffer.close() commandEncoder.close() - frame.release() - swapChainTexture.release() + frame.close() + swapChainTexture.close() } onRelease {} diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/FontExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/FontExample.kt index 85a83b846..819839ca5 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/FontExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/FontExample.kt @@ -7,9 +7,14 @@ import com.littlekt.graphics.Color import com.littlekt.graphics.HAlign import com.littlekt.graphics.g2d.SpriteBatch import com.littlekt.graphics.g2d.use -import com.littlekt.graphics.webgpu.* import com.littlekt.resources.Fonts import com.littlekt.util.viewport.ExtendViewport +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * @author Colton Daily @@ -23,14 +28,13 @@ class FontExample(context: Context) : ContextListener(context) { val arialFont = resourcesVfs["arial_32.fnt"].readBitmapFont() val device = graphics.device - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat) @@ -40,10 +44,10 @@ class FontExample(context: Context) : ContextListener(context) { onResize { width, height -> viewport.update(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -51,13 +55,13 @@ class FontExample(context: Context) : ContextListener(context) { onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -74,16 +78,13 @@ class FontExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ) ) @@ -100,14 +101,13 @@ class FontExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { batch.release() } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/GameWorldAndUIViewports.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/GameWorldAndUIViewports.kt index 3b7ffbfba..71944e813 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/GameWorldAndUIViewports.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/GameWorldAndUIViewports.kt @@ -8,6 +8,13 @@ import com.littlekt.graph.node.ui.label import com.littlekt.graph.sceneGraph import com.littlekt.graphics.g2d.SpriteBatch import com.littlekt.util.viewport.ExtendViewport +import io.ygdrasil.wgpu.CommandEncoderDescriptor +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * An example using a render pass for the game world and a render pass for the UI. @@ -26,23 +33,20 @@ class GameWorldAndUIViewports(context: Context) : ContextListener(context) { // we can load additional levels by doing: // mapLoader.loadLevel(levelIdx) val world = mapLoader.loadMap(0, translateMapHeight = false) - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat, size = 400) val worldViewport = ExtendViewport(270, 135) val worldCamera = worldViewport.camera addWASDMovement(worldCamera, 0.05f) - val bgColor = - if (preferredFormat.srgb) world.defaultLevelBackgroundColor.toLinear() - else world.defaultLevelBackgroundColor + val bgColor = world.defaultLevelBackgroundColor val graph = sceneGraph(this, viewport = ExtendViewport(960, 540), batch = batch) { centerContainer { @@ -59,23 +63,23 @@ class GameWorldAndUIViewports(context: Context) : ContextListener(context) { graph.resize(width, height) worldViewport.update(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } onUpdate { dt -> val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -89,18 +93,17 @@ class GameWorldAndUIViewports(context: Context) : ContextListener(context) { val swapChainTexture = checkNotNull(surfaceTexture.texture) val frame = swapChainTexture.createView() - val commandEncoder = device.createCommandEncoder("command encoder") + val commandEncoder = device.createCommandEncoder(CommandEncoderDescriptor("command encoder")) val worldRenderPass = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = bgColor + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = bgColor.toWebGPUColor() ) ) ) @@ -110,15 +113,14 @@ class GameWorldAndUIViewports(context: Context) : ContextListener(context) { world.render(batch, worldCamera, scale = 1f) batch.flush(worldRenderPass) worldRenderPass.end() - worldRenderPass.release() val uiRenderPassDescriptor = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.LOAD, - storeOp = StoreOp.STORE + loadOp = LoadOp.load, + storeOp = StoreOp.store ) ), label = "Init render pass" @@ -130,13 +132,13 @@ class GameWorldAndUIViewports(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { batch.release() } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/HelloSceneGraphExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/HelloSceneGraphExample.kt index a3a39e1f6..52c745d39 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/HelloSceneGraphExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/HelloSceneGraphExample.kt @@ -11,12 +11,18 @@ import com.littlekt.graph.sceneGraph import com.littlekt.graphics.Color import com.littlekt.graphics.HAlign import com.littlekt.graphics.VAlign -import com.littlekt.graphics.webgpu.* import com.littlekt.input.Key import com.littlekt.math.geom.Angle import com.littlekt.math.geom.degrees import com.littlekt.math.geom.radians import com.littlekt.util.viewport.ExtendViewport +import io.ygdrasil.wgpu.CommandEncoderDescriptor +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * An example using a [sceneGraph] @@ -32,14 +38,13 @@ class HelloSceneGraphExample(context: Context) : ContextListener(context) { val icon = resourcesVfs["icon_16x16.png"].readTexture() val device = graphics.device - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val graph = @@ -129,23 +134,23 @@ class HelloSceneGraphExample(context: Context) : ContextListener(context) { onResize { width, height -> graph.resize(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } onUpdate { dt -> val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -159,17 +164,15 @@ class HelloSceneGraphExample(context: Context) : ContextListener(context) { val swapChainTexture = checkNotNull(surfaceTexture.texture) val frame = swapChainTexture.createView() - val commandEncoder = device.createCommandEncoder("scenegraph command encoder") + val commandEncoder = device.createCommandEncoder(CommandEncoderDescriptor("scenegraph command encoder")) val renderPassDescriptor = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ), label = "Init render pass" @@ -179,13 +182,13 @@ class HelloSceneGraphExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { graph.release() } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/LDtkTileMapCacheExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/LDtkTileMapCacheExample.kt index 38bce87de..54fe8baf7 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/LDtkTileMapCacheExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/LDtkTileMapCacheExample.kt @@ -4,8 +4,13 @@ import com.littlekt.Context import com.littlekt.ContextListener import com.littlekt.file.vfs.readLDtkMapLoader import com.littlekt.graphics.g2d.SpriteCache -import com.littlekt.graphics.webgpu.* import com.littlekt.util.viewport.ExtendViewport +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * Load and render an entire world of LDtk. @@ -22,31 +27,28 @@ class LDtkTileMapCacheExample(context: Context) : ContextListener(context) { val mapLoader = resourcesVfs["ldtk/sample-1.0.ldtk"].readLDtkMapLoader() val world = mapLoader.loadMap() - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val cache = SpriteCache(device, preferredFormat) world.addToCache(cache, scale = 1 / 8f) val viewport = ExtendViewport(30, 16) val camera = viewport.camera - val bgColor = - if (preferredFormat.srgb) world.defaultLevelBackgroundColor.toLinear() - else world.defaultLevelBackgroundColor + val bgColor = world.defaultLevelBackgroundColor onResize { width, height -> viewport.update(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -54,18 +56,18 @@ class LDtkTileMapCacheExample(context: Context) : ContextListener(context) { onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) logger.info { "getCurrentTexture status=$status" } return@onUpdate @@ -83,14 +85,13 @@ class LDtkTileMapCacheExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = bgColor + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = bgColor.toWebGPUColor() ) ) ) @@ -103,14 +104,13 @@ class LDtkTileMapCacheExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/LDtkTileMapExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/LDtkTileMapExample.kt index 1b334740e..03e094668 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/LDtkTileMapExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/LDtkTileMapExample.kt @@ -5,8 +5,13 @@ import com.littlekt.ContextListener import com.littlekt.file.vfs.readLDtkMapLoader import com.littlekt.graphics.g2d.SpriteBatch import com.littlekt.graphics.g2d.use -import com.littlekt.graphics.webgpu.* import com.littlekt.util.viewport.ExtendViewport +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * Load and render an LDtk map. @@ -26,30 +31,27 @@ class LDtkTileMapExample(context: Context) : ContextListener(context) { // we can load additional levels by doing: // mapLoader.loadLevel(levelIdx) val world = mapLoader.loadMap() - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat, size = 400) val viewport = ExtendViewport(270, 135) val camera = viewport.camera - val bgColor = - if (preferredFormat.srgb) world.defaultLevelBackgroundColor.toLinear() - else world.defaultLevelBackgroundColor + val bgColor = world.defaultLevelBackgroundColor onResize { width, height -> viewport.update(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -57,13 +59,13 @@ class LDtkTileMapExample(context: Context) : ContextListener(context) { onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -80,14 +82,13 @@ class LDtkTileMapExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = bgColor + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = bgColor.toWebGPUColor() ) ) ) @@ -101,14 +102,13 @@ class LDtkTileMapExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/MultipleTexturesExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/MultipleTexturesExample.kt index 200779404..c3da8d11d 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/MultipleTexturesExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/MultipleTexturesExample.kt @@ -6,7 +6,12 @@ import com.littlekt.file.vfs.readTexture import com.littlekt.graphics.Color import com.littlekt.graphics.OrthographicCamera import com.littlekt.graphics.g2d.SpriteBatch -import com.littlekt.graphics.webgpu.* +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * An example using a [SpriteBatch] to render multiple textures. @@ -22,14 +27,13 @@ class MultipleTexturesExample(context: Context) : ContextListener(context) { val logoTexture = resourcesVfs["logo.png"].readTexture() val pikaTexture = resourcesVfs["pika.png"].readTexture() - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat) @@ -41,10 +45,10 @@ class MultipleTexturesExample(context: Context) : ContextListener(context) { camera.ortho(width, height) camera.position.x = 0f graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -52,13 +56,13 @@ class MultipleTexturesExample(context: Context) : ContextListener(context) { onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -75,16 +79,13 @@ class MultipleTexturesExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ) ) @@ -100,14 +101,13 @@ class MultipleTexturesExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt index ea4e0c348..2f4f8096c 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/RenderSpriteBatchAndMultipleShadersExample.kt @@ -9,7 +9,7 @@ import com.littlekt.graphics.g2d.SpriteBatch import com.littlekt.graphics.shader.SpriteShader import io.ygdrasil.wgpu.BindGroup import io.ygdrasil.wgpu.BindGroupDescriptor -import io.ygdrasil.wgpu.BindGroupDescriptor.BindGroupEntry +import io.ygdrasil.wgpu.BindGroupDescriptor.* import io.ygdrasil.wgpu.BindGroupLayoutDescriptor import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.SamplerBindingLayout @@ -21,6 +21,7 @@ import io.ygdrasil.wgpu.RenderPassDescriptor import io.ygdrasil.wgpu.RenderPassEncoder import io.ygdrasil.wgpu.ShaderStage import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus import io.ygdrasil.wgpu.TextureUsage /** @@ -76,14 +77,14 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList layout = listOf( BindGroupLayoutDescriptor( - listOf(Entry(0, ShaderStage.vertex, Entry.BufferBindingLayout())) + listOf(Entry(0, setOf(ShaderStage.vertex), Entry.BufferBindingLayout())) ), BindGroupLayoutDescriptor( listOf( - Entry(0, ShaderStage.fragment, + Entry(0, setOf(ShaderStage.fragment), TextureBindingLayout() ), - Entry(1, ShaderStage.fragment, + Entry(1, setOf(ShaderStage.fragment), SamplerBindingLayout() ) ) @@ -106,7 +107,10 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList device.createBindGroup( BindGroupDescriptor( layouts[1], - listOf(BindGroupEntry(0, texture.view), BindGroupEntry(1, texture.sampler)) + listOf( + BindGroupEntry(0, TextureViewBinding(texture.view)), + BindGroupEntry(1, SamplerBinding(texture.sampler)) + ) ) ) ) @@ -130,15 +134,14 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList val logoTexture = resourcesVfs["logo.png"].readTexture() val pikaTexture = resourcesVfs["pika.png"].readTexture() - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat val coloredShader = ColorShader(device) graphics.configureSurface( - TextureUsage.renderAttachment, + setOf(TextureUsage.renderAttachment), preferredFormat, PresentMode.fifo, - surfaceCapabilities.alphaModes[0] + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat) @@ -154,23 +157,23 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList far = 1f ) graphics.configureSurface( - TextureUsage.renderAttachment, + setOf(TextureUsage.renderAttachment), preferredFormat, PresentMode.fifo, - surfaceCapabilities.alphaModes[0] + graphics.surface.supportedAlphaMode.first() ) } onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -181,7 +184,7 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList return@onUpdate } } - val frame = surfaceTexture.createView() + val frame = surfaceTexture.texture.createView() val commandEncoder = device.createCommandEncoder() val renderPassEncoder = @@ -192,7 +195,7 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList view = frame, loadOp = LoadOp.clear, storeOp = StoreOp.store, - clearValue = Color.DARK_GRAY.toLinear() + clearValue = Color.DARK_GRAY.toLinear().toWebGPUColor() ) ) ) @@ -215,7 +218,7 @@ class RenderSpriteBatchAndMultipleShadersExample(context: Context) : ContextList commandBuffer.close() commandEncoder.close() frame.close() - surfaceTexture.close() + surfaceTexture.texture.close() } onRelease { diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/RenderTargetExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/RenderTargetExample.kt index 82087658e..6055c55cf 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/RenderTargetExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/RenderTargetExample.kt @@ -6,7 +6,13 @@ import com.littlekt.file.vfs.readTexture import com.littlekt.graphics.Color import com.littlekt.graphics.EmptyTexture import com.littlekt.graphics.g2d.SpriteBatch -import com.littlekt.graphics.webgpu.* +import io.ygdrasil.wgpu.CommandEncoderDescriptor +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * An example of rendering to a texture. @@ -22,37 +28,36 @@ class RenderTargetExample(context: Context) : ContextListener(context) { val icon = resourcesVfs["icon_16x16.png"].readTexture() val device = graphics.device - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat val target = EmptyTexture(device, preferredFormat, 256, 256) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat) onResize { _, _ -> graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } onUpdate { dt -> val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -66,18 +71,16 @@ class RenderTargetExample(context: Context) : ContextListener(context) { val swapChainTexture = checkNotNull(surfaceTexture.texture) val frame = swapChainTexture.createView() - val commandEncoder = device.createCommandEncoder("scenegraph command encoder") + val commandEncoder = device.createCommandEncoder(CommandEncoderDescriptor("scenegraph command encoder")) val renderTargetRenderPass = commandEncoder.beginRenderPass( RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = target.view, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = - if (preferredFormat.srgb) Color.YELLOW.toLinear() - else Color.YELLOW + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.YELLOW.toWebGPUColor() ) ), label = "Surface render pass" @@ -93,13 +96,11 @@ class RenderTargetExample(context: Context) : ContextListener(context) { commandEncoder.beginRenderPass( RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ), label = "Surface render pass" @@ -118,15 +119,13 @@ class RenderTargetExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - renderTargetRenderPass.release() - surfaceRenderPass.release() - commandBuffer.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { batch.release() } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/RotatingCubeExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/RotatingCubeExample.kt index 0d6c6af5b..77cc61982 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/RotatingCubeExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/RotatingCubeExample.kt @@ -3,11 +3,39 @@ package com.littlekt.examples import com.littlekt.Context import com.littlekt.ContextListener import com.littlekt.file.FloatBuffer +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.Color +import com.littlekt.graphics.createGPUFloatBuffer import com.littlekt.math.Mat4 import com.littlekt.math.geom.radians import com.littlekt.util.now +import io.ygdrasil.wgpu.BindGroupDescriptor +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor import io.ygdrasil.wgpu.BufferUsage +import io.ygdrasil.wgpu.ColorWriteMask +import io.ygdrasil.wgpu.CompareFunction +import io.ygdrasil.wgpu.CompositeAlphaMode +import io.ygdrasil.wgpu.CullMode +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PipelineLayoutDescriptor +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.PrimitiveTopology +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor.* +import io.ygdrasil.wgpu.RenderPipelineDescriptor.VertexState.VertexBufferLayout +import io.ygdrasil.wgpu.RenderPipelineDescriptor.VertexState.VertexBufferLayout.VertexAttribute +import io.ygdrasil.wgpu.ShaderModuleDescriptor +import io.ygdrasil.wgpu.ShaderStage +import io.ygdrasil.wgpu.Size3D +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceConfiguration +import io.ygdrasil.wgpu.TextureDescriptor +import io.ygdrasil.wgpu.TextureDimension +import io.ygdrasil.wgpu.TextureFormat +import io.ygdrasil.wgpu.TextureUsage +import io.ygdrasil.wgpu.VertexFormat +import io.ygdrasil.wgpu.VertexStepMode import kotlin.math.cos import kotlin.math.sin @@ -427,13 +455,12 @@ class RotatingCubeExample(context: Context) : ContextListener(context) { override suspend fun Context.start() { addStatsHandler() val device = graphics.device - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - AlphaMode.OPAQUE + PresentMode.fifo, + CompositeAlphaMode.opaque ) val projMatrix = @@ -450,84 +477,93 @@ class RotatingCubeExample(context: Context) : ContextListener(context) { } val vertexBuffer = - device.createGPUFloatBuffer("cube vbo", cubeVertexArray, BufferUsage.VERTEX) + device.createGPUFloatBuffer("cube vbo", cubeVertexArray, setOf(BufferUsage.vertex)) val matrixBuffer = device.createGPUFloatBuffer( "mvp buffer", modelViewProjMatrix.data, - BufferUsage.uniform or BufferUsage.copydst + setOf(BufferUsage.uniform, BufferUsage.copydst) ) - val shader = device.createShaderModule(shaderSrc) + val shader = device.createShaderModule(ShaderModuleDescriptor(shaderSrc)) val bindGroupLayout = device.createBindGroupLayout( BindGroupLayoutDescriptor( - BindGroupLayoutEntry(0, ShaderStage.VERTEX, BufferBindingLayout()) + listOf( + BindGroupLayoutDescriptor.Entry( + 0, setOf(ShaderStage.vertex), + BindGroupLayoutDescriptor.Entry.BufferBindingLayout() + ) + ) ) ) val bindGroup = device.createBindGroup( - BindGroupDescriptor(bindGroupLayout, BindGroupEntry(0, BufferBinding(matrixBuffer))) + BindGroupDescriptor( + bindGroupLayout, listOf(BindGroupDescriptor.BindGroupEntry( + 0, + BindGroupDescriptor.BufferBinding(matrixBuffer) + )) + ) ) - val pipelineLayout = device.createPipelineLayout(PipelineLayoutDescriptor(bindGroupLayout)) + val pipelineLayout = device.createPipelineLayout(PipelineLayoutDescriptor(listOf(bindGroupLayout))) val renderPipeline = device.createRenderPipeline( RenderPipelineDescriptor( layout = pipelineLayout, vertex = - VertexState( - module = shader, - entryPoint = "vs_main", - buffer = - WebGPUVertexBufferLayout( - arrayStride = cubeVertexSize, - stepMode = VertexStepMode.VERTEX, - attributes = - listOf( - WebGPUVertexAttribute( - VertexFormat.FLOAT32x4, - cubePositionOffset, - 0 - ), - WebGPUVertexAttribute( - VertexFormat.FLOAT32x2, - cubeUVOffset, - 1 - ) - ) - ) - ), - fragment = - FragmentState( - module = shader, - entryPoint = "fs_main", - target = - ColorTargetState( - preferredFormat, - BlendState.Opaque, - ColorWriteMask.ALL + VertexState( + module = shader, + entryPoint = "vs_main", + buffers = listOf( + VertexBufferLayout( + arrayStride = cubeVertexSize, + stepMode = VertexStepMode.vertex, + attributes = + listOf( + VertexAttribute( + VertexFormat.float32x4, + cubePositionOffset, + 0 + ), + VertexAttribute( + VertexFormat.float32x2, + cubeUVOffset, + 1 ) - ), + ) + ) + ) + ), + fragment = FragmentState( + module = shader, + entryPoint = "fs_main", + targets = listOf( + FragmentState.ColorTargetState( + preferredFormat, + ColorWriteMask.all, + BlendStates.Opaque, + ) + ) + + ), primitive = - PrimitiveState(PrimitiveTopology.TRIANGLE_LIST, cullMode = CullMode.BACK), + PrimitiveState(PrimitiveTopology.triangleList, cullMode = CullMode.back), depthStencil = - DepthStencilState( - format = TextureFormat.DEPTH24_PLUS, - true, - CompareFunction.LESS - ), - multisample = MultisampleState(1, 0xFFFFFFF, false) + DepthStencilState( + format = TextureFormat.depth24plus, + true, + CompareFunction.less + ), + multisample = MultisampleState(1, 268435455u, false) ) ) var depthTexture = device.createTexture( TextureDescriptor( - Extent3D(graphics.width, graphics.height, 1), - 1, - 1, - TextureDimension.D2, - TextureFormat.DEPTH24_PLUS, - TextureUsage.RENDER_ATTACHMENT + Size3D(graphics.width, graphics.height), + TextureFormat.depth24plus, + setOf(TextureUsage.renderAttachment) ) ) var depthTextureView = depthTexture.createView() @@ -537,57 +573,49 @@ class RotatingCubeExample(context: Context) : ContextListener(context) { val surfaceTexture = graphics.surface.getCurrentTexture() val valid = surfaceTexture.isValid(context) { - depthTexture.release() - depthTextureView.release() + depthTexture.close() + depthTextureView.close() depthTexture = device.createTexture( TextureDescriptor( - Extent3D(graphics.width, graphics.height, 1), - 1, - 1, - TextureDimension.D2, - TextureFormat.DEPTH24_PLUS, - TextureUsage.RENDER_ATTACHMENT + Size3D(graphics.width, graphics.height), + TextureFormat.depth24plus, + setOf(TextureUsage.renderAttachment), ) ) depthTextureView = depthTexture.createView() SurfaceConfiguration( device, - TextureUsage.RENDER_ATTACHMENT, preferredFormat, - PresentMode.FIFO, - AlphaMode.OPAQUE, - graphics.width, - graphics.height + setOf(TextureUsage.renderAttachment), + alphaMode = CompositeAlphaMode.opaque ) } if (!valid) return@onUpdate updateMvp() - queue.writeBuffer(matrixBuffer, modelViewProjMatrix.toBuffer(matBuffer)) + queue.writeBuffer(matrixBuffer, 0L, modelViewProjMatrix.toBuffer(matBuffer).toArray()) val swapChainTexture = checkNotNull(surfaceTexture.texture) val frame = swapChainTexture.createView() val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = - RenderPassDescriptor( - listOf( - RenderPassColorAttachmentDescriptor( - view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = Color.BLACK - ) - ), - depthStencilAttachment = - RenderPassDepthStencilAttachmentDescriptor( - depthTextureView, - depthClearValue = 1f, - depthLoadOp = LoadOp.CLEAR, - depthStoreOp = StoreOp.STORE - ) + RenderPassDescriptor( + listOf( + RenderPassDescriptor.ColorAttachment( + view = frame, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.BLACK.toWebGPUColor() + ) + ), + depthStencilAttachment = RenderPassDescriptor.DepthStencilAttachment( + depthTextureView, + depthClearValue = 1f, + depthLoadOp = LoadOp.clear, + depthStoreOp = StoreOp.store ) + ) ) renderPassEncoder.setPipeline(renderPipeline) renderPassEncoder.setBindGroup(0, bindGroup) @@ -597,25 +625,24 @@ class RotatingCubeExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - queue.submit(commandBuffer) + queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { - renderPipeline.release() - pipelineLayout.release() - bindGroup.release() - bindGroupLayout.release() - matrixBuffer.release() - depthTexture.release() - depthTextureView.release() - shader.release() + renderPipeline.close() + pipelineLayout.close() + bindGroup.close() + bindGroupLayout.close() + matrixBuffer.close() + depthTexture.close() + depthTextureView.close() + shader.close() } } } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/SimpleCameraExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/SimpleCameraExample.kt index 166952430..fd55e6532 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/SimpleCameraExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/SimpleCameraExample.kt @@ -5,8 +5,13 @@ import com.littlekt.ContextListener import com.littlekt.file.vfs.readTexture import com.littlekt.graphics.Color import com.littlekt.graphics.g2d.SpriteBatch -import com.littlekt.graphics.webgpu.* import com.littlekt.util.viewport.ExtendViewport +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * An example using a simple Orthographic camera to move around a texture. @@ -22,14 +27,13 @@ class SimpleCameraExample(context: Context) : ContextListener(context) { val device = graphics.device val logoTexture = resourcesVfs["logo.png"].readTexture() - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat) @@ -39,10 +43,10 @@ class SimpleCameraExample(context: Context) : ContextListener(context) { onResize { width, height -> viewport.update(width, height, true) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -50,16 +54,18 @@ class SimpleCameraExample(context: Context) : ContextListener(context) { onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } + else -> { // fatal logger.fatal { "getCurrentTexture status=$status" } @@ -73,19 +79,16 @@ class SimpleCameraExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = - RenderPassDescriptor( - listOf( - RenderPassColorAttachmentDescriptor( - view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY - ) + RenderPassDescriptor( + listOf( + RenderPassDescriptor.ColorAttachment( + view = frame, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ) + ) ) camera.update() batch.begin() @@ -96,14 +99,13 @@ class SimpleCameraExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/SpriteBatchMultiPassExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/SpriteBatchMultiPassExample.kt index 87c5ef6dd..db71a2eed 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/SpriteBatchMultiPassExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/SpriteBatchMultiPassExample.kt @@ -10,8 +10,13 @@ import com.littlekt.graphics.g2d.SpriteBatch import com.littlekt.graphics.g2d.font.BitmapFont import com.littlekt.graphics.g2d.tilemap.ldtk.LDtkWorld import com.littlekt.graphics.g2d.use -import com.littlekt.graphics.webgpu.* import com.littlekt.util.viewport.ExtendViewport +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * @author Colton Daily @@ -29,14 +34,13 @@ class SpriteBatchMultiPassExample(context: Context) : ContextListener(context) { val device = graphics.device - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat) @@ -49,10 +53,10 @@ class SpriteBatchMultiPassExample(context: Context) : ContextListener(context) { viewport.update(width, height) uiViewport.update(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -66,13 +70,13 @@ class SpriteBatchMultiPassExample(context: Context) : ContextListener(context) { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -89,16 +93,13 @@ class SpriteBatchMultiPassExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue =Color.DARK_GRAY.toWebGPUColor() ) ) ) @@ -115,14 +116,13 @@ class SpriteBatchMultiPassExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { batch.release() } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/SpriteCacheQuadsExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/SpriteCacheQuadsExample.kt index 8d085fe08..5618dfb6c 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/SpriteCacheQuadsExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/SpriteCacheQuadsExample.kt @@ -5,8 +5,13 @@ import com.littlekt.ContextListener import com.littlekt.graphics.Color import com.littlekt.graphics.OrthographicCamera import com.littlekt.graphics.g2d.SpriteCache -import com.littlekt.graphics.webgpu.* import com.littlekt.resources.Textures +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage import kotlin.random.Random /** @@ -22,7 +27,6 @@ class SpriteCacheQuadsExample(context: Context) : ContextListener(context) { addCloseOnEsc() val device = graphics.device val queue = device.queue - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat val camera = OrthographicCamera() @@ -41,19 +45,19 @@ class SpriteCacheQuadsExample(context: Context) : ContextListener(context) { } } graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) onResize { width, height -> camera.ortho(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -61,13 +65,13 @@ class SpriteCacheQuadsExample(context: Context) : ContextListener(context) { onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -86,16 +90,13 @@ class SpriteCacheQuadsExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ) ) @@ -105,14 +106,13 @@ class SpriteCacheQuadsExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - queue.submit(commandBuffer) + queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { cache.release() } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureBlendsExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureBlendsExample.kt index 787c1e680..f153dcb29 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureBlendsExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureBlendsExample.kt @@ -25,10 +25,10 @@ class TextureBlendsExample(context: Context) : ContextListener(context) { val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat) @@ -44,23 +44,23 @@ class TextureBlendsExample(context: Context) : ContextListener(context) { far = 1f ) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -80,10 +80,10 @@ class TextureBlendsExample(context: Context) : ContextListener(context) { desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, clearColor = Color.DARK_GRAY ) ) diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt index 2b093b517..ccc80d0bb 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt @@ -73,7 +73,7 @@ class TextureExample(context: Context) : ContextListener(context) { val indices = ShortBuffer(shortArrayOf(0, 1, 2, 0, 2, 3)) val image = resourcesVfs["logo.png"].readPixmap() val device = graphics.device - val vbo = device.createGPUFloatBuffer("vbo", vertices.toArray(), BufferUsage.VERTEX) + val vbo = device.createGPUFloatBuffer("vbo", vertices.toArray(), BufferUsage.vertex) val ibo = device.createGPUShortBuffer("ibo", indices.toArray(), BufferUsage.INDEX) val shader = device.createShaderModule(textureShader) val surfaceCapabilities = graphics.surfaceCapabilities @@ -147,37 +147,37 @@ class TextureExample(context: Context) : ContextListener(context) { ColorTargetState( format = preferredFormat, blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.ALL + writeMask = ColorWriteMask.all ) ), - primitive = PrimitiveState(topology = PrimitiveTopology.TRIANGLE_LIST), + primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) logger.info { "getCurrentTexture status=$status" } return@onUpdate @@ -198,10 +198,10 @@ class TextureExample(context: Context) : ContextListener(context) { desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, clearColor = if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() else Color.DARK_GRAY diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt index 108b14999..700032a93 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt @@ -106,7 +106,7 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { val vertexGroupLayout = device.createBindGroupLayout( BindGroupLayoutDescriptor( - listOf(BindGroupLayoutEntry(0, ShaderStage.VERTEX, BufferBindingLayout())) + listOf(BindGroupLayoutEntry(0, ShaderStage.vertex, BufferBindingLayout())) ) ) val vertexBindGroup = @@ -154,29 +154,29 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { ColorTargetState( format = preferredFormat, blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.ALL + writeMask = ColorWriteMask.all ) ), - primitive = PrimitiveState(topology = PrimitiveTopology.TRIANGLE_LIST), + primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) onResize { width, height -> camera.ortho(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -184,13 +184,13 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -214,10 +214,10 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, clearColor = if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() else Color.DARK_GRAY diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt index 9566efdbe..3797f4c2a 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt @@ -133,37 +133,37 @@ class TextureMeshExample(context: Context) : ContextListener(context) { ColorTargetState( format = preferredFormat, blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.ALL + writeMask = ColorWriteMask.all ) ), - primitive = PrimitiveState(topology = PrimitiveTopology.TRIANGLE_LIST), + primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) logger.info { "getCurrentTexture status=$status" } return@onUpdate @@ -184,10 +184,10 @@ class TextureMeshExample(context: Context) : ContextListener(context) { desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, clearColor = if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() else Color.DARK_GRAY diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt index e6d5a462d..d8516b86a 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt @@ -71,7 +71,7 @@ class TextureViaCommandEncoderExample(context: Context) : ContextListener(contex // @formatter:on val image = resourcesVfs["pika.png"].readPixmap() val device = graphics.device - val vbo = device.createGPUFloatBuffer("vbo", vertices, BufferUsage.VERTEX) + val vbo = device.createGPUFloatBuffer("vbo", vertices, BufferUsage.vertex) val ibo = device.createGPUShortBuffer("ibo", indices, BufferUsage.INDEX) val shader = device.createShaderModule(textureShader) val surfaceCapabilities = graphics.surfaceCapabilities @@ -150,37 +150,37 @@ class TextureViaCommandEncoderExample(context: Context) : ContextListener(contex ColorTargetState( format = preferredFormat, blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.ALL + writeMask = ColorWriteMask.all ) ), - primitive = PrimitiveState(topology = PrimitiveTopology.TRIANGLE_LIST), + primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) logger.info { "getCurrentTexture status=$status" } return@onUpdate @@ -201,10 +201,10 @@ class TextureViaCommandEncoderExample(context: Context) : ContextListener(contex desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, clearColor = Color.CLEAR ) ) diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt index 6d26cfc70..4308422e9 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt @@ -124,7 +124,7 @@ class TiledMeshExample(context: Context) : ContextListener(context) { val vertexGroupLayout = device.createBindGroupLayout( BindGroupLayoutDescriptor( - listOf(BindGroupLayoutEntry(0, ShaderStage.VERTEX, BufferBindingLayout())) + listOf(BindGroupLayoutEntry(0, ShaderStage.vertex, BufferBindingLayout())) ) ) val vertexBindGroup = @@ -175,30 +175,30 @@ class TiledMeshExample(context: Context) : ContextListener(context) { ColorTargetState( format = preferredFormat, blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.ALL + writeMask = ColorWriteMask.all ) ), - primitive = PrimitiveState(topology = PrimitiveTopology.TRIANGLE_LIST), + primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) onResize { width, height -> camera.ortho(width, height) camera.translate(0f, height * 2f, 0f) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -206,13 +206,13 @@ class TiledMeshExample(context: Context) : ContextListener(context) { onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -236,10 +236,10 @@ class TiledMeshExample(context: Context) : ContextListener(context) { desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, clearColor = if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() else Color.DARK_GRAY diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapCacheExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapCacheExample.kt index 0789b86bd..c97557e20 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapCacheExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapCacheExample.kt @@ -26,10 +26,10 @@ class TiledTileMapCacheExample(context: Context) : ContextListener(context) { val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val cache = SpriteCache(device, preferredFormat) @@ -44,10 +44,10 @@ class TiledTileMapCacheExample(context: Context) : ContextListener(context) { onResize { width, height -> viewport.update(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -55,13 +55,13 @@ class TiledTileMapCacheExample(context: Context) : ContextListener(context) { onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -81,10 +81,10 @@ class TiledTileMapCacheExample(context: Context) : ContextListener(context) { desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, clearColor = bgColor ) ) diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapExample.kt index 1020dfce5..b19c08e02 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapExample.kt @@ -28,10 +28,10 @@ class TiledTileMapExample(context: Context) : ContextListener(context) { val preferredFormat = graphics.preferredFormat graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) val batch = SpriteBatch(device, graphics, preferredFormat, 2000) @@ -46,10 +46,10 @@ class TiledTileMapExample(context: Context) : ContextListener(context) { onResize { width, height -> viewport.update(width, height) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) } @@ -57,13 +57,13 @@ class TiledTileMapExample(context: Context) : ContextListener(context) { onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() logger.info { "getCurrentTexture status=$status" } return@onUpdate } @@ -83,10 +83,10 @@ class TiledTileMapExample(context: Context) : ContextListener(context) { desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, clearColor = bgColor ) ) diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TriangleExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TriangleExample.kt index 25d479943..73f68ff36 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TriangleExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TriangleExample.kt @@ -2,7 +2,19 @@ package com.littlekt.examples import com.littlekt.Context import com.littlekt.ContextListener +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.Color +import io.ygdrasil.wgpu.ColorWriteMask +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PipelineLayoutDescriptor +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.PrimitiveTopology +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.ShaderModuleDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * An example rendering a simple triangle in pure WebGPU. @@ -32,53 +44,53 @@ class TriangleExample(context: Context) : ContextListener(context) { addStatsHandler() val device = graphics.device val queue = device.queue - val shader = device.createShaderModule(shaderSrc) + val shader = device.createShaderModule(ShaderModuleDescriptor(shaderSrc)) val pipelineLayout = device.createPipelineLayout(PipelineLayoutDescriptor()) - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat val renderPipelineDesc = RenderPipelineDescriptor( layout = pipelineLayout, - vertex = VertexState(module = shader, entryPoint = "vs_main"), + vertex = RenderPipelineDescriptor.VertexState(module = shader, entryPoint = "vs_main"), fragment = - FragmentState( - module = shader, - entryPoint = "fs_main", - target = - ColorTargetState( - format = preferredFormat, - blendState = BlendState.Opaque, - writeMask = ColorWriteMask.ALL - ) - ), - primitive = PrimitiveState(topology = PrimitiveTopology.TRIANGLE_LIST), + RenderPipelineDescriptor.FragmentState( + module = shader, + entryPoint = "fs_main", + targets = listOf( + RenderPipelineDescriptor.FragmentState.ColorTargetState( + format = preferredFormat, + blend = BlendStates.Opaque, + writeMask = ColorWriteMask.all + ) + ) + ), + primitive = RenderPipelineDescriptor.PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = - MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) + RenderPipelineDescriptor.MultisampleState(count = 1, mask = 0xFFFFFFFu, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) onUpdate { val surfaceTexture = graphics.surface.getCurrentTexture() when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() graphics.configureSurface( - TextureUsage.RENDER_ATTACHMENT, + setOf(TextureUsage.renderAttachment), preferredFormat, - PresentMode.FIFO, - surfaceCapabilities.alphaModes[0] + PresentMode.fifo, + graphics.surface.supportedAlphaMode.first() ) logger.info { "getCurrentTexture status=$status" } return@onUpdate @@ -95,14 +107,13 @@ class TriangleExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = frame, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = Color.CLEAR + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.CLEAR.toWebGPUColor() ) ) ) @@ -113,20 +124,19 @@ class TriangleExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - queue.submit(commandBuffer) + queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - texture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + texture.close() } onRelease { - renderPipeline.release() - pipelineLayout.release() - shader.release() + renderPipeline.close() + pipelineLayout.close() + shader.close() } } } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/utils.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/utils.kt index ba91a3475..ac8dfc256 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/utils.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/utils.kt @@ -6,17 +6,18 @@ import com.littlekt.input.Key import com.littlekt.util.milliseconds import io.ygdrasil.wgpu.SurfaceTexture import io.ygdrasil.wgpu.SurfaceConfiguration +import io.ygdrasil.wgpu.SurfaceTextureStatus fun SurfaceTexture.isValid(context: Context, onConfigure: () -> SurfaceConfiguration): Boolean { val surfaceTexture = this when (val status = surfaceTexture.status) { - TextureStatus.SUCCESS -> { + SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } - TextureStatus.TIMEOUT, - TextureStatus.OUTDATED, - TextureStatus.LOST -> { - surfaceTexture.texture?.release() + SurfaceTextureStatus.timeout, + SurfaceTextureStatus.outdated, + SurfaceTextureStatus.lost -> { + surfaceTexture.texture.close() context.graphics.surface.configure(onConfigure()) context.logger.info { "getCurrentTexture status=$status" } return false diff --git a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/SceneGraph.kt b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/SceneGraph.kt index ba001ebbc..2a74ea4fc 100644 --- a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/SceneGraph.kt +++ b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/SceneGraph.kt @@ -7,6 +7,7 @@ import com.littlekt.graph.node.annotation.SceneGraphDslMarker import com.littlekt.graph.node.render.Material import com.littlekt.graph.node.resource.InputEvent import com.littlekt.graph.node.ui.Control +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.OrthographicCamera import com.littlekt.graphics.g2d.Batch import com.littlekt.graphics.g2d.SpriteBatch @@ -21,6 +22,8 @@ import com.littlekt.util.milliseconds import com.littlekt.util.seconds import com.littlekt.util.viewport.ScreenViewport import com.littlekt.util.viewport.Viewport +import io.ygdrasil.wgpu.CommandEncoder +import io.ygdrasil.wgpu.RenderPassDescriptor import kotlin.contracts.ExperimentalContracts import kotlin.contracts.InvocationKind import kotlin.contracts.contract @@ -375,7 +378,7 @@ open class SceneGraph( } protected fun flush() { - batch.setBlendState(BlendState.NonPreMultiplied) + batch.setBlendState(BlendStates.NonPreMultiplied) batch.useDefaultShader() commandEncoder = null diff --git a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/CanvasLayer.kt b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/CanvasLayer.kt index 0b96bfc37..6039e0ab6 100644 --- a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/CanvasLayer.kt +++ b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/CanvasLayer.kt @@ -18,6 +18,10 @@ import com.littlekt.math.MutableVec2f import com.littlekt.math.MutableVec3f import com.littlekt.util.viewport.ScreenViewport import com.littlekt.util.viewport.Viewport +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.RenderPassEncoder +import io.ygdrasil.wgpu.StoreOp import kotlin.contracts.ExperimentalContracts import kotlin.contracts.InvocationKind import kotlin.contracts.contract @@ -265,11 +269,11 @@ open class CanvasLayer : Node() { RenderPassDescriptor( colorAttachments = listOf( - RenderPassColorAttachmentDescriptor( + RenderPassDescriptor.ColorAttachment( view = fbo.view, - loadOp = LoadOp.CLEAR, - storeOp = StoreOp.STORE, - clearColor = clearColor + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = clearColor.toWebGPUColor() ) ), label = "Canvas Layer Pass" @@ -422,7 +426,6 @@ open class CanvasLayer : Node() { } renderPasses.forEach { it.end() - it.release() } } renderPasses.clear() @@ -433,7 +436,6 @@ open class CanvasLayer : Node() { onSizeChanged.clear() fbo.release() _spriteShader?.release() - renderPasses.forEach { it.release() } } /** @@ -464,19 +466,19 @@ open class CanvasLayer : Node() { * previous render pass. This assumes multiple render passes in a single command pass. Hence, * the default descriptor will automatically default the previous render passes * [RenderPassDescriptor] while also setting the color attachments - * [RenderPassColorAttachmentDescriptor.loadOp] to [LoadOp.LOAD]. You are responsible for + * [RenderPassDescriptor.ColorAttachment.loadOp] to [LoadOp.load]. You are responsible for * calling [popAndEndRenderPass] with this new render pass, as this a helper method to create * one. * * @param label a label for the render pass - * @param descriptor the default descriptor assumes the color attachments to use [LoadOp.LOAD]. + * @param descriptor the default descriptor assumes the color attachments to use [LoadOp.load]. * @return the newly created [RenderPassEncoder]. */ fun pushRenderPass( label: String? = null, descriptor: RenderPassDescriptor = run { val initDesc = renderPassDescriptor - val colorAttachments = initDesc.colorAttachments.map { it.copy(loadOp = LoadOp.LOAD) } + val colorAttachments = initDesc.colorAttachments.map { it.copy(loadOp = LoadOp.load) } initDesc.copy(colorAttachments = colorAttachments, label = label) } ) { @@ -497,7 +499,6 @@ open class CanvasLayer : Node() { if (renderPasses.isNotEmpty()) { val removed = renderPasses.removeLast() removed.end() - removed.release() renderPassOrNull = null if (renderPasses.isNotEmpty()) { renderPassOrNull = renderPasses.last() diff --git a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/Node.kt b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/Node.kt index e19d208a1..40d708579 100644 --- a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/Node.kt +++ b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/Node.kt @@ -11,6 +11,7 @@ import com.littlekt.graphics.Camera import com.littlekt.graphics.g2d.Batch import com.littlekt.graphics.g2d.shape.ShapeRenderer import com.littlekt.util.datastructure.fastForEach +import io.ygdrasil.wgpu.RenderPassEncoder import kotlin.contracts.ExperimentalContracts import kotlin.contracts.InvocationKind import kotlin.contracts.contract diff --git a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/render/Material.kt b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/render/Material.kt index a8d2d0063..f41d44d0e 100644 --- a/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/render/Material.kt +++ b/scene-graph/src/commonMain/kotlin/com/littlekt/graph/node/render/Material.kt @@ -1,8 +1,9 @@ package com.littlekt.graph.node.render import com.littlekt.Releasable +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.shader.Shader -import com.littlekt.graphics.webgpu.BlendState +import io.ygdrasil.wgpu.RenderPipelineDescriptor /** * @author Colton Daily @@ -13,7 +14,7 @@ open class Material( val shader: Shader? = null, ) : Releasable { /** The [BlendState] this material uses. Defaults to [BlendState.NonPreMultiplied]. */ - var blendMode: BlendState = BlendState.NonPreMultiplied + var blendMode: RenderPipelineDescriptor.FragmentState.ColorTargetState.BlendState = BlendStates.NonPreMultiplied /** Can be used to set shader uniforms and such right before rendering. */ open fun onPreRender() = Unit From cde35ec6abae17f717b5f389b2a28c4205688a1c Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Fri, 27 Sep 2024 12:59:24 +0200 Subject: [PATCH 18/22] Update texture handling to comply with new API requirements Replaced deprecated API calls with the latest standardized methods across texture handling and rendering processes. This includes changes to TextureUsage enums, buffer creation functions, and various layout descriptors to ensure compatibility and optimize performance. --- .../com/littlekt/graphics/EmptyTexture.kt | 2 +- .../kotlin/com/littlekt/graphics/WebgpuExt.kt | 15 ++ .../littlekt/examples/TextureBlendsExample.kt | 25 +-- .../com/littlekt/examples/TextureExample.kt | 181 +++++++++++------- .../examples/TextureMeshAndCameraExample.kt | 100 ++++++---- .../littlekt/examples/TextureMeshExample.kt | 129 ++++++++----- .../TextureViaCommandEncoderExample.kt | 161 ++++++++++------ .../com/littlekt/examples/TiledMeshExample.kt | 101 ++++++---- .../examples/TiledTileMapCacheExample.kt | 27 ++- .../littlekt/examples/TiledTileMapExample.kt | 27 ++- 10 files changed, 457 insertions(+), 311 deletions(-) diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt index 332599efc..b38806213 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/EmptyTexture.kt @@ -17,7 +17,7 @@ import io.ygdrasil.wgpu.Texture as WebGPUTexture /** * A [Texture] that doesn't contain any underlying raw image data, but instead, is intended to be * used in a render pass as an output. By default, the [textureDescriptor] uses - * `TextureUsage.TEXTURE or TextureUsage.renderAttachment` as usage. + * `TextureUsage.textureBinding or TextureUsage.renderAttachment` as usage. * * @param device the device for underlying GPU buffers creation * @param preferredFormat the preferred [TextureFormat] diff --git a/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt b/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt index cf84fe943..e26d37b9c 100644 --- a/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt +++ b/core/src/commonMain/kotlin/com/littlekt/graphics/WebgpuExt.kt @@ -41,6 +41,21 @@ fun Device.createGPUFloatBuffer(label: String, data: FloatArray, usages: Set): Buffer { + val buffer = createBuffer( + BufferDescriptor( + label = label, + size = data.size.toLong() * Byte.SIZE_BYTES, + usage = usages, + mappedAtCreation = true + ) + ) + buffer.mapFrom(data) + buffer.unmap() + + return buffer +} + object BlendStates { /** Standard alpha blending. */ val Alpha: BlendState diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureBlendsExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureBlendsExample.kt index f153dcb29..2af629dab 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureBlendsExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureBlendsExample.kt @@ -3,9 +3,15 @@ package com.littlekt.examples import com.littlekt.Context import com.littlekt.ContextListener import com.littlekt.file.vfs.readTexture +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.Color import com.littlekt.graphics.g2d.SpriteBatch -import com.littlekt.graphics.webgpu.* +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * An example showing drawing textures with different blending. @@ -21,7 +27,6 @@ class TextureBlendsExample(context: Context) : ContextListener(context) { val logoTexture = resourcesVfs["logo.png"].readTexture() val pikaTexture = resourcesVfs["pika.png"].readTexture() - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( @@ -77,14 +82,13 @@ class TextureBlendsExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( RenderPassDescriptor.ColorAttachment( view = frame, loadOp = LoadOp.clear, storeOp = StoreOp.store, - clearColor = Color.DARK_GRAY + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ) ) @@ -92,7 +96,7 @@ class TextureBlendsExample(context: Context) : ContextListener(context) { batch.begin() batch.draw(logoTexture, -graphics.width * 0.5f, 0f, scaleX = 0.1f, scaleY = 0.1f) batch.draw(pikaTexture, -graphics.width * 0.5f, -pikaTexture.height - 10f) - batch.setBlendState(BlendState.Darken) + batch.setBlendState(BlendStates.Darken) batch.draw(logoTexture, 0f, 0f, scaleX = 0.1f, scaleY = 0.1f) batch.draw(pikaTexture, 0f, -pikaTexture.height - 10f) batch.swapToPreviousBlendState() @@ -114,14 +118,13 @@ class TextureBlendsExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt index ccc80d0bb..aa17480a2 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureExample.kt @@ -5,7 +5,41 @@ import com.littlekt.ContextListener import com.littlekt.file.FloatBuffer import com.littlekt.file.ShortBuffer import com.littlekt.file.vfs.readPixmap +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.Color +import com.littlekt.graphics.createGPUFloatBuffer +import com.littlekt.graphics.createGPUShortBuffer +import io.ygdrasil.wgpu.BindGroupDescriptor +import io.ygdrasil.wgpu.BindGroupDescriptor.SamplerBinding +import io.ygdrasil.wgpu.BindGroupDescriptor.TextureViewBinding +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.SamplerBindingLayout +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.TextureBindingLayout +import io.ygdrasil.wgpu.BufferUsage +import io.ygdrasil.wgpu.ColorWriteMask +import io.ygdrasil.wgpu.ImageCopyTexture +import io.ygdrasil.wgpu.IndexFormat +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PipelineLayoutDescriptor +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.PrimitiveTopology +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState +import io.ygdrasil.wgpu.RenderPipelineDescriptor.VertexState.VertexBufferLayout +import io.ygdrasil.wgpu.RenderPipelineDescriptor.VertexState.VertexBufferLayout.VertexAttribute +import io.ygdrasil.wgpu.SamplerDescriptor +import io.ygdrasil.wgpu.ShaderModuleDescriptor +import io.ygdrasil.wgpu.ShaderStage +import io.ygdrasil.wgpu.Size3D +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureDataLayout +import io.ygdrasil.wgpu.TextureDescriptor +import io.ygdrasil.wgpu.TextureFormat +import io.ygdrasil.wgpu.TextureUsage +import io.ygdrasil.wgpu.VertexFormat +import io.ygdrasil.wgpu.VertexStepMode /** * An example showing drawing a texture with pure WebGPU. @@ -73,30 +107,25 @@ class TextureExample(context: Context) : ContextListener(context) { val indices = ShortBuffer(shortArrayOf(0, 1, 2, 0, 2, 3)) val image = resourcesVfs["logo.png"].readPixmap() val device = graphics.device - val vbo = device.createGPUFloatBuffer("vbo", vertices.toArray(), BufferUsage.vertex) - val ibo = device.createGPUShortBuffer("ibo", indices.toArray(), BufferUsage.INDEX) - val shader = device.createShaderModule(textureShader) - val surfaceCapabilities = graphics.surfaceCapabilities + val vbo = device.createGPUFloatBuffer("vbo", vertices.toArray(), setOf(BufferUsage.vertex)) + val ibo = device.createGPUShortBuffer("ibo", indices.toArray(), setOf(BufferUsage.index)) + val shader = device.createShaderModule(ShaderModuleDescriptor(textureShader)) val preferredFormat = graphics.preferredFormat val texture = device.createTexture( TextureDescriptor( - Extent3D(image.width, image.height, 1), - 1, - 1, - TextureDimension.D2, - if (preferredFormat.srgb) TextureFormat.RGBA8_UNORM_SRGB - else TextureFormat.RGBA8_UNORM, - TextureUsage.COPY_DST or TextureUsage.TEXTURE + Size3D(image.width, image.height), + TextureFormat.rgba8unorm, + setOf(TextureUsage.copyDst, TextureUsage.textureBinding) ) ) val queue = device.queue queue.writeTexture( data = image.pixels.toArray(), - destination = TextureCopyView(texture), - layout = TextureDataLayout(image.width * 4, image.height), - copySize = Extent3D(image.width, image.height, 1) + destination = ImageCopyTexture(texture), + dataLayout = TextureDataLayout((image.width * 4).toLong(), image.height), + size = Size3D(image.width, image.height) ) val sampler = device.createSampler(SamplerDescriptor()) @@ -105,55 +134,65 @@ class TextureExample(context: Context) : ContextListener(context) { device.createBindGroupLayout( BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry(0, ShaderStage.FRAGMENT, TextureBindingLayout()), - BindGroupLayoutEntry(1, ShaderStage.FRAGMENT, SamplerBindingLayout()) + BindGroupLayoutDescriptor.Entry( + 0, setOf(ShaderStage.fragment), TextureBindingLayout() + ), + BindGroupLayoutDescriptor.Entry( + 1, setOf(ShaderStage.fragment), + SamplerBindingLayout() + ) ) ) ) val bindGroup = device.createBindGroup( - desc = - BindGroupDescriptor( - bindGroupLayout, - listOf(BindGroupEntry(0, textureView), BindGroupEntry(1, sampler)) + BindGroupDescriptor( + bindGroupLayout, + listOf( + BindGroupDescriptor.BindGroupEntry(0, TextureViewBinding(textureView)), + BindGroupDescriptor.BindGroupEntry(1, SamplerBinding(sampler)) ) + ) ) - val pipelineLayout = device.createPipelineLayout(PipelineLayoutDescriptor(bindGroupLayout)) + val pipelineLayout = device.createPipelineLayout(PipelineLayoutDescriptor(listOf(bindGroupLayout))) val renderPipelineDesc = RenderPipelineDescriptor( layout = pipelineLayout, vertex = - VertexState( - module = shader, - entryPoint = "vs_main", - WebGPUVertexBufferLayout( + RenderPipelineDescriptor.VertexState( + module = shader, + entryPoint = "vs_main", + buffers = listOf( + VertexBufferLayout( 4L * Float.SIZE_BYTES, - VertexStepMode.VERTEX, listOf( - WebGPUVertexAttribute(VertexFormat.FLOAT32x2, 0, 0), - WebGPUVertexAttribute( - VertexFormat.FLOAT32x2, + VertexAttribute(VertexFormat.float32x2, 0, 0), + VertexAttribute( + VertexFormat.float32x2, 2L * Float.SIZE_BYTES, 1 ) - ) + ), + VertexStepMode.vertex, ) - ), + ) + ), fragment = - FragmentState( - module = shader, - entryPoint = "fs_main", - target = - ColorTargetState( - format = preferredFormat, - blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.all - ) - ), - primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), + FragmentState( + module = shader, + entryPoint = "fs_main", + targets = listOf( + FragmentState.ColorTargetState( + format = preferredFormat, + blend = BlendStates.NonPreMultiplied, + writeMask = ColorWriteMask.all + ) + ) + ), + primitive = RenderPipelineDescriptor.PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = - MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) + RenderPipelineDescriptor.MultisampleState(count = 1, mask = 0xFFFFFFFu, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( @@ -169,6 +208,7 @@ class TextureExample(context: Context) : ContextListener(context) { SurfaceTextureStatus.success -> { // all good, could check for `surfaceTexture.suboptimal` here. } + SurfaceTextureStatus.timeout, SurfaceTextureStatus.outdated, SurfaceTextureStatus.lost -> { @@ -182,6 +222,7 @@ class TextureExample(context: Context) : ContextListener(context) { logger.info { "getCurrentTexture status=$status" } return@onUpdate } + else -> { // fatal logger.fatal { "getCurrentTexture status=$status" } @@ -195,51 +236,47 @@ class TextureExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = - RenderPassDescriptor( - listOf( - RenderPassDescriptor.ColorAttachment( - view = frame, - loadOp = LoadOp.clear, - storeOp = StoreOp.store, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY - ) + RenderPassDescriptor( + listOf( + RenderPassDescriptor.ColorAttachment( + view = frame, + loadOp = LoadOp.clear, + storeOp = StoreOp.store, + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ) + ) ) renderPassEncoder.setPipeline(renderPipeline) renderPassEncoder.setBindGroup(0, bindGroup) renderPassEncoder.setVertexBuffer(0, vbo) - renderPassEncoder.setIndexBuffer(ibo, IndexFormat.UINT16) + renderPassEncoder.setIndexBuffer(ibo, IndexFormat.uint16) renderPassEncoder.drawIndexed(indices.capacity, 1) renderPassEncoder.end() val commandBuffer = commandEncoder.finish() - queue.submit(commandBuffer) + queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { - renderPipeline.release() - pipelineLayout.release() - bindGroup.release() - bindGroupLayout.release() - sampler.release() - textureView.release() - texture.release() - ibo.release() - vbo.release() - texture.release() - shader.release() + renderPipeline.close() + pipelineLayout.close() + bindGroup.close() + bindGroupLayout.close() + sampler.close() + textureView.close() + texture.close() + ibo.close() + vbo.close() + texture.close() + shader.close() } } } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt index 700032a93..40ce21495 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshAndCameraExample.kt @@ -4,11 +4,31 @@ import com.littlekt.Context import com.littlekt.ContextListener import com.littlekt.file.FloatBuffer import com.littlekt.file.vfs.readTexture +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.Color import com.littlekt.graphics.OrthographicCamera import com.littlekt.graphics.createGPUFloatBuffer import com.littlekt.graphics.textureIndexedMesh +import io.ygdrasil.wgpu.BindGroupDescriptor +import io.ygdrasil.wgpu.BindGroupDescriptor.* +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.* import io.ygdrasil.wgpu.BufferUsage +import io.ygdrasil.wgpu.ColorWriteMask +import io.ygdrasil.wgpu.IndexFormat +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PipelineLayoutDescriptor +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.PrimitiveTopology +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor.* +import io.ygdrasil.wgpu.ShaderModuleDescriptor +import io.ygdrasil.wgpu.ShaderStage +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * An example showing drawing a texture with a [textureIndexedMesh] and using an @@ -97,8 +117,7 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { setOf(BufferUsage.uniform, BufferUsage.copydst) ) - val shader = device.createShaderModule(textureShader) - val surfaceCapabilities = graphics.surfaceCapabilities + val shader = device.createShaderModule(ShaderModuleDescriptor(textureShader)) val preferredFormat = graphics.preferredFormat val queue = device.queue @@ -106,7 +125,7 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { val vertexGroupLayout = device.createBindGroupLayout( BindGroupLayoutDescriptor( - listOf(BindGroupLayoutEntry(0, ShaderStage.vertex, BufferBindingLayout())) + listOf(Entry(0, setOf(ShaderStage.vertex), BufferBindingLayout())) ) ) val vertexBindGroup = @@ -120,17 +139,18 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { device.createBindGroupLayout( BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry(0, ShaderStage.FRAGMENT, TextureBindingLayout()), - BindGroupLayoutEntry(1, ShaderStage.FRAGMENT, SamplerBindingLayout()) + Entry(0, setOf(ShaderStage.fragment), TextureBindingLayout()), + Entry(1, setOf(ShaderStage.fragment), SamplerBindingLayout()) ) ) ) val fragmentBindGroup = device.createBindGroup( - desc = BindGroupDescriptor( fragmentGroupLayout, - listOf(BindGroupEntry(0, texture.view), BindGroupEntry(1, texture.sampler)) + listOf( + BindGroupEntry(0, TextureViewBinding(texture.view)), + BindGroupEntry(1, SamplerBinding(texture.sampler))) ) ) val pipelineLayout = @@ -140,27 +160,27 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { val renderPipelineDesc = RenderPipelineDescriptor( layout = pipelineLayout, - vertex = - VertexState( - module = shader, - entryPoint = "vs_main", - mesh.geometry.layout.gpuVertexBufferLayout - ), + vertex = VertexState( + module = shader, + entryPoint = "vs_main", + buffers = listOf(mesh.geometry.layout.gpuVertexBufferLayout) + ), fragment = - FragmentState( - module = shader, - entryPoint = "fs_main", - target = - ColorTargetState( - format = preferredFormat, - blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.all - ) - ), + FragmentState( + module = shader, + entryPoint = "fs_main", + targets = + listOf( + FragmentState.ColorTargetState( + format = preferredFormat, + blend = BlendStates.NonPreMultiplied, + writeMask = ColorWriteMask.all + ) + ) + ), primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, - multisample = - MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) + multisample = MultisampleState(count = 1, mask = 0xFFFFFFFu, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( @@ -203,7 +223,7 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { } camera.update() camera.viewProjection.toBuffer(cameraFloatBuffer) - device.queue.writeBuffer(cameraUniformBuffer, cameraFloatBuffer) + device.queue.writeBuffer(cameraUniformBuffer, 0L, cameraFloatBuffer.toArray()) val swapChainTexture = checkNotNull(surfaceTexture.texture) val frame = swapChainTexture.createView() @@ -211,16 +231,13 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( RenderPassDescriptor.ColorAttachment( view = frame, loadOp = LoadOp.clear, storeOp = StoreOp.store, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ) ) @@ -229,31 +246,30 @@ class TextureMeshAndCameraExample(context: Context) : ContextListener(context) { renderPassEncoder.setBindGroup(0, vertexBindGroup) renderPassEncoder.setBindGroup(1, fragmentBindGroup) renderPassEncoder.setVertexBuffer(0, mesh.vbo) - renderPassEncoder.setIndexBuffer(mesh.ibo, IndexFormat.UINT16) + renderPassEncoder.setIndexBuffer(mesh.ibo, IndexFormat.uint16) renderPassEncoder.drawIndexed(6, 1) renderPassEncoder.end() val commandBuffer = commandEncoder.finish() - queue.submit(commandBuffer) + queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { - renderPipeline.release() - pipelineLayout.release() - fragmentBindGroup.release() - fragmentGroupLayout.release() + renderPipeline.close() + pipelineLayout.close() + fragmentBindGroup.close() + fragmentGroupLayout.close() texture.release() mesh.release() texture.release() - shader.release() + shader.close() } } } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt index 3797f4c2a..18db70681 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureMeshExample.kt @@ -3,8 +3,36 @@ package com.littlekt.examples import com.littlekt.Context import com.littlekt.ContextListener import com.littlekt.file.vfs.readPixmap +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.Color import com.littlekt.graphics.textureIndexedMesh +import io.ygdrasil.wgpu.BindGroupDescriptor +import io.ygdrasil.wgpu.BindGroupDescriptor.* +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.SamplerBindingLayout +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.TextureBindingLayout +import io.ygdrasil.wgpu.ColorWriteMask +import io.ygdrasil.wgpu.ImageCopyTexture +import io.ygdrasil.wgpu.IndexFormat +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PipelineLayoutDescriptor +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.PrimitiveTopology +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor.* +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState +import io.ygdrasil.wgpu.SamplerDescriptor +import io.ygdrasil.wgpu.ShaderModuleDescriptor +import io.ygdrasil.wgpu.ShaderStage +import io.ygdrasil.wgpu.Size3D +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureDataLayout +import io.ygdrasil.wgpu.TextureDescriptor +import io.ygdrasil.wgpu.TextureFormat +import io.ygdrasil.wgpu.TextureUsage /** * An example showing drawing a texture with a [textureIndexedMesh]. @@ -72,28 +100,23 @@ class TextureMeshExample(context: Context) : ContextListener(context) { } } mesh.update() - val shader = device.createShaderModule(textureShader) - val surfaceCapabilities = graphics.surfaceCapabilities + val shader = device.createShaderModule(ShaderModuleDescriptor(textureShader)) val preferredFormat = graphics.preferredFormat val texture = device.createTexture( TextureDescriptor( - Extent3D(image.width, image.height, 1), - 1, - 1, - TextureDimension.D2, - if (preferredFormat.srgb) TextureFormat.RGBA8_UNORM_SRGB - else TextureFormat.RGBA8_UNORM, - TextureUsage.COPY_DST or TextureUsage.TEXTURE + Size3D(image.width, image.height), + TextureFormat.rgba8unorm, + setOf(TextureUsage.copyDst, TextureUsage.textureBinding) ) ) val queue = device.queue queue.writeTexture( data = image.pixels.toArray(), - destination = TextureCopyView(texture), - layout = TextureDataLayout(image.width * 4, image.height), - copySize = Extent3D(image.width, image.height, 1) + destination = ImageCopyTexture(texture), + dataLayout = TextureDataLayout((image.width * 4).toLong(), image.height), + size = Size3D(image.width, image.height, 1) ) val sampler = device.createSampler(SamplerDescriptor()) @@ -102,44 +125,48 @@ class TextureMeshExample(context: Context) : ContextListener(context) { device.createBindGroupLayout( BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry(0, ShaderStage.FRAGMENT, TextureBindingLayout()), - BindGroupLayoutEntry(1, ShaderStage.FRAGMENT, SamplerBindingLayout()) + Entry(0, setOf(ShaderStage.fragment), TextureBindingLayout()), + Entry(1, setOf(ShaderStage.fragment), SamplerBindingLayout()) ) ) ) val bindGroup = device.createBindGroup( - desc = BindGroupDescriptor( bindGroupLayout, - listOf(BindGroupEntry(0, textureView), BindGroupEntry(1, sampler)) + listOf( + BindGroupEntry(0, TextureViewBinding(textureView)), + BindGroupEntry(1, SamplerBinding(sampler)) + ) ) ) - val pipelineLayout = device.createPipelineLayout(PipelineLayoutDescriptor(bindGroupLayout)) + val pipelineLayout = device.createPipelineLayout(PipelineLayoutDescriptor(listOf(bindGroupLayout))) val renderPipelineDesc = RenderPipelineDescriptor( layout = pipelineLayout, vertex = - VertexState( - module = shader, - entryPoint = "vs_main", - mesh.geometry.layout.gpuVertexBufferLayout - ), + VertexState( + module = shader, + entryPoint = "vs_main", + buffers = listOf(mesh.geometry.layout.gpuVertexBufferLayout) + ), fragment = - FragmentState( - module = shader, - entryPoint = "fs_main", - target = - ColorTargetState( - format = preferredFormat, - blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.all - ) - ), + FragmentState( + module = shader, + entryPoint = "fs_main", + targets = + listOf( + ColorTargetState( + format = preferredFormat, + blend = BlendStates.NonPreMultiplied, + writeMask = ColorWriteMask.all + ) + ) + ), primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = - MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) + MultisampleState(count = 1, mask = 0xFFFFFFFu, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( @@ -181,16 +208,13 @@ class TextureMeshExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( RenderPassDescriptor.ColorAttachment( view = frame, loadOp = LoadOp.clear, storeOp = StoreOp.store, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ) ) @@ -198,33 +222,32 @@ class TextureMeshExample(context: Context) : ContextListener(context) { renderPassEncoder.setPipeline(renderPipeline) renderPassEncoder.setBindGroup(0, bindGroup) renderPassEncoder.setVertexBuffer(0, mesh.vbo) - renderPassEncoder.setIndexBuffer(mesh.ibo, IndexFormat.UINT16) + renderPassEncoder.setIndexBuffer(mesh.ibo, IndexFormat.uint16) renderPassEncoder.drawIndexed(6, 1) renderPassEncoder.end() val commandBuffer = commandEncoder.finish() - queue.submit(commandBuffer) + queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { - renderPipeline.release() - pipelineLayout.release() - bindGroup.release() - bindGroupLayout.release() - sampler.release() - textureView.release() - texture.release() + renderPipeline.close() + pipelineLayout.close() + bindGroup.close() + bindGroupLayout.close() + sampler.close() + textureView.close() + texture.close() mesh.release() - texture.release() - shader.release() + texture.close() + shader.close() } } } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt index d8516b86a..1b805f290 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TextureViaCommandEncoderExample.kt @@ -3,7 +3,44 @@ package com.littlekt.examples import com.littlekt.Context import com.littlekt.ContextListener import com.littlekt.file.vfs.readPixmap +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.Color +import com.littlekt.graphics.createGPUByteBuffer +import com.littlekt.graphics.createGPUFloatBuffer +import com.littlekt.graphics.createGPUShortBuffer +import io.ygdrasil.wgpu.BindGroupDescriptor +import io.ygdrasil.wgpu.BindGroupDescriptor.* +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.* +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.* +import io.ygdrasil.wgpu.BufferUsage +import io.ygdrasil.wgpu.ColorWriteMask +import io.ygdrasil.wgpu.ImageCopyBuffer +import io.ygdrasil.wgpu.ImageCopyTexture +import io.ygdrasil.wgpu.IndexFormat +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PipelineLayoutDescriptor +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.PrimitiveTopology +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor.* +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.* +import io.ygdrasil.wgpu.RenderPipelineDescriptor.VertexState.VertexBufferLayout +import io.ygdrasil.wgpu.RenderPipelineDescriptor.VertexState.VertexBufferLayout.* +import io.ygdrasil.wgpu.SamplerDescriptor +import io.ygdrasil.wgpu.ShaderModuleDescriptor +import io.ygdrasil.wgpu.ShaderStage +import io.ygdrasil.wgpu.Size3D +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureDataLayout +import io.ygdrasil.wgpu.TextureDescriptor +import io.ygdrasil.wgpu.TextureDimension +import io.ygdrasil.wgpu.TextureFormat +import io.ygdrasil.wgpu.TextureUsage +import io.ygdrasil.wgpu.VertexFormat +import io.ygdrasil.wgpu.VertexStepMode /** * An example rendering a texture using a [CommandEncoder] in pure WebGPU. @@ -71,35 +108,31 @@ class TextureViaCommandEncoderExample(context: Context) : ContextListener(contex // @formatter:on val image = resourcesVfs["pika.png"].readPixmap() val device = graphics.device - val vbo = device.createGPUFloatBuffer("vbo", vertices, BufferUsage.vertex) - val ibo = device.createGPUShortBuffer("ibo", indices, BufferUsage.INDEX) - val shader = device.createShaderModule(textureShader) - val surfaceCapabilities = graphics.surfaceCapabilities + val vbo = device.createGPUFloatBuffer("vbo", vertices, setOf(BufferUsage.vertex)) + val ibo = device.createGPUShortBuffer("ibo", indices, setOf(BufferUsage.index)) + val shader = device.createShaderModule(ShaderModuleDescriptor(textureShader)) val preferredFormat = graphics.preferredFormat val texture = device.createTexture( TextureDescriptor( - Extent3D(image.width, image.height, 1), - 1, - 1, - TextureDimension.D2, - TextureFormat.RGBA8_UNORM_SRGB, - TextureUsage.COPY_DST or TextureUsage.TEXTURE + Size3D(image.width, image.height), + TextureFormat.rgba8unormsrgb, + setOf(TextureUsage.copyDst, TextureUsage.textureBinding) ) ) val queue = device.queue run { val textureBuffer = - device.createGPUByteBuffer("tex temp", image.pixels.toArray(), BufferUsage.COPY_SRC) + device.createGPUByteBuffer("tex temp", image.pixels.toArray(), setOf(BufferUsage.copysrc)) val commandEncoder = device.createCommandEncoder() commandEncoder.copyBufferToTexture( - BufferCopyView(textureBuffer, TextureDataLayout(image.width * 4, image.height)), - TextureCopyView(texture), - Extent3D(image.width, image.height, 1) + ImageCopyBuffer(textureBuffer, 0L, image.width * 4, image.height), + ImageCopyTexture(texture), + Size3D(image.width, image.height) ) - queue.submit(commandEncoder.finish()) - textureBuffer.destroy() + queue.submit(listOf(commandEncoder.finish())) + textureBuffer.close() } val sampler = device.createSampler(SamplerDescriptor()) @@ -108,55 +141,61 @@ class TextureViaCommandEncoderExample(context: Context) : ContextListener(contex device.createBindGroupLayout( BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry(0, ShaderStage.FRAGMENT, TextureBindingLayout()), - BindGroupLayoutEntry(1, ShaderStage.FRAGMENT, SamplerBindingLayout()) + Entry(0, setOf(ShaderStage.fragment), TextureBindingLayout()), + Entry(1, setOf(ShaderStage.fragment), SamplerBindingLayout()) ) ) ) val bindGroup = device.createBindGroup( - desc = BindGroupDescriptor( bindGroupLayout, - listOf(BindGroupEntry(0, textureView), BindGroupEntry(1, sampler)) + listOf( + BindGroupEntry(0, TextureViewBinding(textureView)), + BindGroupEntry(1, SamplerBinding(sampler)) + ) ) ) - val pipelineLayout = device.createPipelineLayout(PipelineLayoutDescriptor(bindGroupLayout)) + val pipelineLayout = device.createPipelineLayout(PipelineLayoutDescriptor(listOf(bindGroupLayout))) val renderPipelineDesc = RenderPipelineDescriptor( layout = pipelineLayout, vertex = - VertexState( - module = shader, - entryPoint = "vs_main", - WebGPUVertexBufferLayout( + VertexState( + module = shader, + entryPoint = "vs_main", + buffers = listOf( + VertexBufferLayout( 4L * Float.SIZE_BYTES, - VertexStepMode.VERTEX, listOf( - WebGPUVertexAttribute(VertexFormat.FLOAT32x2, 0, 0), - WebGPUVertexAttribute( - VertexFormat.FLOAT32x2, + VertexAttribute(VertexFormat.float32x2, 0, 0), + VertexAttribute( + VertexFormat.float32x2, 2L * Float.SIZE_BYTES, 1 ) - ) + ), + VertexStepMode.vertex, ) - ), + ) + ), fragment = - FragmentState( - module = shader, - entryPoint = "fs_main", - target = - ColorTargetState( - format = preferredFormat, - blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.all - ) - ), + FragmentState( + module = shader, + entryPoint = "fs_main", + targets = + listOf( + ColorTargetState( + format = preferredFormat, + blend = BlendStates.NonPreMultiplied, + writeMask = ColorWriteMask.all + ) + ) + ), primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, multisample = - MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) + MultisampleState(count = 1, mask = 0xFFFFFFFu, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( @@ -198,14 +237,13 @@ class TextureViaCommandEncoderExample(context: Context) : ContextListener(contex val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( RenderPassDescriptor.ColorAttachment( view = frame, loadOp = LoadOp.clear, storeOp = StoreOp.store, - clearColor = Color.CLEAR + clearValue = Color.CLEAR.toWebGPUColor() ) ) ) @@ -213,34 +251,33 @@ class TextureViaCommandEncoderExample(context: Context) : ContextListener(contex renderPassEncoder.setPipeline(renderPipeline) renderPassEncoder.setBindGroup(0, bindGroup) renderPassEncoder.setVertexBuffer(0, vbo) - renderPassEncoder.setIndexBuffer(ibo, IndexFormat.UINT16) + renderPassEncoder.setIndexBuffer(ibo, IndexFormat.uint16) renderPassEncoder.drawIndexed(indices.size, 1) renderPassEncoder.end() val commandBuffer = commandEncoder.finish() - queue.submit(commandBuffer) + queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { - renderPipeline.release() - pipelineLayout.release() - bindGroup.release() - bindGroupLayout.release() - sampler.release() - textureView.release() - texture.release() - ibo.release() - vbo.release() - texture.release() - shader.release() + renderPipeline.close() + pipelineLayout.close() + bindGroup.close() + bindGroupLayout.close() + sampler.close() + textureView.close() + texture.close() + ibo.close() + vbo.close() + texture.close() + shader.close() } } } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt index 4308422e9..911cd6d1a 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledMeshExample.kt @@ -4,13 +4,35 @@ import com.littlekt.Context import com.littlekt.ContextListener import com.littlekt.EngineStats import com.littlekt.file.FloatBuffer +import com.littlekt.graphics.BlendStates import com.littlekt.graphics.Color import com.littlekt.graphics.OrthographicCamera import com.littlekt.graphics.createGPUFloatBuffer import com.littlekt.graphics.textureIndexedMesh import com.littlekt.math.Vec4f import com.littlekt.resources.Textures +import io.ygdrasil.wgpu.BindGroupDescriptor +import io.ygdrasil.wgpu.BindGroupDescriptor.* +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.SamplerBindingLayout +import io.ygdrasil.wgpu.BindGroupLayoutDescriptor.Entry.TextureBindingLayout import io.ygdrasil.wgpu.BufferUsage +import io.ygdrasil.wgpu.ColorWriteMask +import io.ygdrasil.wgpu.IndexFormat +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PipelineLayoutDescriptor +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.PrimitiveTopology +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor +import io.ygdrasil.wgpu.RenderPipelineDescriptor.* +import io.ygdrasil.wgpu.RenderPipelineDescriptor.FragmentState.ColorTargetState +import io.ygdrasil.wgpu.ShaderModuleDescriptor +import io.ygdrasil.wgpu.ShaderStage +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage import kotlin.random.Random /** @@ -115,8 +137,7 @@ class TiledMeshExample(context: Context) : ContextListener(context) { setOf(BufferUsage.uniform, BufferUsage.copydst) ) - val shader = device.createShaderModule(textureShader) - val surfaceCapabilities = graphics.surfaceCapabilities + val shader = device.createShaderModule(ShaderModuleDescriptor(textureShader)) val preferredFormat = graphics.preferredFormat val queue = device.queue @@ -124,7 +145,7 @@ class TiledMeshExample(context: Context) : ContextListener(context) { val vertexGroupLayout = device.createBindGroupLayout( BindGroupLayoutDescriptor( - listOf(BindGroupLayoutEntry(0, ShaderStage.vertex, BufferBindingLayout())) + listOf(Entry(0, setOf(ShaderStage.vertex), Entry.BufferBindingLayout())) ) ) val vertexBindGroup = @@ -138,19 +159,18 @@ class TiledMeshExample(context: Context) : ContextListener(context) { device.createBindGroupLayout( BindGroupLayoutDescriptor( listOf( - BindGroupLayoutEntry(0, ShaderStage.FRAGMENT, TextureBindingLayout()), - BindGroupLayoutEntry(1, ShaderStage.FRAGMENT, SamplerBindingLayout()) + Entry(0, setOf(ShaderStage.fragment), TextureBindingLayout()), + Entry(1, setOf(ShaderStage.fragment), SamplerBindingLayout()) ) ) ) val fragmentBindGroup = device.createBindGroup( - desc = BindGroupDescriptor( fragmentGroupLayout, listOf( - BindGroupEntry(0, Textures.white.texture.view), - BindGroupEntry(1, Textures.white.texture.sampler) + BindGroupEntry(0, TextureViewBinding(Textures.white.texture.view)), + BindGroupEntry(1, SamplerBinding(Textures.white.texture.sampler)) ) ) ) @@ -162,26 +182,27 @@ class TiledMeshExample(context: Context) : ContextListener(context) { RenderPipelineDescriptor( layout = pipelineLayout, vertex = - VertexState( - module = shader, - entryPoint = "vs_main", - mesh.geometry.layout.gpuVertexBufferLayout - ), + VertexState( + module = shader, + entryPoint = "vs_main", + buffers = listOf(mesh.geometry.layout.gpuVertexBufferLayout) + ), fragment = - FragmentState( - module = shader, - entryPoint = "fs_main", - target = - ColorTargetState( - format = preferredFormat, - blendState = BlendState.NonPreMultiplied, - writeMask = ColorWriteMask.all - ) - ), + RenderPipelineDescriptor.FragmentState( + module = shader, + entryPoint = "fs_main", + targets = + listOf( + ColorTargetState( + format = preferredFormat, + blend = BlendStates.NonPreMultiplied, + writeMask = ColorWriteMask.all + ) + ) + ), primitive = PrimitiveState(topology = PrimitiveTopology.triangleList), depthStencil = null, - multisample = - MultisampleState(count = 1, mask = 0xFFFFFFF, alphaToCoverageEnabled = false) + multisample = MultisampleState(count = 1, mask = 0xFFFFFFFu, alphaToCoverageEnabled = false) ) val renderPipeline = device.createRenderPipeline(renderPipelineDesc) graphics.configureSurface( @@ -225,7 +246,7 @@ class TiledMeshExample(context: Context) : ContextListener(context) { } camera.update() camera.viewProjection.toBuffer(cameraFloatBuffer) - device.queue.writeBuffer(cameraUniformBuffer, cameraFloatBuffer) + device.queue.writeBuffer(cameraUniformBuffer, 0L, cameraFloatBuffer.toArray()) val swapChainTexture = checkNotNull(surfaceTexture.texture) val frame = swapChainTexture.createView() @@ -233,16 +254,13 @@ class TiledMeshExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( RenderPassDescriptor.ColorAttachment( view = frame, loadOp = LoadOp.clear, storeOp = StoreOp.store, - clearColor = - if (preferredFormat.srgb) Color.DARK_GRAY.toLinear() - else Color.DARK_GRAY + clearValue = Color.DARK_GRAY.toWebGPUColor() ) ) ) @@ -251,30 +269,29 @@ class TiledMeshExample(context: Context) : ContextListener(context) { renderPassEncoder.setBindGroup(0, vertexBindGroup) renderPassEncoder.setBindGroup(1, fragmentBindGroup) renderPassEncoder.setVertexBuffer(0, mesh.vbo) - renderPassEncoder.setIndexBuffer(mesh.ibo, IndexFormat.UINT16) + renderPassEncoder.setIndexBuffer(mesh.ibo, IndexFormat.uint16) EngineStats.extra("Quads", totalQuads) renderPassEncoder.drawIndexed(totalQuads * 6, 1) renderPassEncoder.end() val commandBuffer = commandEncoder.finish() - queue.submit(commandBuffer) + queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { - renderPipeline.release() - pipelineLayout.release() - fragmentBindGroup.release() - fragmentGroupLayout.release() + renderPipeline.close() + pipelineLayout.close() + fragmentBindGroup.close() + fragmentGroupLayout.close() mesh.release() - shader.release() + shader.close() } } } diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapCacheExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapCacheExample.kt index c97557e20..16eae5fd2 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapCacheExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapCacheExample.kt @@ -5,8 +5,13 @@ import com.littlekt.ContextListener import com.littlekt.file.vfs.readTiledMap import com.littlekt.graphics.Color import com.littlekt.graphics.g2d.SpriteCache -import com.littlekt.graphics.webgpu.* import com.littlekt.util.viewport.ExtendViewport +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * Load and render a Tiled map using a [SpriteCache]. @@ -22,7 +27,6 @@ class TiledTileMapCacheExample(context: Context) : ContextListener(context) { val device = graphics.device val map = resourcesVfs["tiled/ortho-tiled-world.tmj"].readTiledMap() - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( @@ -36,10 +40,7 @@ class TiledTileMapCacheExample(context: Context) : ContextListener(context) { map.addToCache(cache, 0f, 0f, 1 / 8f) val viewport = ExtendViewport(30, 16) val camera = viewport.camera - var bgColor = map.backgroundColor ?: Color.DARK_GRAY - if (preferredFormat.srgb) { - bgColor = bgColor.toLinear() - } + val bgColor = map.backgroundColor ?: Color.DARK_GRAY onResize { width, height -> viewport.update(width, height) @@ -78,14 +79,13 @@ class TiledTileMapCacheExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( RenderPassDescriptor.ColorAttachment( view = frame, loadOp = LoadOp.clear, storeOp = StoreOp.store, - clearColor = bgColor + clearValue = bgColor.toWebGPUColor() ) ) ) @@ -97,14 +97,13 @@ class TiledTileMapCacheExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { diff --git a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapExample.kt b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapExample.kt index b19c08e02..451b16238 100644 --- a/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapExample.kt +++ b/examples/src/commonMain/kotlin/com/littlekt/examples/TiledTileMapExample.kt @@ -7,8 +7,13 @@ import com.littlekt.graphics.Color import com.littlekt.graphics.g2d.SpriteBatch import com.littlekt.graphics.g2d.shape.ShapeRenderer import com.littlekt.graphics.g2d.use -import com.littlekt.graphics.webgpu.* import com.littlekt.util.viewport.ExtendViewport +import io.ygdrasil.wgpu.LoadOp +import io.ygdrasil.wgpu.PresentMode +import io.ygdrasil.wgpu.RenderPassDescriptor +import io.ygdrasil.wgpu.StoreOp +import io.ygdrasil.wgpu.SurfaceTextureStatus +import io.ygdrasil.wgpu.TextureUsage /** * Load and render a Tiled map. @@ -24,7 +29,6 @@ class TiledTileMapExample(context: Context) : ContextListener(context) { val device = graphics.device val map = resourcesVfs["tiled/ortho-tiled-world.tmj"].readTiledMap() - val surfaceCapabilities = graphics.surfaceCapabilities val preferredFormat = graphics.preferredFormat graphics.configureSurface( @@ -38,10 +42,7 @@ class TiledTileMapExample(context: Context) : ContextListener(context) { val shapeRenderer = ShapeRenderer(batch) val viewport = ExtendViewport(30, 16) val camera = viewport.camera - var bgColor = map.backgroundColor ?: Color.DARK_GRAY - if (preferredFormat.srgb) { - bgColor = bgColor.toLinear() - } + val bgColor = map.backgroundColor ?: Color.DARK_GRAY onResize { width, height -> viewport.update(width, height) @@ -80,14 +81,13 @@ class TiledTileMapExample(context: Context) : ContextListener(context) { val commandEncoder = device.createCommandEncoder() val renderPassEncoder = commandEncoder.beginRenderPass( - desc = RenderPassDescriptor( listOf( RenderPassDescriptor.ColorAttachment( view = frame, loadOp = LoadOp.clear, storeOp = StoreOp.store, - clearColor = bgColor + clearValue = bgColor.toWebGPUColor() ) ) ) @@ -108,14 +108,13 @@ class TiledTileMapExample(context: Context) : ContextListener(context) { val commandBuffer = commandEncoder.finish() - device.queue.submit(commandBuffer) + device.queue.submit(listOf(commandBuffer)) graphics.surface.present() - commandBuffer.release() - renderPassEncoder.release() - commandEncoder.release() - frame.release() - swapChainTexture.release() + commandBuffer.close() + commandEncoder.close() + frame.close() + swapChainTexture.close() } onRelease { From f72a19d9207ab37198b4ba1af3b403d157dcfee9 Mon Sep 17 00:00:00 2001 From: ygdrasil-io Date: Fri, 27 Sep 2024 13:20:31 +0200 Subject: [PATCH 19/22] Remove WebGPU native bindings and build configurations Deleted native binary files, Gradle build scripts, and headers related to WebGPU. This change is made to clean up deprecated or unnecessary dependencies and configurations. --- core/build.gradle.kts | 2 - .../kotlin/com/littlekt/LittleKtApp.jvm.kt | 7 +- .../kotlin/com/littlekt/LwjglContext.kt | 7 +- .../kotlin/com/littlekt/LwjglGraphics.kt | 3 +- examples/build.gradle.kts | 10 +- settings.gradle.kts | 4 - wgpu-ffm/README.md | 7 - wgpu-ffm/build.gradle.kts | 12 - .../src/main/java/com/littlekt/wgpu/WGPU.java | 16948 ---------------- .../littlekt/wgpu/WGPUAdapterProperties.java | 497 - .../wgpu/WGPUBindGroupDescriptor.java | 311 - .../com/littlekt/wgpu/WGPUBindGroupEntry.java | 404 - .../wgpu/WGPUBindGroupEntryExtras.java | 403 - .../wgpu/WGPUBindGroupLayoutDescriptor.java | 265 - .../wgpu/WGPUBindGroupLayoutEntry.java | 403 - .../wgpu/WGPUBindGroupLayoutEntryExtras.java | 174 - .../com/littlekt/wgpu/WGPUBlendComponent.java | 219 - .../com/littlekt/wgpu/WGPUBlendState.java | 173 - .../wgpu/WGPUBufferBindingLayout.java | 265 - .../littlekt/wgpu/WGPUBufferDescriptor.java | 313 - .../littlekt/wgpu/WGPUBufferMapCallback.java | 68 - .../com/littlekt/wgpu/WGPUChainedStruct.java | 174 - .../littlekt/wgpu/WGPUChainedStructOut.java | 174 - .../java/com/littlekt/wgpu/WGPUColor.java | 265 - .../littlekt/wgpu/WGPUColorTargetState.java | 267 - .../wgpu/WGPUCommandBufferDescriptor.java | 173 - .../wgpu/WGPUCommandEncoderDescriptor.java | 173 - .../littlekt/wgpu/WGPUCompilationInfo.java | 219 - .../wgpu/WGPUCompilationInfoCallback.java | 73 - .../littlekt/wgpu/WGPUCompilationMessage.java | 542 - .../wgpu/WGPUComputePassDescriptor.java | 219 - .../wgpu/WGPUComputePassTimestampWrites.java | 219 - .../wgpu/WGPUComputePipelineDescriptor.java | 265 - .../com/littlekt/wgpu/WGPUConstantEntry.java | 219 - ...GPUCreateComputePipelineAsyncCallback.java | 70 - ...WGPUCreateRenderPipelineAsyncCallback.java | 70 - .../littlekt/wgpu/WGPUDepthStencilState.java | 587 - .../littlekt/wgpu/WGPUDeviceDescriptor.java | 449 - .../com/littlekt/wgpu/WGPUDeviceExtras.java | 173 - .../littlekt/wgpu/WGPUDeviceLostCallback.java | 69 - .../com/littlekt/wgpu/WGPUErrorCallback.java | 69 - .../java/com/littlekt/wgpu/WGPUExtent3D.java | 219 - .../com/littlekt/wgpu/WGPUFragmentState.java | 403 - .../com/littlekt/wgpu/WGPUGlobalReport.java | 358 - .../java/com/littlekt/wgpu/WGPUHubReport.java | 817 - .../littlekt/wgpu/WGPUImageCopyBuffer.java | 219 - .../littlekt/wgpu/WGPUImageCopyTexture.java | 312 - .../littlekt/wgpu/WGPUInstanceDescriptor.java | 127 - .../WGPUInstanceEnumerateAdapterOptions.java | 174 - .../com/littlekt/wgpu/WGPUInstanceExtras.java | 403 - .../java/com/littlekt/wgpu/WGPULimits.java | 1554 -- .../com/littlekt/wgpu/WGPULogCallback.java | 69 - .../littlekt/wgpu/WGPUMultisampleState.java | 266 - .../com/littlekt/wgpu/WGPUNativeLimits.java | 173 - .../java/com/littlekt/wgpu/WGPUOrigin3D.java | 219 - .../wgpu/WGPUPipelineLayoutDescriptor.java | 265 - .../wgpu/WGPUPipelineLayoutExtras.java | 219 - .../wgpu/WGPUPrimitiveDepthClipControl.java | 174 - .../com/littlekt/wgpu/WGPUPrimitiveState.java | 311 - .../main/java/com/littlekt/wgpu/WGPUProc.java | 65 - .../WGPUProcAdapterEnumerateFeatures.java | 69 - .../wgpu/WGPUProcAdapterGetLimits.java | 69 - .../wgpu/WGPUProcAdapterGetProperties.java | 68 - .../wgpu/WGPUProcAdapterHasFeature.java | 69 - .../wgpu/WGPUProcAdapterReference.java | 67 - .../littlekt/wgpu/WGPUProcAdapterRelease.java | 67 - .../wgpu/WGPUProcAdapterRequestDevice.java | 70 - .../WGPUProcBindGroupLayoutReference.java | 67 - .../wgpu/WGPUProcBindGroupLayoutRelease.java | 67 - .../wgpu/WGPUProcBindGroupLayoutSetLabel.java | 68 - .../wgpu/WGPUProcBindGroupReference.java | 67 - .../wgpu/WGPUProcBindGroupRelease.java | 67 - .../wgpu/WGPUProcBindGroupSetLabel.java | 68 - .../littlekt/wgpu/WGPUProcBufferDestroy.java | 67 - .../WGPUProcBufferGetConstMappedRange.java | 70 - .../wgpu/WGPUProcBufferGetMapState.java | 68 - .../wgpu/WGPUProcBufferGetMappedRange.java | 70 - .../littlekt/wgpu/WGPUProcBufferGetSize.java | 68 - .../littlekt/wgpu/WGPUProcBufferGetUsage.java | 68 - .../littlekt/wgpu/WGPUProcBufferMapAsync.java | 72 - .../wgpu/WGPUProcBufferReference.java | 67 - .../littlekt/wgpu/WGPUProcBufferRelease.java | 67 - .../littlekt/wgpu/WGPUProcBufferSetLabel.java | 68 - .../littlekt/wgpu/WGPUProcBufferUnmap.java | 67 - .../wgpu/WGPUProcCommandBufferReference.java | 67 - .../wgpu/WGPUProcCommandBufferRelease.java | 67 - .../wgpu/WGPUProcCommandBufferSetLabel.java | 68 - ...GPUProcCommandEncoderBeginComputePass.java | 69 - ...WGPUProcCommandEncoderBeginRenderPass.java | 69 - .../WGPUProcCommandEncoderClearBuffer.java | 70 - ...UProcCommandEncoderCopyBufferToBuffer.java | 72 - ...ProcCommandEncoderCopyBufferToTexture.java | 70 - ...ProcCommandEncoderCopyTextureToBuffer.java | 70 - ...rocCommandEncoderCopyTextureToTexture.java | 70 - .../wgpu/WGPUProcCommandEncoderFinish.java | 69 - ...PUProcCommandEncoderInsertDebugMarker.java | 68 - .../WGPUProcCommandEncoderPopDebugGroup.java | 67 - .../WGPUProcCommandEncoderPushDebugGroup.java | 68 - .../wgpu/WGPUProcCommandEncoderReference.java | 67 - .../wgpu/WGPUProcCommandEncoderRelease.java | 67 - ...WGPUProcCommandEncoderResolveQuerySet.java | 72 - .../wgpu/WGPUProcCommandEncoderSetLabel.java | 68 - .../WGPUProcCommandEncoderWriteTimestamp.java | 69 - ...cComputePassEncoderDispatchWorkgroups.java | 70 - ...PassEncoderDispatchWorkgroupsIndirect.java | 69 - .../wgpu/WGPUProcComputePassEncoderEnd.java | 67 - ...ocComputePassEncoderInsertDebugMarker.java | 68 - ...PUProcComputePassEncoderPopDebugGroup.java | 67 - ...UProcComputePassEncoderPushDebugGroup.java | 68 - .../WGPUProcComputePassEncoderReference.java | 67 - .../WGPUProcComputePassEncoderRelease.java | 67 - ...GPUProcComputePassEncoderSetBindGroup.java | 71 - .../WGPUProcComputePassEncoderSetLabel.java | 68 - ...WGPUProcComputePassEncoderSetPipeline.java | 68 - ...ProcComputePipelineGetBindGroupLayout.java | 69 - .../WGPUProcComputePipelineReference.java | 67 - .../wgpu/WGPUProcComputePipelineRelease.java | 67 - .../wgpu/WGPUProcComputePipelineSetLabel.java | 68 - .../littlekt/wgpu/WGPUProcCreateInstance.java | 68 - .../wgpu/WGPUProcDeviceCreateBindGroup.java | 69 - .../WGPUProcDeviceCreateBindGroupLayout.java | 69 - .../wgpu/WGPUProcDeviceCreateBuffer.java | 69 - .../WGPUProcDeviceCreateCommandEncoder.java | 69 - .../WGPUProcDeviceCreateComputePipeline.java | 69 - ...UProcDeviceCreateComputePipelineAsync.java | 70 - .../WGPUProcDeviceCreatePipelineLayout.java | 69 - .../wgpu/WGPUProcDeviceCreateQuerySet.java | 69 - ...PUProcDeviceCreateRenderBundleEncoder.java | 69 - .../WGPUProcDeviceCreateRenderPipeline.java | 69 - ...PUProcDeviceCreateRenderPipelineAsync.java | 70 - .../wgpu/WGPUProcDeviceCreateSampler.java | 69 - .../WGPUProcDeviceCreateShaderModule.java | 69 - .../wgpu/WGPUProcDeviceCreateTexture.java | 69 - .../littlekt/wgpu/WGPUProcDeviceDestroy.java | 67 - .../wgpu/WGPUProcDeviceEnumerateFeatures.java | 69 - .../wgpu/WGPUProcDeviceGetLimits.java | 69 - .../littlekt/wgpu/WGPUProcDeviceGetQueue.java | 68 - .../wgpu/WGPUProcDeviceHasFeature.java | 69 - .../wgpu/WGPUProcDevicePopErrorScope.java | 69 - .../wgpu/WGPUProcDevicePushErrorScope.java | 68 - .../wgpu/WGPUProcDeviceReference.java | 67 - .../littlekt/wgpu/WGPUProcDeviceRelease.java | 67 - .../littlekt/wgpu/WGPUProcDeviceSetLabel.java | 68 - ...UProcDeviceSetUncapturedErrorCallback.java | 69 - .../littlekt/wgpu/WGPUProcGetProcAddress.java | 69 - .../wgpu/WGPUProcInstanceCreateSurface.java | 69 - .../wgpu/WGPUProcInstanceProcessEvents.java | 67 - .../wgpu/WGPUProcInstanceReference.java | 67 - .../wgpu/WGPUProcInstanceRelease.java | 67 - .../wgpu/WGPUProcInstanceRequestAdapter.java | 70 - .../wgpu/WGPUProcPipelineLayoutReference.java | 67 - .../wgpu/WGPUProcPipelineLayoutRelease.java | 67 - .../wgpu/WGPUProcPipelineLayoutSetLabel.java | 68 - .../wgpu/WGPUProcQuerySetDestroy.java | 67 - .../wgpu/WGPUProcQuerySetGetCount.java | 68 - .../wgpu/WGPUProcQuerySetGetType.java | 68 - .../wgpu/WGPUProcQuerySetReference.java | 67 - .../wgpu/WGPUProcQuerySetRelease.java | 67 - .../wgpu/WGPUProcQuerySetSetLabel.java | 68 - .../WGPUProcQueueOnSubmittedWorkDone.java | 69 - .../littlekt/wgpu/WGPUProcQueueReference.java | 67 - .../littlekt/wgpu/WGPUProcQueueRelease.java | 67 - .../littlekt/wgpu/WGPUProcQueueSetLabel.java | 68 - .../littlekt/wgpu/WGPUProcQueueSubmit.java | 69 - .../wgpu/WGPUProcQueueWriteBuffer.java | 71 - .../wgpu/WGPUProcQueueWriteTexture.java | 72 - .../wgpu/WGPUProcRenderBundleEncoderDraw.java | 71 - ...GPUProcRenderBundleEncoderDrawIndexed.java | 72 - ...enderBundleEncoderDrawIndexedIndirect.java | 69 - ...PUProcRenderBundleEncoderDrawIndirect.java | 69 - .../WGPUProcRenderBundleEncoderFinish.java | 69 - ...cRenderBundleEncoderInsertDebugMarker.java | 68 - ...UProcRenderBundleEncoderPopDebugGroup.java | 67 - ...ProcRenderBundleEncoderPushDebugGroup.java | 68 - .../WGPUProcRenderBundleEncoderReference.java | 67 - .../WGPUProcRenderBundleEncoderRelease.java | 67 - ...PUProcRenderBundleEncoderSetBindGroup.java | 71 - ...ProcRenderBundleEncoderSetIndexBuffer.java | 71 - .../WGPUProcRenderBundleEncoderSetLabel.java | 68 - ...GPUProcRenderBundleEncoderSetPipeline.java | 68 - ...rocRenderBundleEncoderSetVertexBuffer.java | 71 - .../wgpu/WGPUProcRenderBundleReference.java | 67 - .../wgpu/WGPUProcRenderBundleRelease.java | 67 - .../wgpu/WGPUProcRenderBundleSetLabel.java | 68 - ...cRenderPassEncoderBeginOcclusionQuery.java | 68 - .../wgpu/WGPUProcRenderPassEncoderDraw.java | 71 - .../WGPUProcRenderPassEncoderDrawIndexed.java | 72 - ...cRenderPassEncoderDrawIndexedIndirect.java | 69 - ...WGPUProcRenderPassEncoderDrawIndirect.java | 69 - .../wgpu/WGPUProcRenderPassEncoderEnd.java | 67 - ...rocRenderPassEncoderEndOcclusionQuery.java | 67 - ...PUProcRenderPassEncoderExecuteBundles.java | 69 - ...rocRenderPassEncoderInsertDebugMarker.java | 68 - ...GPUProcRenderPassEncoderPopDebugGroup.java | 67 - ...PUProcRenderPassEncoderPushDebugGroup.java | 68 - .../WGPUProcRenderPassEncoderReference.java | 67 - .../WGPUProcRenderPassEncoderRelease.java | 67 - ...WGPUProcRenderPassEncoderSetBindGroup.java | 71 - ...ProcRenderPassEncoderSetBlendConstant.java | 68 - ...PUProcRenderPassEncoderSetIndexBuffer.java | 71 - .../WGPUProcRenderPassEncoderSetLabel.java | 68 - .../WGPUProcRenderPassEncoderSetPipeline.java | 68 - ...PUProcRenderPassEncoderSetScissorRect.java | 71 - ...cRenderPassEncoderSetStencilReference.java | 68 - ...UProcRenderPassEncoderSetVertexBuffer.java | 71 - .../WGPUProcRenderPassEncoderSetViewport.java | 73 - ...UProcRenderPipelineGetBindGroupLayout.java | 69 - .../wgpu/WGPUProcRenderPipelineReference.java | 67 - .../wgpu/WGPUProcRenderPipelineRelease.java | 67 - .../wgpu/WGPUProcRenderPipelineSetLabel.java | 68 - .../wgpu/WGPUProcSamplerReference.java | 67 - .../littlekt/wgpu/WGPUProcSamplerRelease.java | 67 - .../wgpu/WGPUProcSamplerSetLabel.java | 68 - ...GPUProcShaderModuleGetCompilationInfo.java | 69 - .../wgpu/WGPUProcShaderModuleReference.java | 67 - .../wgpu/WGPUProcShaderModuleRelease.java | 67 - .../wgpu/WGPUProcShaderModuleSetLabel.java | 68 - ...GPUProcSurfaceCapabilitiesFreeMembers.java | 67 - .../wgpu/WGPUProcSurfaceConfigure.java | 68 - .../wgpu/WGPUProcSurfaceGetCapabilities.java | 69 - .../WGPUProcSurfaceGetCurrentTexture.java | 68 - .../WGPUProcSurfaceGetPreferredFormat.java | 69 - .../littlekt/wgpu/WGPUProcSurfacePresent.java | 67 - .../wgpu/WGPUProcSurfaceReference.java | 67 - .../littlekt/wgpu/WGPUProcSurfaceRelease.java | 67 - .../wgpu/WGPUProcSurfaceUnconfigure.java | 67 - .../wgpu/WGPUProcTextureCreateView.java | 69 - .../littlekt/wgpu/WGPUProcTextureDestroy.java | 67 - .../WGPUProcTextureGetDepthOrArrayLayers.java | 68 - .../wgpu/WGPUProcTextureGetDimension.java | 68 - .../wgpu/WGPUProcTextureGetFormat.java | 68 - .../wgpu/WGPUProcTextureGetHeight.java | 68 - .../wgpu/WGPUProcTextureGetMipLevelCount.java | 68 - .../wgpu/WGPUProcTextureGetSampleCount.java | 68 - .../wgpu/WGPUProcTextureGetUsage.java | 68 - .../wgpu/WGPUProcTextureGetWidth.java | 68 - .../wgpu/WGPUProcTextureReference.java | 67 - .../littlekt/wgpu/WGPUProcTextureRelease.java | 67 - .../wgpu/WGPUProcTextureSetLabel.java | 68 - .../wgpu/WGPUProcTextureViewReference.java | 67 - .../wgpu/WGPUProcTextureViewRelease.java | 67 - .../wgpu/WGPUProcTextureViewSetLabel.java | 68 - .../wgpu/WGPUProgrammableStageDescriptor.java | 311 - .../littlekt/wgpu/WGPUPushConstantRange.java | 219 - .../littlekt/wgpu/WGPUQuerySetDescriptor.java | 265 - .../wgpu/WGPUQuerySetDescriptorExtras.java | 219 - .../littlekt/wgpu/WGPUQueueDescriptor.java | 173 - .../wgpu/WGPUQueueWorkDoneCallback.java | 68 - .../com/littlekt/wgpu/WGPURegistryReport.java | 311 - .../wgpu/WGPURenderBundleDescriptor.java | 173 - .../WGPURenderBundleEncoderDescriptor.java | 449 - .../wgpu/WGPURenderPassColorAttachment.java | 357 - .../WGPURenderPassDepthStencilAttachment.java | 495 - .../wgpu/WGPURenderPassDescriptor.java | 403 - .../WGPURenderPassDescriptorMaxDrawCount.java | 173 - .../wgpu/WGPURenderPassTimestampWrites.java | 219 - .../wgpu/WGPURenderPipelineDescriptor.java | 449 - .../wgpu/WGPURequestAdapterCallback.java | 70 - .../wgpu/WGPURequestAdapterOptions.java | 312 - .../wgpu/WGPURequestDeviceCallback.java | 70 - .../com/littlekt/wgpu/WGPURequiredLimits.java | 173 - .../wgpu/WGPURequiredLimitsExtras.java | 173 - .../wgpu/WGPUSamplerBindingLayout.java | 174 - .../littlekt/wgpu/WGPUSamplerDescriptor.java | 634 - .../com/littlekt/wgpu/WGPUShaderDefine.java | 173 - .../wgpu/WGPUShaderModuleCompilationHint.java | 219 - .../wgpu/WGPUShaderModuleDescriptor.java | 265 - .../wgpu/WGPUShaderModuleGLSLDescriptor.java | 313 - .../wgpu/WGPUShaderModuleSPIRVDescriptor.java | 220 - .../wgpu/WGPUShaderModuleWGSLDescriptor.java | 173 - .../littlekt/wgpu/WGPUStencilFaceState.java | 265 - .../wgpu/WGPUStorageTextureBindingLayout.java | 266 - .../littlekt/wgpu/WGPUSupportedLimits.java | 173 - .../wgpu/WGPUSupportedLimitsExtras.java | 173 - .../wgpu/WGPUSurfaceCapabilities.java | 403 - .../wgpu/WGPUSurfaceConfiguration.java | 541 - .../wgpu/WGPUSurfaceConfigurationExtras.java | 174 - .../littlekt/wgpu/WGPUSurfaceDescriptor.java | 173 - ...faceDescriptorFromAndroidNativeWindow.java | 173 - ...rfaceDescriptorFromCanvasHTMLSelector.java | 173 - .../WGPUSurfaceDescriptorFromMetalLayer.java | 173 - ...PUSurfaceDescriptorFromWaylandSurface.java | 219 - .../WGPUSurfaceDescriptorFromWindowsHWND.java | 219 - .../WGPUSurfaceDescriptorFromXcbWindow.java | 220 - .../WGPUSurfaceDescriptorFromXlibWindow.java | 219 - .../com/littlekt/wgpu/WGPUSurfaceTexture.java | 219 - .../wgpu/WGPUTextureBindingLayout.java | 266 - .../littlekt/wgpu/WGPUTextureDataLayout.java | 265 - .../littlekt/wgpu/WGPUTextureDescriptor.java | 541 - .../wgpu/WGPUTextureViewDescriptor.java | 496 - .../littlekt/wgpu/WGPUVertexAttribute.java | 221 - .../littlekt/wgpu/WGPUVertexBufferLayout.java | 266 - .../com/littlekt/wgpu/WGPUVertexState.java | 403 - .../wgpu/WGPUWrappedSubmissionIndex.java | 173 - wgpu-natives/build.gradle.kts | 79 - wgpu-natives/src/main/c/webgpu.h | 1806 -- wgpu-natives/src/main/c/wgpu.h | 265 - .../src/main/resources/libwgpu_native.dylib | Bin 5151320 -> 0 bytes .../src/main/resources/libwgpu_native.so | Bin 11224808 -> 0 bytes .../resources/libwgpu_native_aarch64.dylib | Bin 5170312 -> 0 bytes .../src/main/resources/wgpu_native.dll | Bin 8013824 -> 0 bytes 301 files changed, 16 insertions(+), 59553 deletions(-) delete mode 100644 wgpu-ffm/README.md delete mode 100644 wgpu-ffm/build.gradle.kts delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPU.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUAdapterProperties.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupEntry.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupEntryExtras.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutEntry.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutEntryExtras.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBlendComponent.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBlendState.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferBindingLayout.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferMapCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUChainedStruct.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUChainedStructOut.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUColor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUColorTargetState.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCommandBufferDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCommandEncoderDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationInfo.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationInfoCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationMessage.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePassDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePassTimestampWrites.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePipelineDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUConstantEntry.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCreateComputePipelineAsyncCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCreateRenderPipelineAsyncCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDepthStencilState.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceExtras.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceLostCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUErrorCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUExtent3D.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUFragmentState.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUGlobalReport.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUHubReport.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUImageCopyBuffer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUImageCopyTexture.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceEnumerateAdapterOptions.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceExtras.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPULimits.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPULogCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUMultisampleState.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUNativeLimits.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUOrigin3D.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPipelineLayoutDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPipelineLayoutExtras.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPrimitiveDepthClipControl.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPrimitiveState.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProc.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterEnumerateFeatures.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterGetLimits.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterGetProperties.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterHasFeature.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterRequestDevice.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferDestroy.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetConstMappedRange.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetMapState.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetMappedRange.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetSize.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetUsage.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferMapAsync.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferUnmap.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderBeginComputePass.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderBeginRenderPass.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderClearBuffer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyBufferToBuffer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyBufferToTexture.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyTextureToBuffer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyTextureToTexture.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderFinish.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderInsertDebugMarker.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderPopDebugGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderPushDebugGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderResolveQuerySet.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderWriteTimestamp.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderDispatchWorkgroups.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderDispatchWorkgroupsIndirect.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderEnd.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderInsertDebugMarker.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderPopDebugGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderPushDebugGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetBindGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetPipeline.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineGetBindGroupLayout.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCreateInstance.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBindGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBindGroupLayout.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBuffer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateCommandEncoder.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateComputePipeline.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateComputePipelineAsync.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreatePipelineLayout.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateQuerySet.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderBundleEncoder.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderPipeline.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderPipelineAsync.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateSampler.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateShaderModule.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateTexture.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceDestroy.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceEnumerateFeatures.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceGetLimits.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceGetQueue.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceHasFeature.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDevicePopErrorScope.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDevicePushErrorScope.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceSetUncapturedErrorCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcGetProcAddress.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceCreateSurface.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceProcessEvents.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceRequestAdapter.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetDestroy.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetGetCount.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetGetType.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueOnSubmittedWorkDone.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueSubmit.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueWriteBuffer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueWriteTexture.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDraw.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndexed.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndexedIndirect.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndirect.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderFinish.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderInsertDebugMarker.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderPopDebugGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderPushDebugGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetBindGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetIndexBuffer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetPipeline.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetVertexBuffer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderBeginOcclusionQuery.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDraw.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndexed.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndexedIndirect.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndirect.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderEnd.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderEndOcclusionQuery.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderExecuteBundles.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderInsertDebugMarker.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderPopDebugGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderPushDebugGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetBindGroup.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetBlendConstant.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetIndexBuffer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetPipeline.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetScissorRect.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetStencilReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetVertexBuffer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetViewport.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineGetBindGroupLayout.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleGetCompilationInfo.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceCapabilitiesFreeMembers.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceConfigure.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetCapabilities.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetCurrentTexture.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetPreferredFormat.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfacePresent.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceUnconfigure.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureCreateView.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureDestroy.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetDepthOrArrayLayers.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetDimension.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetFormat.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetHeight.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetMipLevelCount.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetSampleCount.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetUsage.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetWidth.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewReference.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewRelease.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewSetLabel.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProgrammableStageDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPushConstantRange.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQuerySetDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQuerySetDescriptorExtras.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQueueDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQueueWorkDoneCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURegistryReport.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderBundleDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderBundleEncoderDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassColorAttachment.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDepthStencilAttachment.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDescriptorMaxDrawCount.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassTimestampWrites.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPipelineDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestAdapterCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestAdapterOptions.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestDeviceCallback.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequiredLimits.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequiredLimitsExtras.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSamplerBindingLayout.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSamplerDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderDefine.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleCompilationHint.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleGLSLDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleSPIRVDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleWGSLDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUStencilFaceState.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUStorageTextureBindingLayout.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSupportedLimits.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSupportedLimitsExtras.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceCapabilities.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceConfiguration.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceConfigurationExtras.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromAndroidNativeWindow.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromCanvasHTMLSelector.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromMetalLayer.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromWaylandSurface.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromWindowsHWND.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromXcbWindow.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromXlibWindow.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceTexture.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureBindingLayout.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureDataLayout.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureViewDescriptor.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexAttribute.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexBufferLayout.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexState.java delete mode 100644 wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUWrappedSubmissionIndex.java delete mode 100644 wgpu-natives/build.gradle.kts delete mode 100644 wgpu-natives/src/main/c/webgpu.h delete mode 100644 wgpu-natives/src/main/c/wgpu.h delete mode 100644 wgpu-natives/src/main/resources/libwgpu_native.dylib delete mode 100644 wgpu-natives/src/main/resources/libwgpu_native.so delete mode 100644 wgpu-natives/src/main/resources/libwgpu_native_aarch64.dylib delete mode 100644 wgpu-natives/src/main/resources/wgpu_native.dll diff --git a/core/build.gradle.kts b/core/build.gradle.kts index fcdaff7c9..61d51164a 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -49,8 +49,6 @@ kotlin { //noinspection UseTomlInstead val jvmMain by getting { dependencies { - implementation(project(":wgpu-ffm")) - implementation(project(":wgpu-natives")) implementation(libs.mp3.decoder) diff --git a/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt b/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt index 3e85affd5..18850ae6e 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LittleKtApp.jvm.kt @@ -3,6 +3,7 @@ package com.littlekt import com.littlekt.graphics.HdpiMode import io.ygdrasil.wgpu.BackendType import io.ygdrasil.wgpu.PowerPreference +import io.ygdrasil.wgpu.WGPU internal val ktHead32x32 = "iVBORw0KGgoAAAANSUhEUgAAACAAAAAhCAYAAAC4JqlRAAAAAXNSR0IArs4c6QAABKNJREFUWIWVl39oVWUYxz/vzgnCsFqxS2tBymKgCF6vOs3Zbu6/zHBCf5gOQnYURBKMhit/YJszZVGwFmLeIULzL8EtMIPAebOprDYnQ8sRNQldXCulH4PkHN/+OOc9e8+vu7sHLpxz7vc83+/zfZ73PecIoiFD5yIGM9tIzFkWAsmbow+wsgX/F3PzrMmtbAEpJVLKSE6lREop2fry3dgMuXwqoHo25FK6XHru4xcqEEIACF+Ap6wkAfcyzYmulI/0lJRT5S3TVXpEkVC23Vi+V95c1ir/LHuKv8oe51/xGOUjPZSP9ABg4jCVaZIPlrwhVaVxcev3c/6xGaqyaCz87mCSOMq1+6cyTQCJLf36+pv+faYCWtkCZ681RsC5fIpfmlrJaWTqeub5logQgDn5FHL7EcTRFDO1QV8FTN6/FLAt5yXq+PVtdr56l1w+5TtlZQtk5rUwMtEZSWplC2y9sQWA4wtPFHW3LOkPRT73xCcAdJ2toLGyl8bK3oCQJBG6ELn9SECElS1w5ae9gDvZclHVNla+cNAnBjwLdyOlRAhBY2VvhKBvcvOMFuvFiKO7fbxaWYlLRrc6l0/5AvomN8dWWoqI8AwBwiwGPn6hwp9kRSxHcwGsSFsR0XGbWpLIWAEq9CRhYv26SKcCGCFErIiwC5AwhMp2dVMSuS5Cx8jRHEKIxI0oVoDaA0rZkEoJJULPGdcGvwWVT9QlJoJgr4s5ouNUhCY/IMQXkJnXQi6f4uO6PNdjks7UhjhxIm0F+m5lC7T/8z6VmstlAAdWXyWXT3F49WV2DWZjk4q05f+KhY6LE105/CmTS3cAcC9jSRPAFgYHVl+l9dslgakOOCAlVQ173AuLm+FaT5R9cTPPrvkZgNvnO9zV4OVTg62KmVy6AxvbdcDBxBZGoGK9Tzq5ShxbvRDcPt8BQFXDHtRjXs+rwsHAxnQFfHBxoXAwqXl6jQ8Ir4Y7A4e4M3AIgHWddqwAdV3HKuJcPhVony1MHIzpZWhjMv7HAAB9X3wVS6AqKxZx/yviM22vA/Dj8vewMXluuEtMCxAGLS+N++D2LdlpF671sK7T5tTgQzJr2xjrrvaT3/97yj8e664ms7aNU4MPXTe8OZGjOZ9cpC1sDGzvKRBwQInYsP80i+YHd7Gx7mre3TSfse5qJvr3+eRPzp3ji5jo3xfAhR3YsP80w7UH3ZnDnbnANL1Vf0ua3nh8+E2NPzTz1rcz8cP3Lmi83z33ROjhX69Z754vWObjlIih2sMY2Cwd2isiArZnb0tT2pg4mNKm8+K0CJWU8f4IcSRCWJG2GFjRhSHd2k0caodaowLCIsJOFIukjUekLc6tOIaBwyPYGNKhfmiXzxt5HDsY3nuSe/5O/TginSxCWZtEfmblSWwct1YJMrSHxO4o27K/ScNrw2yd0Mk/f/E0j/IfhmorNq9c2RbgjH0f+Cz/jHC8pWJj4GB6ThR/DujkJ1edAXDv9/KEyWGG770kJyDZcoBjq770K1aDt/Hyxliukj44w4NpSofDFxdEcB/V5TWMi2++9FpRjll98er7hCnVdqIc0o8ddg42lJT7fz+5dOVMdmd7AAAAAElFTkSuQmCC" @@ -42,7 +43,7 @@ actual class LittleKtProps { actual fun createLittleKtApp(action: LittleKtProps.() -> Unit): LittleKtApp { val props = LittleKtProps().apply(action) System.setProperty("jextract.trace.downcalls", props.traceWgpu.toString()) - loadNativesFromClasspath() + WGPU.loadLibrary() return LittleKtApp( LwjglContext( JvmConfiguration( @@ -64,10 +65,6 @@ actual fun createLittleKtApp(action: LittleKtProps.() -> Unit): LittleKtApp { ) } -private fun loadNativesFromClasspath() { - SharedLibraryLoader().load("wgpu_native") -} - /** * @author Colton Daily * @date 11/17/2021 diff --git a/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt b/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt index 3b6f06764..b3360e480 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LwjglContext.kt @@ -13,8 +13,9 @@ import com.littlekt.log.Logger import com.littlekt.resources.internal.InternalResources import com.littlekt.util.datastructure.fastForEach import com.littlekt.util.now -import com.littlekt.wgpu.WGPU.* -import com.littlekt.wgpu.WGPULogCallback +import io.ygdrasil.wgpu.internal.jvm.panama.WGPULogCallback +import io.ygdrasil.wgpu.internal.jvm.panama.wgpu_h +import io.ygdrasil.wgpu.internal.jvm.panama.wgpu_h.* import java.lang.foreign.Arena import java.nio.ByteBuffer import java.nio.IntBuffer @@ -27,6 +28,7 @@ import org.lwjgl.glfw.GLFWErrorCallback import org.lwjgl.glfw.GLFWImage import org.lwjgl.system.MemoryStack import org.lwjgl.system.MemoryUtil +import java.lang.foreign.MemorySegment /** * @author Colton Daily @@ -224,6 +226,7 @@ class LwjglContext(override val configuration: JvmConfiguration) : Context() { wgpuSetLogCallback(WGPULogCallback.allocate(callback, scope), NULL()) wgpuSetLogLevel(WGPULogLevel_Trace()) + } private fun updateFramebufferInfo() { diff --git a/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt b/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt index 0650c9edc..dbb4cc96d 100644 --- a/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt +++ b/core/src/jvmMain/kotlin/com/littlekt/LwjglGraphics.kt @@ -71,7 +71,7 @@ class LwjglGraphics(private val context: LwjglContext) : Graphics, Releasable { override lateinit var device: Device - override val preferredFormat by lazy { surface.preferredCanvasFormat ?: error("fail to get preferredCanvasFormat") } + override val preferredFormat by lazy { surface.preferredCanvasFormat ?: surface.supportedFormats.first() } private var hasSurfaceCapabilities = false override fun configureSurface( @@ -87,6 +87,7 @@ class LwjglGraphics(private val context: LwjglContext) : Graphics, Releasable { internal suspend fun requestAdapterAndDevice(powerPreference: PowerPreference) { adapter = instance.requestAdapter(surface, powerPreference) ?: error("No adapter found.") + surface.computeSurfaceCapabilities(adapter) requestDevice() } diff --git a/examples/build.gradle.kts b/examples/build.gradle.kts index 052df18e5..9a0c401a7 100644 --- a/examples/build.gradle.kts +++ b/examples/build.gradle.kts @@ -44,7 +44,11 @@ kotlin { } if (Os.isFamily(Os.FAMILY_MAC)) { register("jvmRun") { - jvmArgs("-XstartOnFirstThread") + jvmArgs( + "-XstartOnFirstThread", + "--add-opens=java.base/java.lang=ALL-UNNAMED", + "--enable-native-access=ALL-UNNAMED" + ) mainClass.set(mainClassName) kotlin { val mainCompile = targets["jvm"].compilations["main"] @@ -67,8 +71,8 @@ kotlin { commonWebpackConfig { devServer = (devServer - ?: org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpackConfig - .DevServer()) + ?: org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpackConfig + .DevServer()) .copy( open = mapOf("app" to mapOf("name" to "chrome")), ) diff --git a/settings.gradle.kts b/settings.gradle.kts index 911ecb287..22c40ac9e 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -24,10 +24,6 @@ rootProject.name = "littlekt" include(":core") -include("wgpu-natives") - -include("wgpu-ffm") - include("examples") include("scene-graph") diff --git a/wgpu-ffm/README.md b/wgpu-ffm/README.md deleted file mode 100644 index 1ccd242d8..000000000 --- a/wgpu-ffm/README.md +++ /dev/null @@ -1,7 +0,0 @@ -# LittleKt WebGPU Java FFM bindings - -### Command: - -**JDK22: cmd.exe** - -`jextract -t com.littlekt.wgpu --output ./wgpuj/src/main/java --header-class-name WGPU wgpu-natives/src/main/c/wgpu.h` \ No newline at end of file diff --git a/wgpu-ffm/build.gradle.kts b/wgpu-ffm/build.gradle.kts deleted file mode 100644 index eecbff912..000000000 --- a/wgpu-ffm/build.gradle.kts +++ /dev/null @@ -1,12 +0,0 @@ -plugins { - id("java-library") - id("module.publication") -} - -java { - sourceCompatibility = JavaVersion.VERSION_21 - targetCompatibility = JavaVersion.VERSION_21 - withSourcesJar() -} - -publishing { publications { create("wgpu-ffm") { from(components["java"]) } } } diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPU.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPU.java deleted file mode 100644 index 2c35aa350..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPU.java +++ /dev/null @@ -1,16948 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.util.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; - -public class WGPU { - - WGPU() { - // Should not be called directly - } - - static final boolean TRACE_DOWNCALLS = Boolean.getBoolean("jextract.trace.downcalls"); - - static void traceDowncall(String name, Object... args) { - String traceArgs = Arrays.stream(args) - .map(Object::toString) - .collect(Collectors.joining(", ")); - System.out.printf("%s(%s)\n", name, traceArgs); - } - - static MemorySegment findOrThrow(String symbol) { - return SYMBOL_LOOKUP.find(symbol) - .orElseThrow(() -> new UnsatisfiedLinkError("unresolved symbol: " + symbol)); - } - - static MethodHandle upcallHandle(Class fi, String name, FunctionDescriptor fdesc) { - try { - return MethodHandles.lookup().findVirtual(fi, name, fdesc.toMethodType()); - } catch (ReflectiveOperationException ex) { - throw new AssertionError(ex); - } - } - - static final SymbolLookup SYMBOL_LOOKUP = SymbolLookup.loaderLookup() - .or(Linker.nativeLinker().defaultLookup()); - - public static final ValueLayout.OfBoolean C_BOOL = ValueLayout.JAVA_BOOLEAN; - public static final ValueLayout.OfByte C_CHAR = ValueLayout.JAVA_BYTE; - public static final ValueLayout.OfShort C_SHORT = ValueLayout.JAVA_SHORT; - public static final ValueLayout.OfInt C_INT = ValueLayout.JAVA_INT; - public static final ValueLayout.OfLong C_LONG_LONG = ValueLayout.JAVA_LONG; - public static final ValueLayout.OfFloat C_FLOAT = ValueLayout.JAVA_FLOAT; - public static final ValueLayout.OfDouble C_DOUBLE = ValueLayout.JAVA_DOUBLE; - public static final AddressLayout C_POINTER = ValueLayout.ADDRESS - .withTargetLayout(MemoryLayout.sequenceLayout(java.lang.Long.MAX_VALUE, JAVA_BYTE)); - private static final int _VCRT_COMPILER_PREPROCESSOR = (int)1L; - private static final int _SAL_VERSION = (int)20L; - private static final int __SAL_H_VERSION = (int)180000000L; - private static final int _USE_DECLSPECS_FOR_SAL = (int)0L; - private static final int _USE_ATTRIBUTES_FOR_SAL = (int)0L; - private static final int _CRT_PACKING = (int)8L; - private static final int _HAS_EXCEPTIONS = (int)1L; - private static final int _HAS_CXX17 = (int)0L; - private static final int _HAS_CXX20 = (int)0L; - private static final int _HAS_NODISCARD = (int)0L; - private static final int WCHAR_MIN = (int)0L; - private static final int WCHAR_MAX = (int)65535L; - private static final int WINT_MIN = (int)0L; - /** - * {@snippet lang=c : - * #define WINT_MIN 0 - * } - */ - public static int WINT_MIN() { - return WINT_MIN; - } - private static final int WINT_MAX = (int)65535L; - /** - * {@snippet lang=c : - * typedef unsigned long long uintptr_t - * } - */ - public static final OfLong uintptr_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef char *va_list - * } - */ - public static final AddressLayout va_list = WGPU.C_POINTER; - - /** - * Variadic invoker class for: - * {@snippet lang=c : - * void __va_start(va_list *, ...) - * } - */ - public static class __va_start { - private static final FunctionDescriptor BASE_DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - private static final MemorySegment ADDR = WGPU.findOrThrow("__va_start"); - - private final MethodHandle handle; - private final FunctionDescriptor descriptor; - private final MethodHandle spreader; - - private __va_start(MethodHandle handle, FunctionDescriptor descriptor, MethodHandle spreader) { - this.handle = handle; - this.descriptor = descriptor; - this.spreader = spreader; - } - - /** - * Variadic invoker factory for: - * {@snippet lang=c : - * void __va_start(va_list *, ...) - * } - */ - public static __va_start makeInvoker(MemoryLayout... layouts) { - FunctionDescriptor desc$ = BASE_DESC.appendArgumentLayouts(layouts); - Linker.Option fva$ = Linker.Option.firstVariadicArg(BASE_DESC.argumentLayouts().size()); - var mh$ = Linker.nativeLinker().downcallHandle(ADDR, desc$, fva$); - var spreader$ = mh$.asSpreader(Object[].class, layouts.length); - return new __va_start(mh$, desc$, spreader$); - } - - /** - * {@return the address} - */ - public static MemorySegment address() { - return ADDR; - } - - /** - * {@return the specialized method handle} - */ - public MethodHandle handle() { - return handle; - } - - /** - * {@return the specialized descriptor} - */ - public FunctionDescriptor descriptor() { - return descriptor; - } - - public void apply(MemorySegment x0, Object... x1) { - try { - if (TRACE_DOWNCALLS) { - traceDowncall("__va_start", x0, x1); - } - spreader.invokeExact(x0, x1); - } catch(IllegalArgumentException | ClassCastException ex$) { - throw ex$; // rethrow IAE from passing wrong number/type of args - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - } - /** - * {@snippet lang=c : - * typedef unsigned long long size_t - * } - */ - public static final OfLong size_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef long long ptrdiff_t - * } - */ - public static final OfLong ptrdiff_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef long long intptr_t - * } - */ - public static final OfLong intptr_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef _Bool __vcrt_bool - * } - */ - public static final OfBoolean __vcrt_bool = WGPU.C_BOOL; - /** - * {@snippet lang=c : - * typedef unsigned short wchar_t - * } - */ - public static final OfShort wchar_t = WGPU.C_SHORT; - - private static class __security_init_cookie { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("__security_init_cookie"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void __security_init_cookie() - * } - */ - public static FunctionDescriptor __security_init_cookie$descriptor() { - return __security_init_cookie.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void __security_init_cookie() - * } - */ - public static MethodHandle __security_init_cookie$handle() { - return __security_init_cookie.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void __security_init_cookie() - * } - */ - public static MemorySegment __security_init_cookie$address() { - return __security_init_cookie.ADDR; - } - - /** - * {@snippet lang=c : - * void __security_init_cookie() - * } - */ - public static void __security_init_cookie() { - var mh$ = __security_init_cookie.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("__security_init_cookie"); - } - mh$.invokeExact(); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class __security_check_cookie { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("__security_check_cookie"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void __security_check_cookie(uintptr_t _StackCookie) - * } - */ - public static FunctionDescriptor __security_check_cookie$descriptor() { - return __security_check_cookie.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void __security_check_cookie(uintptr_t _StackCookie) - * } - */ - public static MethodHandle __security_check_cookie$handle() { - return __security_check_cookie.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void __security_check_cookie(uintptr_t _StackCookie) - * } - */ - public static MemorySegment __security_check_cookie$address() { - return __security_check_cookie.ADDR; - } - - /** - * {@snippet lang=c : - * void __security_check_cookie(uintptr_t _StackCookie) - * } - */ - public static void __security_check_cookie(long _StackCookie) { - var mh$ = __security_check_cookie.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("__security_check_cookie", _StackCookie); - } - mh$.invokeExact(_StackCookie); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class __report_gsfailure { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("__report_gsfailure"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - private static class __security_cookie$constants { - public static final OfLong LAYOUT = WGPU.C_LONG_LONG; - public static final MemorySegment SEGMENT = WGPU.findOrThrow("__security_cookie").reinterpret(LAYOUT.byteSize()); - } - - /** - * Segment for variable: - * {@snippet lang=c : - * extern uintptr_t __security_cookie - * } - */ - public static MemorySegment __security_cookie$segment() { - return __security_cookie$constants.SEGMENT; - } - - /** - * Getter for variable: - * {@snippet lang=c : - * extern uintptr_t __security_cookie - * } - */ - public static long __security_cookie() { - return __security_cookie$constants.SEGMENT.get(__security_cookie$constants.LAYOUT, 0L); - } - - /** - * Setter for variable: - * {@snippet lang=c : - * extern uintptr_t __security_cookie - * } - */ - public static void __security_cookie(long varValue) { - __security_cookie$constants.SEGMENT.set(__security_cookie$constants.LAYOUT, 0L, varValue); - } - /** - * {@snippet lang=c : - * typedef signed char int8_t - * } - */ - public static final OfByte int8_t = WGPU.C_CHAR; - /** - * {@snippet lang=c : - * typedef short int16_t - * } - */ - public static final OfShort int16_t = WGPU.C_SHORT; - /** - * {@snippet lang=c : - * typedef int int32_t - * } - */ - public static final OfInt int32_t = WGPU.C_INT; - /** - * {@snippet lang=c : - * typedef long long int64_t - * } - */ - public static final OfLong int64_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef unsigned char uint8_t - * } - */ - public static final OfByte uint8_t = WGPU.C_CHAR; - /** - * {@snippet lang=c : - * typedef unsigned short uint16_t - * } - */ - public static final OfShort uint16_t = WGPU.C_SHORT; - /** - * {@snippet lang=c : - * typedef unsigned int uint32_t - * } - */ - public static final OfInt uint32_t = WGPU.C_INT; - /** - * {@snippet lang=c : - * typedef unsigned long long uint64_t - * } - */ - public static final OfLong uint64_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef signed char int_least8_t - * } - */ - public static final OfByte int_least8_t = WGPU.C_CHAR; - /** - * {@snippet lang=c : - * typedef short int_least16_t - * } - */ - public static final OfShort int_least16_t = WGPU.C_SHORT; - /** - * {@snippet lang=c : - * typedef int int_least32_t - * } - */ - public static final OfInt int_least32_t = WGPU.C_INT; - /** - * {@snippet lang=c : - * typedef long long int_least64_t - * } - */ - public static final OfLong int_least64_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef unsigned char uint_least8_t - * } - */ - public static final OfByte uint_least8_t = WGPU.C_CHAR; - /** - * {@snippet lang=c : - * typedef unsigned short uint_least16_t - * } - */ - public static final OfShort uint_least16_t = WGPU.C_SHORT; - /** - * {@snippet lang=c : - * typedef unsigned int uint_least32_t - * } - */ - public static final OfInt uint_least32_t = WGPU.C_INT; - /** - * {@snippet lang=c : - * typedef unsigned long long uint_least64_t - * } - */ - public static final OfLong uint_least64_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef signed char int_fast8_t - * } - */ - public static final OfByte int_fast8_t = WGPU.C_CHAR; - /** - * {@snippet lang=c : - * typedef int int_fast16_t - * } - */ - public static final OfInt int_fast16_t = WGPU.C_INT; - /** - * {@snippet lang=c : - * typedef int int_fast32_t - * } - */ - public static final OfInt int_fast32_t = WGPU.C_INT; - /** - * {@snippet lang=c : - * typedef long long int_fast64_t - * } - */ - public static final OfLong int_fast64_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef unsigned char uint_fast8_t - * } - */ - public static final OfByte uint_fast8_t = WGPU.C_CHAR; - /** - * {@snippet lang=c : - * typedef unsigned int uint_fast16_t - * } - */ - public static final OfInt uint_fast16_t = WGPU.C_INT; - /** - * {@snippet lang=c : - * typedef unsigned int uint_fast32_t - * } - */ - public static final OfInt uint_fast32_t = WGPU.C_INT; - /** - * {@snippet lang=c : - * typedef unsigned long long uint_fast64_t - * } - */ - public static final OfLong uint_fast64_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef long long intmax_t - * } - */ - public static final OfLong intmax_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef unsigned long long uintmax_t - * } - */ - public static final OfLong uintmax_t = WGPU.C_LONG_LONG; - /** - * {@snippet lang=c : - * typedef double max_align_t - * } - */ - public static final OfDouble max_align_t = WGPU.C_DOUBLE; - /** - * {@snippet lang=c : - * typedef uint32_t WGPUFlags - * } - */ - public static final OfInt WGPUFlags = WGPU.C_INT; - /** - * {@snippet lang=c : - * typedef uint32_t WGPUBool - * } - */ - public static final OfInt WGPUBool = WGPU.C_INT; - /** - * {@snippet lang=c : - * typedef struct WGPUAdapterImpl *WGPUAdapter - * } - */ - public static final AddressLayout WGPUAdapter = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUBindGroupImpl *WGPUBindGroup - * } - */ - public static final AddressLayout WGPUBindGroup = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUBindGroupLayoutImpl *WGPUBindGroupLayout - * } - */ - public static final AddressLayout WGPUBindGroupLayout = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUBufferImpl *WGPUBuffer - * } - */ - public static final AddressLayout WGPUBuffer = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUCommandBufferImpl *WGPUCommandBuffer - * } - */ - public static final AddressLayout WGPUCommandBuffer = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUCommandEncoderImpl *WGPUCommandEncoder - * } - */ - public static final AddressLayout WGPUCommandEncoder = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUComputePassEncoderImpl *WGPUComputePassEncoder - * } - */ - public static final AddressLayout WGPUComputePassEncoder = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUComputePipelineImpl *WGPUComputePipeline - * } - */ - public static final AddressLayout WGPUComputePipeline = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUDeviceImpl *WGPUDevice - * } - */ - public static final AddressLayout WGPUDevice = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUInstanceImpl *WGPUInstance - * } - */ - public static final AddressLayout WGPUInstance = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUPipelineLayoutImpl *WGPUPipelineLayout - * } - */ - public static final AddressLayout WGPUPipelineLayout = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUQuerySetImpl *WGPUQuerySet - * } - */ - public static final AddressLayout WGPUQuerySet = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUQueueImpl *WGPUQueue - * } - */ - public static final AddressLayout WGPUQueue = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPURenderBundleImpl *WGPURenderBundle - * } - */ - public static final AddressLayout WGPURenderBundle = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPURenderBundleEncoderImpl *WGPURenderBundleEncoder - * } - */ - public static final AddressLayout WGPURenderBundleEncoder = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPURenderPassEncoderImpl *WGPURenderPassEncoder - * } - */ - public static final AddressLayout WGPURenderPassEncoder = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPURenderPipelineImpl *WGPURenderPipeline - * } - */ - public static final AddressLayout WGPURenderPipeline = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUSamplerImpl *WGPUSampler - * } - */ - public static final AddressLayout WGPUSampler = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUShaderModuleImpl *WGPUShaderModule - * } - */ - public static final AddressLayout WGPUShaderModule = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUSurfaceImpl *WGPUSurface - * } - */ - public static final AddressLayout WGPUSurface = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUTextureImpl *WGPUTexture - * } - */ - public static final AddressLayout WGPUTexture = WGPU.C_POINTER; - /** - * {@snippet lang=c : - * typedef struct WGPUTextureViewImpl *WGPUTextureView - * } - */ - public static final AddressLayout WGPUTextureView = WGPU.C_POINTER; - private static final int WGPUAdapterType_DiscreteGPU = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUAdapterType.WGPUAdapterType_DiscreteGPU = 0 - * } - */ - public static int WGPUAdapterType_DiscreteGPU() { - return WGPUAdapterType_DiscreteGPU; - } - private static final int WGPUAdapterType_IntegratedGPU = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUAdapterType.WGPUAdapterType_IntegratedGPU = 1 - * } - */ - public static int WGPUAdapterType_IntegratedGPU() { - return WGPUAdapterType_IntegratedGPU; - } - private static final int WGPUAdapterType_CPU = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUAdapterType.WGPUAdapterType_CPU = 2 - * } - */ - public static int WGPUAdapterType_CPU() { - return WGPUAdapterType_CPU; - } - private static final int WGPUAdapterType_Unknown = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUAdapterType.WGPUAdapterType_Unknown = 3 - * } - */ - public static int WGPUAdapterType_Unknown() { - return WGPUAdapterType_Unknown; - } - private static final int WGPUAdapterType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUAdapterType.WGPUAdapterType_Force32 = 2147483647 - * } - */ - public static int WGPUAdapterType_Force32() { - return WGPUAdapterType_Force32; - } - private static final int WGPUAddressMode_Repeat = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUAddressMode.WGPUAddressMode_Repeat = 0 - * } - */ - public static int WGPUAddressMode_Repeat() { - return WGPUAddressMode_Repeat; - } - private static final int WGPUAddressMode_MirrorRepeat = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUAddressMode.WGPUAddressMode_MirrorRepeat = 1 - * } - */ - public static int WGPUAddressMode_MirrorRepeat() { - return WGPUAddressMode_MirrorRepeat; - } - private static final int WGPUAddressMode_ClampToEdge = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUAddressMode.WGPUAddressMode_ClampToEdge = 2 - * } - */ - public static int WGPUAddressMode_ClampToEdge() { - return WGPUAddressMode_ClampToEdge; - } - private static final int WGPUAddressMode_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUAddressMode.WGPUAddressMode_Force32 = 2147483647 - * } - */ - public static int WGPUAddressMode_Force32() { - return WGPUAddressMode_Force32; - } - private static final int WGPUBackendType_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUBackendType.WGPUBackendType_Undefined = 0 - * } - */ - public static int WGPUBackendType_Undefined() { - return WGPUBackendType_Undefined; - } - private static final int WGPUBackendType_Null = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUBackendType.WGPUBackendType_Null = 1 - * } - */ - public static int WGPUBackendType_Null() { - return WGPUBackendType_Null; - } - private static final int WGPUBackendType_WebGPU = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUBackendType.WGPUBackendType_WebGPU = 2 - * } - */ - public static int WGPUBackendType_WebGPU() { - return WGPUBackendType_WebGPU; - } - private static final int WGPUBackendType_D3D11 = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUBackendType.WGPUBackendType_D3D11 = 3 - * } - */ - public static int WGPUBackendType_D3D11() { - return WGPUBackendType_D3D11; - } - private static final int WGPUBackendType_D3D12 = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUBackendType.WGPUBackendType_D3D12 = 4 - * } - */ - public static int WGPUBackendType_D3D12() { - return WGPUBackendType_D3D12; - } - private static final int WGPUBackendType_Metal = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUBackendType.WGPUBackendType_Metal = 5 - * } - */ - public static int WGPUBackendType_Metal() { - return WGPUBackendType_Metal; - } - private static final int WGPUBackendType_Vulkan = (int)6L; - /** - * {@snippet lang=c : - * enum WGPUBackendType.WGPUBackendType_Vulkan = 6 - * } - */ - public static int WGPUBackendType_Vulkan() { - return WGPUBackendType_Vulkan; - } - private static final int WGPUBackendType_OpenGL = (int)7L; - /** - * {@snippet lang=c : - * enum WGPUBackendType.WGPUBackendType_OpenGL = 7 - * } - */ - public static int WGPUBackendType_OpenGL() { - return WGPUBackendType_OpenGL; - } - private static final int WGPUBackendType_OpenGLES = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUBackendType.WGPUBackendType_OpenGLES = 8 - * } - */ - public static int WGPUBackendType_OpenGLES() { - return WGPUBackendType_OpenGLES; - } - private static final int WGPUBackendType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUBackendType.WGPUBackendType_Force32 = 2147483647 - * } - */ - public static int WGPUBackendType_Force32() { - return WGPUBackendType_Force32; - } - private static final int WGPUBlendFactor_Zero = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_Zero = 0 - * } - */ - public static int WGPUBlendFactor_Zero() { - return WGPUBlendFactor_Zero; - } - private static final int WGPUBlendFactor_One = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_One = 1 - * } - */ - public static int WGPUBlendFactor_One() { - return WGPUBlendFactor_One; - } - private static final int WGPUBlendFactor_Src = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_Src = 2 - * } - */ - public static int WGPUBlendFactor_Src() { - return WGPUBlendFactor_Src; - } - private static final int WGPUBlendFactor_OneMinusSrc = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_OneMinusSrc = 3 - * } - */ - public static int WGPUBlendFactor_OneMinusSrc() { - return WGPUBlendFactor_OneMinusSrc; - } - private static final int WGPUBlendFactor_SrcAlpha = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_SrcAlpha = 4 - * } - */ - public static int WGPUBlendFactor_SrcAlpha() { - return WGPUBlendFactor_SrcAlpha; - } - private static final int WGPUBlendFactor_OneMinusSrcAlpha = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_OneMinusSrcAlpha = 5 - * } - */ - public static int WGPUBlendFactor_OneMinusSrcAlpha() { - return WGPUBlendFactor_OneMinusSrcAlpha; - } - private static final int WGPUBlendFactor_Dst = (int)6L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_Dst = 6 - * } - */ - public static int WGPUBlendFactor_Dst() { - return WGPUBlendFactor_Dst; - } - private static final int WGPUBlendFactor_OneMinusDst = (int)7L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_OneMinusDst = 7 - * } - */ - public static int WGPUBlendFactor_OneMinusDst() { - return WGPUBlendFactor_OneMinusDst; - } - private static final int WGPUBlendFactor_DstAlpha = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_DstAlpha = 8 - * } - */ - public static int WGPUBlendFactor_DstAlpha() { - return WGPUBlendFactor_DstAlpha; - } - private static final int WGPUBlendFactor_OneMinusDstAlpha = (int)9L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_OneMinusDstAlpha = 9 - * } - */ - public static int WGPUBlendFactor_OneMinusDstAlpha() { - return WGPUBlendFactor_OneMinusDstAlpha; - } - private static final int WGPUBlendFactor_SrcAlphaSaturated = (int)10L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_SrcAlphaSaturated = 10 - * } - */ - public static int WGPUBlendFactor_SrcAlphaSaturated() { - return WGPUBlendFactor_SrcAlphaSaturated; - } - private static final int WGPUBlendFactor_Constant = (int)11L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_Constant = 11 - * } - */ - public static int WGPUBlendFactor_Constant() { - return WGPUBlendFactor_Constant; - } - private static final int WGPUBlendFactor_OneMinusConstant = (int)12L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_OneMinusConstant = 12 - * } - */ - public static int WGPUBlendFactor_OneMinusConstant() { - return WGPUBlendFactor_OneMinusConstant; - } - private static final int WGPUBlendFactor_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUBlendFactor.WGPUBlendFactor_Force32 = 2147483647 - * } - */ - public static int WGPUBlendFactor_Force32() { - return WGPUBlendFactor_Force32; - } - private static final int WGPUBlendOperation_Add = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUBlendOperation.WGPUBlendOperation_Add = 0 - * } - */ - public static int WGPUBlendOperation_Add() { - return WGPUBlendOperation_Add; - } - private static final int WGPUBlendOperation_Subtract = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUBlendOperation.WGPUBlendOperation_Subtract = 1 - * } - */ - public static int WGPUBlendOperation_Subtract() { - return WGPUBlendOperation_Subtract; - } - private static final int WGPUBlendOperation_ReverseSubtract = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUBlendOperation.WGPUBlendOperation_ReverseSubtract = 2 - * } - */ - public static int WGPUBlendOperation_ReverseSubtract() { - return WGPUBlendOperation_ReverseSubtract; - } - private static final int WGPUBlendOperation_Min = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUBlendOperation.WGPUBlendOperation_Min = 3 - * } - */ - public static int WGPUBlendOperation_Min() { - return WGPUBlendOperation_Min; - } - private static final int WGPUBlendOperation_Max = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUBlendOperation.WGPUBlendOperation_Max = 4 - * } - */ - public static int WGPUBlendOperation_Max() { - return WGPUBlendOperation_Max; - } - private static final int WGPUBlendOperation_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUBlendOperation.WGPUBlendOperation_Force32 = 2147483647 - * } - */ - public static int WGPUBlendOperation_Force32() { - return WGPUBlendOperation_Force32; - } - private static final int WGPUBufferBindingType_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUBufferBindingType.WGPUBufferBindingType_Undefined = 0 - * } - */ - public static int WGPUBufferBindingType_Undefined() { - return WGPUBufferBindingType_Undefined; - } - private static final int WGPUBufferBindingType_Uniform = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUBufferBindingType.WGPUBufferBindingType_Uniform = 1 - * } - */ - public static int WGPUBufferBindingType_Uniform() { - return WGPUBufferBindingType_Uniform; - } - private static final int WGPUBufferBindingType_Storage = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUBufferBindingType.WGPUBufferBindingType_Storage = 2 - * } - */ - public static int WGPUBufferBindingType_Storage() { - return WGPUBufferBindingType_Storage; - } - private static final int WGPUBufferBindingType_ReadOnlyStorage = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUBufferBindingType.WGPUBufferBindingType_ReadOnlyStorage = 3 - * } - */ - public static int WGPUBufferBindingType_ReadOnlyStorage() { - return WGPUBufferBindingType_ReadOnlyStorage; - } - private static final int WGPUBufferBindingType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUBufferBindingType.WGPUBufferBindingType_Force32 = 2147483647 - * } - */ - public static int WGPUBufferBindingType_Force32() { - return WGPUBufferBindingType_Force32; - } - private static final int WGPUBufferMapAsyncStatus_Success = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapAsyncStatus.WGPUBufferMapAsyncStatus_Success = 0 - * } - */ - public static int WGPUBufferMapAsyncStatus_Success() { - return WGPUBufferMapAsyncStatus_Success; - } - private static final int WGPUBufferMapAsyncStatus_ValidationError = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapAsyncStatus.WGPUBufferMapAsyncStatus_ValidationError = 1 - * } - */ - public static int WGPUBufferMapAsyncStatus_ValidationError() { - return WGPUBufferMapAsyncStatus_ValidationError; - } - private static final int WGPUBufferMapAsyncStatus_Unknown = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapAsyncStatus.WGPUBufferMapAsyncStatus_Unknown = 2 - * } - */ - public static int WGPUBufferMapAsyncStatus_Unknown() { - return WGPUBufferMapAsyncStatus_Unknown; - } - private static final int WGPUBufferMapAsyncStatus_DeviceLost = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapAsyncStatus.WGPUBufferMapAsyncStatus_DeviceLost = 3 - * } - */ - public static int WGPUBufferMapAsyncStatus_DeviceLost() { - return WGPUBufferMapAsyncStatus_DeviceLost; - } - private static final int WGPUBufferMapAsyncStatus_DestroyedBeforeCallback = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapAsyncStatus.WGPUBufferMapAsyncStatus_DestroyedBeforeCallback = 4 - * } - */ - public static int WGPUBufferMapAsyncStatus_DestroyedBeforeCallback() { - return WGPUBufferMapAsyncStatus_DestroyedBeforeCallback; - } - private static final int WGPUBufferMapAsyncStatus_UnmappedBeforeCallback = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapAsyncStatus.WGPUBufferMapAsyncStatus_UnmappedBeforeCallback = 5 - * } - */ - public static int WGPUBufferMapAsyncStatus_UnmappedBeforeCallback() { - return WGPUBufferMapAsyncStatus_UnmappedBeforeCallback; - } - private static final int WGPUBufferMapAsyncStatus_MappingAlreadyPending = (int)6L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapAsyncStatus.WGPUBufferMapAsyncStatus_MappingAlreadyPending = 6 - * } - */ - public static int WGPUBufferMapAsyncStatus_MappingAlreadyPending() { - return WGPUBufferMapAsyncStatus_MappingAlreadyPending; - } - private static final int WGPUBufferMapAsyncStatus_OffsetOutOfRange = (int)7L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapAsyncStatus.WGPUBufferMapAsyncStatus_OffsetOutOfRange = 7 - * } - */ - public static int WGPUBufferMapAsyncStatus_OffsetOutOfRange() { - return WGPUBufferMapAsyncStatus_OffsetOutOfRange; - } - private static final int WGPUBufferMapAsyncStatus_SizeOutOfRange = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapAsyncStatus.WGPUBufferMapAsyncStatus_SizeOutOfRange = 8 - * } - */ - public static int WGPUBufferMapAsyncStatus_SizeOutOfRange() { - return WGPUBufferMapAsyncStatus_SizeOutOfRange; - } - private static final int WGPUBufferMapAsyncStatus_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapAsyncStatus.WGPUBufferMapAsyncStatus_Force32 = 2147483647 - * } - */ - public static int WGPUBufferMapAsyncStatus_Force32() { - return WGPUBufferMapAsyncStatus_Force32; - } - private static final int WGPUBufferMapState_Unmapped = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapState.WGPUBufferMapState_Unmapped = 0 - * } - */ - public static int WGPUBufferMapState_Unmapped() { - return WGPUBufferMapState_Unmapped; - } - private static final int WGPUBufferMapState_Pending = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapState.WGPUBufferMapState_Pending = 1 - * } - */ - public static int WGPUBufferMapState_Pending() { - return WGPUBufferMapState_Pending; - } - private static final int WGPUBufferMapState_Mapped = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapState.WGPUBufferMapState_Mapped = 2 - * } - */ - public static int WGPUBufferMapState_Mapped() { - return WGPUBufferMapState_Mapped; - } - private static final int WGPUBufferMapState_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUBufferMapState.WGPUBufferMapState_Force32 = 2147483647 - * } - */ - public static int WGPUBufferMapState_Force32() { - return WGPUBufferMapState_Force32; - } - private static final int WGPUCompareFunction_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUCompareFunction.WGPUCompareFunction_Undefined = 0 - * } - */ - public static int WGPUCompareFunction_Undefined() { - return WGPUCompareFunction_Undefined; - } - private static final int WGPUCompareFunction_Never = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUCompareFunction.WGPUCompareFunction_Never = 1 - * } - */ - public static int WGPUCompareFunction_Never() { - return WGPUCompareFunction_Never; - } - private static final int WGPUCompareFunction_Less = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUCompareFunction.WGPUCompareFunction_Less = 2 - * } - */ - public static int WGPUCompareFunction_Less() { - return WGPUCompareFunction_Less; - } - private static final int WGPUCompareFunction_LessEqual = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUCompareFunction.WGPUCompareFunction_LessEqual = 3 - * } - */ - public static int WGPUCompareFunction_LessEqual() { - return WGPUCompareFunction_LessEqual; - } - private static final int WGPUCompareFunction_Greater = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUCompareFunction.WGPUCompareFunction_Greater = 4 - * } - */ - public static int WGPUCompareFunction_Greater() { - return WGPUCompareFunction_Greater; - } - private static final int WGPUCompareFunction_GreaterEqual = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUCompareFunction.WGPUCompareFunction_GreaterEqual = 5 - * } - */ - public static int WGPUCompareFunction_GreaterEqual() { - return WGPUCompareFunction_GreaterEqual; - } - private static final int WGPUCompareFunction_Equal = (int)6L; - /** - * {@snippet lang=c : - * enum WGPUCompareFunction.WGPUCompareFunction_Equal = 6 - * } - */ - public static int WGPUCompareFunction_Equal() { - return WGPUCompareFunction_Equal; - } - private static final int WGPUCompareFunction_NotEqual = (int)7L; - /** - * {@snippet lang=c : - * enum WGPUCompareFunction.WGPUCompareFunction_NotEqual = 7 - * } - */ - public static int WGPUCompareFunction_NotEqual() { - return WGPUCompareFunction_NotEqual; - } - private static final int WGPUCompareFunction_Always = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUCompareFunction.WGPUCompareFunction_Always = 8 - * } - */ - public static int WGPUCompareFunction_Always() { - return WGPUCompareFunction_Always; - } - private static final int WGPUCompareFunction_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUCompareFunction.WGPUCompareFunction_Force32 = 2147483647 - * } - */ - public static int WGPUCompareFunction_Force32() { - return WGPUCompareFunction_Force32; - } - private static final int WGPUCompilationInfoRequestStatus_Success = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUCompilationInfoRequestStatus.WGPUCompilationInfoRequestStatus_Success = 0 - * } - */ - public static int WGPUCompilationInfoRequestStatus_Success() { - return WGPUCompilationInfoRequestStatus_Success; - } - private static final int WGPUCompilationInfoRequestStatus_Error = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUCompilationInfoRequestStatus.WGPUCompilationInfoRequestStatus_Error = 1 - * } - */ - public static int WGPUCompilationInfoRequestStatus_Error() { - return WGPUCompilationInfoRequestStatus_Error; - } - private static final int WGPUCompilationInfoRequestStatus_DeviceLost = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUCompilationInfoRequestStatus.WGPUCompilationInfoRequestStatus_DeviceLost = 2 - * } - */ - public static int WGPUCompilationInfoRequestStatus_DeviceLost() { - return WGPUCompilationInfoRequestStatus_DeviceLost; - } - private static final int WGPUCompilationInfoRequestStatus_Unknown = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUCompilationInfoRequestStatus.WGPUCompilationInfoRequestStatus_Unknown = 3 - * } - */ - public static int WGPUCompilationInfoRequestStatus_Unknown() { - return WGPUCompilationInfoRequestStatus_Unknown; - } - private static final int WGPUCompilationInfoRequestStatus_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUCompilationInfoRequestStatus.WGPUCompilationInfoRequestStatus_Force32 = 2147483647 - * } - */ - public static int WGPUCompilationInfoRequestStatus_Force32() { - return WGPUCompilationInfoRequestStatus_Force32; - } - private static final int WGPUCompilationMessageType_Error = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUCompilationMessageType.WGPUCompilationMessageType_Error = 0 - * } - */ - public static int WGPUCompilationMessageType_Error() { - return WGPUCompilationMessageType_Error; - } - private static final int WGPUCompilationMessageType_Warning = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUCompilationMessageType.WGPUCompilationMessageType_Warning = 1 - * } - */ - public static int WGPUCompilationMessageType_Warning() { - return WGPUCompilationMessageType_Warning; - } - private static final int WGPUCompilationMessageType_Info = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUCompilationMessageType.WGPUCompilationMessageType_Info = 2 - * } - */ - public static int WGPUCompilationMessageType_Info() { - return WGPUCompilationMessageType_Info; - } - private static final int WGPUCompilationMessageType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUCompilationMessageType.WGPUCompilationMessageType_Force32 = 2147483647 - * } - */ - public static int WGPUCompilationMessageType_Force32() { - return WGPUCompilationMessageType_Force32; - } - private static final int WGPUCompositeAlphaMode_Auto = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUCompositeAlphaMode.WGPUCompositeAlphaMode_Auto = 0 - * } - */ - public static int WGPUCompositeAlphaMode_Auto() { - return WGPUCompositeAlphaMode_Auto; - } - private static final int WGPUCompositeAlphaMode_Opaque = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUCompositeAlphaMode.WGPUCompositeAlphaMode_Opaque = 1 - * } - */ - public static int WGPUCompositeAlphaMode_Opaque() { - return WGPUCompositeAlphaMode_Opaque; - } - private static final int WGPUCompositeAlphaMode_Premultiplied = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUCompositeAlphaMode.WGPUCompositeAlphaMode_Premultiplied = 2 - * } - */ - public static int WGPUCompositeAlphaMode_Premultiplied() { - return WGPUCompositeAlphaMode_Premultiplied; - } - private static final int WGPUCompositeAlphaMode_Unpremultiplied = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUCompositeAlphaMode.WGPUCompositeAlphaMode_Unpremultiplied = 3 - * } - */ - public static int WGPUCompositeAlphaMode_Unpremultiplied() { - return WGPUCompositeAlphaMode_Unpremultiplied; - } - private static final int WGPUCompositeAlphaMode_Inherit = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUCompositeAlphaMode.WGPUCompositeAlphaMode_Inherit = 4 - * } - */ - public static int WGPUCompositeAlphaMode_Inherit() { - return WGPUCompositeAlphaMode_Inherit; - } - private static final int WGPUCompositeAlphaMode_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUCompositeAlphaMode.WGPUCompositeAlphaMode_Force32 = 2147483647 - * } - */ - public static int WGPUCompositeAlphaMode_Force32() { - return WGPUCompositeAlphaMode_Force32; - } - private static final int WGPUCreatePipelineAsyncStatus_Success = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUCreatePipelineAsyncStatus.WGPUCreatePipelineAsyncStatus_Success = 0 - * } - */ - public static int WGPUCreatePipelineAsyncStatus_Success() { - return WGPUCreatePipelineAsyncStatus_Success; - } - private static final int WGPUCreatePipelineAsyncStatus_ValidationError = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUCreatePipelineAsyncStatus.WGPUCreatePipelineAsyncStatus_ValidationError = 1 - * } - */ - public static int WGPUCreatePipelineAsyncStatus_ValidationError() { - return WGPUCreatePipelineAsyncStatus_ValidationError; - } - private static final int WGPUCreatePipelineAsyncStatus_InternalError = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUCreatePipelineAsyncStatus.WGPUCreatePipelineAsyncStatus_InternalError = 2 - * } - */ - public static int WGPUCreatePipelineAsyncStatus_InternalError() { - return WGPUCreatePipelineAsyncStatus_InternalError; - } - private static final int WGPUCreatePipelineAsyncStatus_DeviceLost = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUCreatePipelineAsyncStatus.WGPUCreatePipelineAsyncStatus_DeviceLost = 3 - * } - */ - public static int WGPUCreatePipelineAsyncStatus_DeviceLost() { - return WGPUCreatePipelineAsyncStatus_DeviceLost; - } - private static final int WGPUCreatePipelineAsyncStatus_DeviceDestroyed = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUCreatePipelineAsyncStatus.WGPUCreatePipelineAsyncStatus_DeviceDestroyed = 4 - * } - */ - public static int WGPUCreatePipelineAsyncStatus_DeviceDestroyed() { - return WGPUCreatePipelineAsyncStatus_DeviceDestroyed; - } - private static final int WGPUCreatePipelineAsyncStatus_Unknown = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUCreatePipelineAsyncStatus.WGPUCreatePipelineAsyncStatus_Unknown = 5 - * } - */ - public static int WGPUCreatePipelineAsyncStatus_Unknown() { - return WGPUCreatePipelineAsyncStatus_Unknown; - } - private static final int WGPUCreatePipelineAsyncStatus_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUCreatePipelineAsyncStatus.WGPUCreatePipelineAsyncStatus_Force32 = 2147483647 - * } - */ - public static int WGPUCreatePipelineAsyncStatus_Force32() { - return WGPUCreatePipelineAsyncStatus_Force32; - } - private static final int WGPUCullMode_None = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUCullMode.WGPUCullMode_None = 0 - * } - */ - public static int WGPUCullMode_None() { - return WGPUCullMode_None; - } - private static final int WGPUCullMode_Front = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUCullMode.WGPUCullMode_Front = 1 - * } - */ - public static int WGPUCullMode_Front() { - return WGPUCullMode_Front; - } - private static final int WGPUCullMode_Back = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUCullMode.WGPUCullMode_Back = 2 - * } - */ - public static int WGPUCullMode_Back() { - return WGPUCullMode_Back; - } - private static final int WGPUCullMode_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUCullMode.WGPUCullMode_Force32 = 2147483647 - * } - */ - public static int WGPUCullMode_Force32() { - return WGPUCullMode_Force32; - } - private static final int WGPUDeviceLostReason_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUDeviceLostReason.WGPUDeviceLostReason_Undefined = 0 - * } - */ - public static int WGPUDeviceLostReason_Undefined() { - return WGPUDeviceLostReason_Undefined; - } - private static final int WGPUDeviceLostReason_Destroyed = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUDeviceLostReason.WGPUDeviceLostReason_Destroyed = 1 - * } - */ - public static int WGPUDeviceLostReason_Destroyed() { - return WGPUDeviceLostReason_Destroyed; - } - private static final int WGPUDeviceLostReason_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUDeviceLostReason.WGPUDeviceLostReason_Force32 = 2147483647 - * } - */ - public static int WGPUDeviceLostReason_Force32() { - return WGPUDeviceLostReason_Force32; - } - private static final int WGPUErrorFilter_Validation = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUErrorFilter.WGPUErrorFilter_Validation = 0 - * } - */ - public static int WGPUErrorFilter_Validation() { - return WGPUErrorFilter_Validation; - } - private static final int WGPUErrorFilter_OutOfMemory = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUErrorFilter.WGPUErrorFilter_OutOfMemory = 1 - * } - */ - public static int WGPUErrorFilter_OutOfMemory() { - return WGPUErrorFilter_OutOfMemory; - } - private static final int WGPUErrorFilter_Internal = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUErrorFilter.WGPUErrorFilter_Internal = 2 - * } - */ - public static int WGPUErrorFilter_Internal() { - return WGPUErrorFilter_Internal; - } - private static final int WGPUErrorFilter_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUErrorFilter.WGPUErrorFilter_Force32 = 2147483647 - * } - */ - public static int WGPUErrorFilter_Force32() { - return WGPUErrorFilter_Force32; - } - private static final int WGPUErrorType_NoError = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUErrorType.WGPUErrorType_NoError = 0 - * } - */ - public static int WGPUErrorType_NoError() { - return WGPUErrorType_NoError; - } - private static final int WGPUErrorType_Validation = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUErrorType.WGPUErrorType_Validation = 1 - * } - */ - public static int WGPUErrorType_Validation() { - return WGPUErrorType_Validation; - } - private static final int WGPUErrorType_OutOfMemory = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUErrorType.WGPUErrorType_OutOfMemory = 2 - * } - */ - public static int WGPUErrorType_OutOfMemory() { - return WGPUErrorType_OutOfMemory; - } - private static final int WGPUErrorType_Internal = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUErrorType.WGPUErrorType_Internal = 3 - * } - */ - public static int WGPUErrorType_Internal() { - return WGPUErrorType_Internal; - } - private static final int WGPUErrorType_Unknown = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUErrorType.WGPUErrorType_Unknown = 4 - * } - */ - public static int WGPUErrorType_Unknown() { - return WGPUErrorType_Unknown; - } - private static final int WGPUErrorType_DeviceLost = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUErrorType.WGPUErrorType_DeviceLost = 5 - * } - */ - public static int WGPUErrorType_DeviceLost() { - return WGPUErrorType_DeviceLost; - } - private static final int WGPUErrorType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUErrorType.WGPUErrorType_Force32 = 2147483647 - * } - */ - public static int WGPUErrorType_Force32() { - return WGPUErrorType_Force32; - } - private static final int WGPUFeatureName_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_Undefined = 0 - * } - */ - public static int WGPUFeatureName_Undefined() { - return WGPUFeatureName_Undefined; - } - private static final int WGPUFeatureName_DepthClipControl = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_DepthClipControl = 1 - * } - */ - public static int WGPUFeatureName_DepthClipControl() { - return WGPUFeatureName_DepthClipControl; - } - private static final int WGPUFeatureName_Depth32FloatStencil8 = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_Depth32FloatStencil8 = 2 - * } - */ - public static int WGPUFeatureName_Depth32FloatStencil8() { - return WGPUFeatureName_Depth32FloatStencil8; - } - private static final int WGPUFeatureName_TimestampQuery = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_TimestampQuery = 3 - * } - */ - public static int WGPUFeatureName_TimestampQuery() { - return WGPUFeatureName_TimestampQuery; - } - private static final int WGPUFeatureName_TextureCompressionBC = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_TextureCompressionBC = 4 - * } - */ - public static int WGPUFeatureName_TextureCompressionBC() { - return WGPUFeatureName_TextureCompressionBC; - } - private static final int WGPUFeatureName_TextureCompressionETC2 = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_TextureCompressionETC2 = 5 - * } - */ - public static int WGPUFeatureName_TextureCompressionETC2() { - return WGPUFeatureName_TextureCompressionETC2; - } - private static final int WGPUFeatureName_TextureCompressionASTC = (int)6L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_TextureCompressionASTC = 6 - * } - */ - public static int WGPUFeatureName_TextureCompressionASTC() { - return WGPUFeatureName_TextureCompressionASTC; - } - private static final int WGPUFeatureName_IndirectFirstInstance = (int)7L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_IndirectFirstInstance = 7 - * } - */ - public static int WGPUFeatureName_IndirectFirstInstance() { - return WGPUFeatureName_IndirectFirstInstance; - } - private static final int WGPUFeatureName_ShaderF16 = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_ShaderF16 = 8 - * } - */ - public static int WGPUFeatureName_ShaderF16() { - return WGPUFeatureName_ShaderF16; - } - private static final int WGPUFeatureName_RG11B10UfloatRenderable = (int)9L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_RG11B10UfloatRenderable = 9 - * } - */ - public static int WGPUFeatureName_RG11B10UfloatRenderable() { - return WGPUFeatureName_RG11B10UfloatRenderable; - } - private static final int WGPUFeatureName_BGRA8UnormStorage = (int)10L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_BGRA8UnormStorage = 10 - * } - */ - public static int WGPUFeatureName_BGRA8UnormStorage() { - return WGPUFeatureName_BGRA8UnormStorage; - } - private static final int WGPUFeatureName_Float32Filterable = (int)11L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_Float32Filterable = 11 - * } - */ - public static int WGPUFeatureName_Float32Filterable() { - return WGPUFeatureName_Float32Filterable; - } - private static final int WGPUFeatureName_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUFeatureName.WGPUFeatureName_Force32 = 2147483647 - * } - */ - public static int WGPUFeatureName_Force32() { - return WGPUFeatureName_Force32; - } - private static final int WGPUFilterMode_Nearest = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUFilterMode.WGPUFilterMode_Nearest = 0 - * } - */ - public static int WGPUFilterMode_Nearest() { - return WGPUFilterMode_Nearest; - } - private static final int WGPUFilterMode_Linear = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUFilterMode.WGPUFilterMode_Linear = 1 - * } - */ - public static int WGPUFilterMode_Linear() { - return WGPUFilterMode_Linear; - } - private static final int WGPUFilterMode_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUFilterMode.WGPUFilterMode_Force32 = 2147483647 - * } - */ - public static int WGPUFilterMode_Force32() { - return WGPUFilterMode_Force32; - } - private static final int WGPUFrontFace_CCW = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUFrontFace.WGPUFrontFace_CCW = 0 - * } - */ - public static int WGPUFrontFace_CCW() { - return WGPUFrontFace_CCW; - } - private static final int WGPUFrontFace_CW = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUFrontFace.WGPUFrontFace_CW = 1 - * } - */ - public static int WGPUFrontFace_CW() { - return WGPUFrontFace_CW; - } - private static final int WGPUFrontFace_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUFrontFace.WGPUFrontFace_Force32 = 2147483647 - * } - */ - public static int WGPUFrontFace_Force32() { - return WGPUFrontFace_Force32; - } - private static final int WGPUIndexFormat_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUIndexFormat.WGPUIndexFormat_Undefined = 0 - * } - */ - public static int WGPUIndexFormat_Undefined() { - return WGPUIndexFormat_Undefined; - } - private static final int WGPUIndexFormat_Uint16 = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUIndexFormat.WGPUIndexFormat_Uint16 = 1 - * } - */ - public static int WGPUIndexFormat_Uint16() { - return WGPUIndexFormat_Uint16; - } - private static final int WGPUIndexFormat_Uint32 = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUIndexFormat.WGPUIndexFormat_Uint32 = 2 - * } - */ - public static int WGPUIndexFormat_Uint32() { - return WGPUIndexFormat_Uint32; - } - private static final int WGPUIndexFormat_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUIndexFormat.WGPUIndexFormat_Force32 = 2147483647 - * } - */ - public static int WGPUIndexFormat_Force32() { - return WGPUIndexFormat_Force32; - } - private static final int WGPULoadOp_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPULoadOp.WGPULoadOp_Undefined = 0 - * } - */ - public static int WGPULoadOp_Undefined() { - return WGPULoadOp_Undefined; - } - private static final int WGPULoadOp_Clear = (int)1L; - /** - * {@snippet lang=c : - * enum WGPULoadOp.WGPULoadOp_Clear = 1 - * } - */ - public static int WGPULoadOp_Clear() { - return WGPULoadOp_Clear; - } - private static final int WGPULoadOp_Load = (int)2L; - /** - * {@snippet lang=c : - * enum WGPULoadOp.WGPULoadOp_Load = 2 - * } - */ - public static int WGPULoadOp_Load() { - return WGPULoadOp_Load; - } - private static final int WGPULoadOp_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPULoadOp.WGPULoadOp_Force32 = 2147483647 - * } - */ - public static int WGPULoadOp_Force32() { - return WGPULoadOp_Force32; - } - private static final int WGPUMipmapFilterMode_Nearest = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUMipmapFilterMode.WGPUMipmapFilterMode_Nearest = 0 - * } - */ - public static int WGPUMipmapFilterMode_Nearest() { - return WGPUMipmapFilterMode_Nearest; - } - private static final int WGPUMipmapFilterMode_Linear = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUMipmapFilterMode.WGPUMipmapFilterMode_Linear = 1 - * } - */ - public static int WGPUMipmapFilterMode_Linear() { - return WGPUMipmapFilterMode_Linear; - } - private static final int WGPUMipmapFilterMode_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUMipmapFilterMode.WGPUMipmapFilterMode_Force32 = 2147483647 - * } - */ - public static int WGPUMipmapFilterMode_Force32() { - return WGPUMipmapFilterMode_Force32; - } - private static final int WGPUPowerPreference_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUPowerPreference.WGPUPowerPreference_Undefined = 0 - * } - */ - public static int WGPUPowerPreference_Undefined() { - return WGPUPowerPreference_Undefined; - } - private static final int WGPUPowerPreference_LowPower = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUPowerPreference.WGPUPowerPreference_LowPower = 1 - * } - */ - public static int WGPUPowerPreference_LowPower() { - return WGPUPowerPreference_LowPower; - } - private static final int WGPUPowerPreference_HighPerformance = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUPowerPreference.WGPUPowerPreference_HighPerformance = 2 - * } - */ - public static int WGPUPowerPreference_HighPerformance() { - return WGPUPowerPreference_HighPerformance; - } - private static final int WGPUPowerPreference_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUPowerPreference.WGPUPowerPreference_Force32 = 2147483647 - * } - */ - public static int WGPUPowerPreference_Force32() { - return WGPUPowerPreference_Force32; - } - private static final int WGPUPresentMode_Fifo = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUPresentMode.WGPUPresentMode_Fifo = 0 - * } - */ - public static int WGPUPresentMode_Fifo() { - return WGPUPresentMode_Fifo; - } - private static final int WGPUPresentMode_FifoRelaxed = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUPresentMode.WGPUPresentMode_FifoRelaxed = 1 - * } - */ - public static int WGPUPresentMode_FifoRelaxed() { - return WGPUPresentMode_FifoRelaxed; - } - private static final int WGPUPresentMode_Immediate = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUPresentMode.WGPUPresentMode_Immediate = 2 - * } - */ - public static int WGPUPresentMode_Immediate() { - return WGPUPresentMode_Immediate; - } - private static final int WGPUPresentMode_Mailbox = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUPresentMode.WGPUPresentMode_Mailbox = 3 - * } - */ - public static int WGPUPresentMode_Mailbox() { - return WGPUPresentMode_Mailbox; - } - private static final int WGPUPresentMode_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUPresentMode.WGPUPresentMode_Force32 = 2147483647 - * } - */ - public static int WGPUPresentMode_Force32() { - return WGPUPresentMode_Force32; - } - private static final int WGPUPrimitiveTopology_PointList = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUPrimitiveTopology.WGPUPrimitiveTopology_PointList = 0 - * } - */ - public static int WGPUPrimitiveTopology_PointList() { - return WGPUPrimitiveTopology_PointList; - } - private static final int WGPUPrimitiveTopology_LineList = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUPrimitiveTopology.WGPUPrimitiveTopology_LineList = 1 - * } - */ - public static int WGPUPrimitiveTopology_LineList() { - return WGPUPrimitiveTopology_LineList; - } - private static final int WGPUPrimitiveTopology_LineStrip = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUPrimitiveTopology.WGPUPrimitiveTopology_LineStrip = 2 - * } - */ - public static int WGPUPrimitiveTopology_LineStrip() { - return WGPUPrimitiveTopology_LineStrip; - } - private static final int WGPUPrimitiveTopology_TriangleList = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUPrimitiveTopology.WGPUPrimitiveTopology_TriangleList = 3 - * } - */ - public static int WGPUPrimitiveTopology_TriangleList() { - return WGPUPrimitiveTopology_TriangleList; - } - private static final int WGPUPrimitiveTopology_TriangleStrip = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUPrimitiveTopology.WGPUPrimitiveTopology_TriangleStrip = 4 - * } - */ - public static int WGPUPrimitiveTopology_TriangleStrip() { - return WGPUPrimitiveTopology_TriangleStrip; - } - private static final int WGPUPrimitiveTopology_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUPrimitiveTopology.WGPUPrimitiveTopology_Force32 = 2147483647 - * } - */ - public static int WGPUPrimitiveTopology_Force32() { - return WGPUPrimitiveTopology_Force32; - } - private static final int WGPUQueryType_Occlusion = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUQueryType.WGPUQueryType_Occlusion = 0 - * } - */ - public static int WGPUQueryType_Occlusion() { - return WGPUQueryType_Occlusion; - } - private static final int WGPUQueryType_Timestamp = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUQueryType.WGPUQueryType_Timestamp = 1 - * } - */ - public static int WGPUQueryType_Timestamp() { - return WGPUQueryType_Timestamp; - } - private static final int WGPUQueryType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUQueryType.WGPUQueryType_Force32 = 2147483647 - * } - */ - public static int WGPUQueryType_Force32() { - return WGPUQueryType_Force32; - } - private static final int WGPUQueueWorkDoneStatus_Success = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUQueueWorkDoneStatus.WGPUQueueWorkDoneStatus_Success = 0 - * } - */ - public static int WGPUQueueWorkDoneStatus_Success() { - return WGPUQueueWorkDoneStatus_Success; - } - private static final int WGPUQueueWorkDoneStatus_Error = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUQueueWorkDoneStatus.WGPUQueueWorkDoneStatus_Error = 1 - * } - */ - public static int WGPUQueueWorkDoneStatus_Error() { - return WGPUQueueWorkDoneStatus_Error; - } - private static final int WGPUQueueWorkDoneStatus_Unknown = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUQueueWorkDoneStatus.WGPUQueueWorkDoneStatus_Unknown = 2 - * } - */ - public static int WGPUQueueWorkDoneStatus_Unknown() { - return WGPUQueueWorkDoneStatus_Unknown; - } - private static final int WGPUQueueWorkDoneStatus_DeviceLost = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUQueueWorkDoneStatus.WGPUQueueWorkDoneStatus_DeviceLost = 3 - * } - */ - public static int WGPUQueueWorkDoneStatus_DeviceLost() { - return WGPUQueueWorkDoneStatus_DeviceLost; - } - private static final int WGPUQueueWorkDoneStatus_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUQueueWorkDoneStatus.WGPUQueueWorkDoneStatus_Force32 = 2147483647 - * } - */ - public static int WGPUQueueWorkDoneStatus_Force32() { - return WGPUQueueWorkDoneStatus_Force32; - } - private static final int WGPURequestAdapterStatus_Success = (int)0L; - /** - * {@snippet lang=c : - * enum WGPURequestAdapterStatus.WGPURequestAdapterStatus_Success = 0 - * } - */ - public static int WGPURequestAdapterStatus_Success() { - return WGPURequestAdapterStatus_Success; - } - private static final int WGPURequestAdapterStatus_Unavailable = (int)1L; - /** - * {@snippet lang=c : - * enum WGPURequestAdapterStatus.WGPURequestAdapterStatus_Unavailable = 1 - * } - */ - public static int WGPURequestAdapterStatus_Unavailable() { - return WGPURequestAdapterStatus_Unavailable; - } - private static final int WGPURequestAdapterStatus_Error = (int)2L; - /** - * {@snippet lang=c : - * enum WGPURequestAdapterStatus.WGPURequestAdapterStatus_Error = 2 - * } - */ - public static int WGPURequestAdapterStatus_Error() { - return WGPURequestAdapterStatus_Error; - } - private static final int WGPURequestAdapterStatus_Unknown = (int)3L; - /** - * {@snippet lang=c : - * enum WGPURequestAdapterStatus.WGPURequestAdapterStatus_Unknown = 3 - * } - */ - public static int WGPURequestAdapterStatus_Unknown() { - return WGPURequestAdapterStatus_Unknown; - } - private static final int WGPURequestAdapterStatus_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPURequestAdapterStatus.WGPURequestAdapterStatus_Force32 = 2147483647 - * } - */ - public static int WGPURequestAdapterStatus_Force32() { - return WGPURequestAdapterStatus_Force32; - } - private static final int WGPURequestDeviceStatus_Success = (int)0L; - /** - * {@snippet lang=c : - * enum WGPURequestDeviceStatus.WGPURequestDeviceStatus_Success = 0 - * } - */ - public static int WGPURequestDeviceStatus_Success() { - return WGPURequestDeviceStatus_Success; - } - private static final int WGPURequestDeviceStatus_Error = (int)1L; - /** - * {@snippet lang=c : - * enum WGPURequestDeviceStatus.WGPURequestDeviceStatus_Error = 1 - * } - */ - public static int WGPURequestDeviceStatus_Error() { - return WGPURequestDeviceStatus_Error; - } - private static final int WGPURequestDeviceStatus_Unknown = (int)2L; - /** - * {@snippet lang=c : - * enum WGPURequestDeviceStatus.WGPURequestDeviceStatus_Unknown = 2 - * } - */ - public static int WGPURequestDeviceStatus_Unknown() { - return WGPURequestDeviceStatus_Unknown; - } - private static final int WGPURequestDeviceStatus_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPURequestDeviceStatus.WGPURequestDeviceStatus_Force32 = 2147483647 - * } - */ - public static int WGPURequestDeviceStatus_Force32() { - return WGPURequestDeviceStatus_Force32; - } - private static final int WGPUSType_Invalid = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_Invalid = 0 - * } - */ - public static int WGPUSType_Invalid() { - return WGPUSType_Invalid; - } - private static final int WGPUSType_SurfaceDescriptorFromMetalLayer = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_SurfaceDescriptorFromMetalLayer = 1 - * } - */ - public static int WGPUSType_SurfaceDescriptorFromMetalLayer() { - return WGPUSType_SurfaceDescriptorFromMetalLayer; - } - private static final int WGPUSType_SurfaceDescriptorFromWindowsHWND = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_SurfaceDescriptorFromWindowsHWND = 2 - * } - */ - public static int WGPUSType_SurfaceDescriptorFromWindowsHWND() { - return WGPUSType_SurfaceDescriptorFromWindowsHWND; - } - private static final int WGPUSType_SurfaceDescriptorFromXlibWindow = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_SurfaceDescriptorFromXlibWindow = 3 - * } - */ - public static int WGPUSType_SurfaceDescriptorFromXlibWindow() { - return WGPUSType_SurfaceDescriptorFromXlibWindow; - } - private static final int WGPUSType_SurfaceDescriptorFromCanvasHTMLSelector = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_SurfaceDescriptorFromCanvasHTMLSelector = 4 - * } - */ - public static int WGPUSType_SurfaceDescriptorFromCanvasHTMLSelector() { - return WGPUSType_SurfaceDescriptorFromCanvasHTMLSelector; - } - private static final int WGPUSType_ShaderModuleSPIRVDescriptor = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_ShaderModuleSPIRVDescriptor = 5 - * } - */ - public static int WGPUSType_ShaderModuleSPIRVDescriptor() { - return WGPUSType_ShaderModuleSPIRVDescriptor; - } - private static final int WGPUSType_ShaderModuleWGSLDescriptor = (int)6L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_ShaderModuleWGSLDescriptor = 6 - * } - */ - public static int WGPUSType_ShaderModuleWGSLDescriptor() { - return WGPUSType_ShaderModuleWGSLDescriptor; - } - private static final int WGPUSType_PrimitiveDepthClipControl = (int)7L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_PrimitiveDepthClipControl = 7 - * } - */ - public static int WGPUSType_PrimitiveDepthClipControl() { - return WGPUSType_PrimitiveDepthClipControl; - } - private static final int WGPUSType_SurfaceDescriptorFromWaylandSurface = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_SurfaceDescriptorFromWaylandSurface = 8 - * } - */ - public static int WGPUSType_SurfaceDescriptorFromWaylandSurface() { - return WGPUSType_SurfaceDescriptorFromWaylandSurface; - } - private static final int WGPUSType_SurfaceDescriptorFromAndroidNativeWindow = (int)9L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_SurfaceDescriptorFromAndroidNativeWindow = 9 - * } - */ - public static int WGPUSType_SurfaceDescriptorFromAndroidNativeWindow() { - return WGPUSType_SurfaceDescriptorFromAndroidNativeWindow; - } - private static final int WGPUSType_SurfaceDescriptorFromXcbWindow = (int)10L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_SurfaceDescriptorFromXcbWindow = 10 - * } - */ - public static int WGPUSType_SurfaceDescriptorFromXcbWindow() { - return WGPUSType_SurfaceDescriptorFromXcbWindow; - } - private static final int WGPUSType_RenderPassDescriptorMaxDrawCount = (int)15L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_RenderPassDescriptorMaxDrawCount = 15 - * } - */ - public static int WGPUSType_RenderPassDescriptorMaxDrawCount() { - return WGPUSType_RenderPassDescriptorMaxDrawCount; - } - private static final int WGPUSType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUSType.WGPUSType_Force32 = 2147483647 - * } - */ - public static int WGPUSType_Force32() { - return WGPUSType_Force32; - } - private static final int WGPUSamplerBindingType_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUSamplerBindingType.WGPUSamplerBindingType_Undefined = 0 - * } - */ - public static int WGPUSamplerBindingType_Undefined() { - return WGPUSamplerBindingType_Undefined; - } - private static final int WGPUSamplerBindingType_Filtering = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUSamplerBindingType.WGPUSamplerBindingType_Filtering = 1 - * } - */ - public static int WGPUSamplerBindingType_Filtering() { - return WGPUSamplerBindingType_Filtering; - } - private static final int WGPUSamplerBindingType_NonFiltering = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUSamplerBindingType.WGPUSamplerBindingType_NonFiltering = 2 - * } - */ - public static int WGPUSamplerBindingType_NonFiltering() { - return WGPUSamplerBindingType_NonFiltering; - } - private static final int WGPUSamplerBindingType_Comparison = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUSamplerBindingType.WGPUSamplerBindingType_Comparison = 3 - * } - */ - public static int WGPUSamplerBindingType_Comparison() { - return WGPUSamplerBindingType_Comparison; - } - private static final int WGPUSamplerBindingType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUSamplerBindingType.WGPUSamplerBindingType_Force32 = 2147483647 - * } - */ - public static int WGPUSamplerBindingType_Force32() { - return WGPUSamplerBindingType_Force32; - } - private static final int WGPUStencilOperation_Keep = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUStencilOperation.WGPUStencilOperation_Keep = 0 - * } - */ - public static int WGPUStencilOperation_Keep() { - return WGPUStencilOperation_Keep; - } - private static final int WGPUStencilOperation_Zero = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUStencilOperation.WGPUStencilOperation_Zero = 1 - * } - */ - public static int WGPUStencilOperation_Zero() { - return WGPUStencilOperation_Zero; - } - private static final int WGPUStencilOperation_Replace = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUStencilOperation.WGPUStencilOperation_Replace = 2 - * } - */ - public static int WGPUStencilOperation_Replace() { - return WGPUStencilOperation_Replace; - } - private static final int WGPUStencilOperation_Invert = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUStencilOperation.WGPUStencilOperation_Invert = 3 - * } - */ - public static int WGPUStencilOperation_Invert() { - return WGPUStencilOperation_Invert; - } - private static final int WGPUStencilOperation_IncrementClamp = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUStencilOperation.WGPUStencilOperation_IncrementClamp = 4 - * } - */ - public static int WGPUStencilOperation_IncrementClamp() { - return WGPUStencilOperation_IncrementClamp; - } - private static final int WGPUStencilOperation_DecrementClamp = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUStencilOperation.WGPUStencilOperation_DecrementClamp = 5 - * } - */ - public static int WGPUStencilOperation_DecrementClamp() { - return WGPUStencilOperation_DecrementClamp; - } - private static final int WGPUStencilOperation_IncrementWrap = (int)6L; - /** - * {@snippet lang=c : - * enum WGPUStencilOperation.WGPUStencilOperation_IncrementWrap = 6 - * } - */ - public static int WGPUStencilOperation_IncrementWrap() { - return WGPUStencilOperation_IncrementWrap; - } - private static final int WGPUStencilOperation_DecrementWrap = (int)7L; - /** - * {@snippet lang=c : - * enum WGPUStencilOperation.WGPUStencilOperation_DecrementWrap = 7 - * } - */ - public static int WGPUStencilOperation_DecrementWrap() { - return WGPUStencilOperation_DecrementWrap; - } - private static final int WGPUStencilOperation_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUStencilOperation.WGPUStencilOperation_Force32 = 2147483647 - * } - */ - public static int WGPUStencilOperation_Force32() { - return WGPUStencilOperation_Force32; - } - private static final int WGPUStorageTextureAccess_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUStorageTextureAccess.WGPUStorageTextureAccess_Undefined = 0 - * } - */ - public static int WGPUStorageTextureAccess_Undefined() { - return WGPUStorageTextureAccess_Undefined; - } - private static final int WGPUStorageTextureAccess_WriteOnly = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUStorageTextureAccess.WGPUStorageTextureAccess_WriteOnly = 1 - * } - */ - public static int WGPUStorageTextureAccess_WriteOnly() { - return WGPUStorageTextureAccess_WriteOnly; - } - private static final int WGPUStorageTextureAccess_ReadOnly = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUStorageTextureAccess.WGPUStorageTextureAccess_ReadOnly = 2 - * } - */ - public static int WGPUStorageTextureAccess_ReadOnly() { - return WGPUStorageTextureAccess_ReadOnly; - } - private static final int WGPUStorageTextureAccess_ReadWrite = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUStorageTextureAccess.WGPUStorageTextureAccess_ReadWrite = 3 - * } - */ - public static int WGPUStorageTextureAccess_ReadWrite() { - return WGPUStorageTextureAccess_ReadWrite; - } - private static final int WGPUStorageTextureAccess_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUStorageTextureAccess.WGPUStorageTextureAccess_Force32 = 2147483647 - * } - */ - public static int WGPUStorageTextureAccess_Force32() { - return WGPUStorageTextureAccess_Force32; - } - private static final int WGPUStoreOp_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUStoreOp.WGPUStoreOp_Undefined = 0 - * } - */ - public static int WGPUStoreOp_Undefined() { - return WGPUStoreOp_Undefined; - } - private static final int WGPUStoreOp_Store = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUStoreOp.WGPUStoreOp_Store = 1 - * } - */ - public static int WGPUStoreOp_Store() { - return WGPUStoreOp_Store; - } - private static final int WGPUStoreOp_Discard = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUStoreOp.WGPUStoreOp_Discard = 2 - * } - */ - public static int WGPUStoreOp_Discard() { - return WGPUStoreOp_Discard; - } - private static final int WGPUStoreOp_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUStoreOp.WGPUStoreOp_Force32 = 2147483647 - * } - */ - public static int WGPUStoreOp_Force32() { - return WGPUStoreOp_Force32; - } - private static final int WGPUSurfaceGetCurrentTextureStatus_Success = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUSurfaceGetCurrentTextureStatus.WGPUSurfaceGetCurrentTextureStatus_Success = 0 - * } - */ - public static int WGPUSurfaceGetCurrentTextureStatus_Success() { - return WGPUSurfaceGetCurrentTextureStatus_Success; - } - private static final int WGPUSurfaceGetCurrentTextureStatus_Timeout = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUSurfaceGetCurrentTextureStatus.WGPUSurfaceGetCurrentTextureStatus_Timeout = 1 - * } - */ - public static int WGPUSurfaceGetCurrentTextureStatus_Timeout() { - return WGPUSurfaceGetCurrentTextureStatus_Timeout; - } - private static final int WGPUSurfaceGetCurrentTextureStatus_Outdated = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUSurfaceGetCurrentTextureStatus.WGPUSurfaceGetCurrentTextureStatus_Outdated = 2 - * } - */ - public static int WGPUSurfaceGetCurrentTextureStatus_Outdated() { - return WGPUSurfaceGetCurrentTextureStatus_Outdated; - } - private static final int WGPUSurfaceGetCurrentTextureStatus_Lost = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUSurfaceGetCurrentTextureStatus.WGPUSurfaceGetCurrentTextureStatus_Lost = 3 - * } - */ - public static int WGPUSurfaceGetCurrentTextureStatus_Lost() { - return WGPUSurfaceGetCurrentTextureStatus_Lost; - } - private static final int WGPUSurfaceGetCurrentTextureStatus_OutOfMemory = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUSurfaceGetCurrentTextureStatus.WGPUSurfaceGetCurrentTextureStatus_OutOfMemory = 4 - * } - */ - public static int WGPUSurfaceGetCurrentTextureStatus_OutOfMemory() { - return WGPUSurfaceGetCurrentTextureStatus_OutOfMemory; - } - private static final int WGPUSurfaceGetCurrentTextureStatus_DeviceLost = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUSurfaceGetCurrentTextureStatus.WGPUSurfaceGetCurrentTextureStatus_DeviceLost = 5 - * } - */ - public static int WGPUSurfaceGetCurrentTextureStatus_DeviceLost() { - return WGPUSurfaceGetCurrentTextureStatus_DeviceLost; - } - private static final int WGPUSurfaceGetCurrentTextureStatus_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUSurfaceGetCurrentTextureStatus.WGPUSurfaceGetCurrentTextureStatus_Force32 = 2147483647 - * } - */ - public static int WGPUSurfaceGetCurrentTextureStatus_Force32() { - return WGPUSurfaceGetCurrentTextureStatus_Force32; - } - private static final int WGPUTextureAspect_All = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUTextureAspect.WGPUTextureAspect_All = 0 - * } - */ - public static int WGPUTextureAspect_All() { - return WGPUTextureAspect_All; - } - private static final int WGPUTextureAspect_StencilOnly = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUTextureAspect.WGPUTextureAspect_StencilOnly = 1 - * } - */ - public static int WGPUTextureAspect_StencilOnly() { - return WGPUTextureAspect_StencilOnly; - } - private static final int WGPUTextureAspect_DepthOnly = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUTextureAspect.WGPUTextureAspect_DepthOnly = 2 - * } - */ - public static int WGPUTextureAspect_DepthOnly() { - return WGPUTextureAspect_DepthOnly; - } - private static final int WGPUTextureAspect_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUTextureAspect.WGPUTextureAspect_Force32 = 2147483647 - * } - */ - public static int WGPUTextureAspect_Force32() { - return WGPUTextureAspect_Force32; - } - private static final int WGPUTextureDimension_1D = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUTextureDimension.WGPUTextureDimension_1D = 0 - * } - */ - public static int WGPUTextureDimension_1D() { - return WGPUTextureDimension_1D; - } - private static final int WGPUTextureDimension_2D = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUTextureDimension.WGPUTextureDimension_2D = 1 - * } - */ - public static int WGPUTextureDimension_2D() { - return WGPUTextureDimension_2D; - } - private static final int WGPUTextureDimension_3D = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUTextureDimension.WGPUTextureDimension_3D = 2 - * } - */ - public static int WGPUTextureDimension_3D() { - return WGPUTextureDimension_3D; - } - private static final int WGPUTextureDimension_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUTextureDimension.WGPUTextureDimension_Force32 = 2147483647 - * } - */ - public static int WGPUTextureDimension_Force32() { - return WGPUTextureDimension_Force32; - } - private static final int WGPUTextureFormat_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_Undefined = 0 - * } - */ - public static int WGPUTextureFormat_Undefined() { - return WGPUTextureFormat_Undefined; - } - private static final int WGPUTextureFormat_R8Unorm = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_R8Unorm = 1 - * } - */ - public static int WGPUTextureFormat_R8Unorm() { - return WGPUTextureFormat_R8Unorm; - } - private static final int WGPUTextureFormat_R8Snorm = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_R8Snorm = 2 - * } - */ - public static int WGPUTextureFormat_R8Snorm() { - return WGPUTextureFormat_R8Snorm; - } - private static final int WGPUTextureFormat_R8Uint = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_R8Uint = 3 - * } - */ - public static int WGPUTextureFormat_R8Uint() { - return WGPUTextureFormat_R8Uint; - } - private static final int WGPUTextureFormat_R8Sint = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_R8Sint = 4 - * } - */ - public static int WGPUTextureFormat_R8Sint() { - return WGPUTextureFormat_R8Sint; - } - private static final int WGPUTextureFormat_R16Uint = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_R16Uint = 5 - * } - */ - public static int WGPUTextureFormat_R16Uint() { - return WGPUTextureFormat_R16Uint; - } - private static final int WGPUTextureFormat_R16Sint = (int)6L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_R16Sint = 6 - * } - */ - public static int WGPUTextureFormat_R16Sint() { - return WGPUTextureFormat_R16Sint; - } - private static final int WGPUTextureFormat_R16Float = (int)7L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_R16Float = 7 - * } - */ - public static int WGPUTextureFormat_R16Float() { - return WGPUTextureFormat_R16Float; - } - private static final int WGPUTextureFormat_RG8Unorm = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG8Unorm = 8 - * } - */ - public static int WGPUTextureFormat_RG8Unorm() { - return WGPUTextureFormat_RG8Unorm; - } - private static final int WGPUTextureFormat_RG8Snorm = (int)9L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG8Snorm = 9 - * } - */ - public static int WGPUTextureFormat_RG8Snorm() { - return WGPUTextureFormat_RG8Snorm; - } - private static final int WGPUTextureFormat_RG8Uint = (int)10L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG8Uint = 10 - * } - */ - public static int WGPUTextureFormat_RG8Uint() { - return WGPUTextureFormat_RG8Uint; - } - private static final int WGPUTextureFormat_RG8Sint = (int)11L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG8Sint = 11 - * } - */ - public static int WGPUTextureFormat_RG8Sint() { - return WGPUTextureFormat_RG8Sint; - } - private static final int WGPUTextureFormat_R32Float = (int)12L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_R32Float = 12 - * } - */ - public static int WGPUTextureFormat_R32Float() { - return WGPUTextureFormat_R32Float; - } - private static final int WGPUTextureFormat_R32Uint = (int)13L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_R32Uint = 13 - * } - */ - public static int WGPUTextureFormat_R32Uint() { - return WGPUTextureFormat_R32Uint; - } - private static final int WGPUTextureFormat_R32Sint = (int)14L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_R32Sint = 14 - * } - */ - public static int WGPUTextureFormat_R32Sint() { - return WGPUTextureFormat_R32Sint; - } - private static final int WGPUTextureFormat_RG16Uint = (int)15L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG16Uint = 15 - * } - */ - public static int WGPUTextureFormat_RG16Uint() { - return WGPUTextureFormat_RG16Uint; - } - private static final int WGPUTextureFormat_RG16Sint = (int)16L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG16Sint = 16 - * } - */ - public static int WGPUTextureFormat_RG16Sint() { - return WGPUTextureFormat_RG16Sint; - } - private static final int WGPUTextureFormat_RG16Float = (int)17L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG16Float = 17 - * } - */ - public static int WGPUTextureFormat_RG16Float() { - return WGPUTextureFormat_RG16Float; - } - private static final int WGPUTextureFormat_RGBA8Unorm = (int)18L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA8Unorm = 18 - * } - */ - public static int WGPUTextureFormat_RGBA8Unorm() { - return WGPUTextureFormat_RGBA8Unorm; - } - private static final int WGPUTextureFormat_RGBA8UnormSrgb = (int)19L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA8UnormSrgb = 19 - * } - */ - public static int WGPUTextureFormat_RGBA8UnormSrgb() { - return WGPUTextureFormat_RGBA8UnormSrgb; - } - private static final int WGPUTextureFormat_RGBA8Snorm = (int)20L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA8Snorm = 20 - * } - */ - public static int WGPUTextureFormat_RGBA8Snorm() { - return WGPUTextureFormat_RGBA8Snorm; - } - private static final int WGPUTextureFormat_RGBA8Uint = (int)21L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA8Uint = 21 - * } - */ - public static int WGPUTextureFormat_RGBA8Uint() { - return WGPUTextureFormat_RGBA8Uint; - } - private static final int WGPUTextureFormat_RGBA8Sint = (int)22L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA8Sint = 22 - * } - */ - public static int WGPUTextureFormat_RGBA8Sint() { - return WGPUTextureFormat_RGBA8Sint; - } - private static final int WGPUTextureFormat_BGRA8Unorm = (int)23L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BGRA8Unorm = 23 - * } - */ - public static int WGPUTextureFormat_BGRA8Unorm() { - return WGPUTextureFormat_BGRA8Unorm; - } - private static final int WGPUTextureFormat_BGRA8UnormSrgb = (int)24L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BGRA8UnormSrgb = 24 - * } - */ - public static int WGPUTextureFormat_BGRA8UnormSrgb() { - return WGPUTextureFormat_BGRA8UnormSrgb; - } - private static final int WGPUTextureFormat_RGB10A2Uint = (int)25L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGB10A2Uint = 25 - * } - */ - public static int WGPUTextureFormat_RGB10A2Uint() { - return WGPUTextureFormat_RGB10A2Uint; - } - private static final int WGPUTextureFormat_RGB10A2Unorm = (int)26L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGB10A2Unorm = 26 - * } - */ - public static int WGPUTextureFormat_RGB10A2Unorm() { - return WGPUTextureFormat_RGB10A2Unorm; - } - private static final int WGPUTextureFormat_RG11B10Ufloat = (int)27L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG11B10Ufloat = 27 - * } - */ - public static int WGPUTextureFormat_RG11B10Ufloat() { - return WGPUTextureFormat_RG11B10Ufloat; - } - private static final int WGPUTextureFormat_RGB9E5Ufloat = (int)28L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGB9E5Ufloat = 28 - * } - */ - public static int WGPUTextureFormat_RGB9E5Ufloat() { - return WGPUTextureFormat_RGB9E5Ufloat; - } - private static final int WGPUTextureFormat_RG32Float = (int)29L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG32Float = 29 - * } - */ - public static int WGPUTextureFormat_RG32Float() { - return WGPUTextureFormat_RG32Float; - } - private static final int WGPUTextureFormat_RG32Uint = (int)30L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG32Uint = 30 - * } - */ - public static int WGPUTextureFormat_RG32Uint() { - return WGPUTextureFormat_RG32Uint; - } - private static final int WGPUTextureFormat_RG32Sint = (int)31L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RG32Sint = 31 - * } - */ - public static int WGPUTextureFormat_RG32Sint() { - return WGPUTextureFormat_RG32Sint; - } - private static final int WGPUTextureFormat_RGBA16Uint = (int)32L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA16Uint = 32 - * } - */ - public static int WGPUTextureFormat_RGBA16Uint() { - return WGPUTextureFormat_RGBA16Uint; - } - private static final int WGPUTextureFormat_RGBA16Sint = (int)33L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA16Sint = 33 - * } - */ - public static int WGPUTextureFormat_RGBA16Sint() { - return WGPUTextureFormat_RGBA16Sint; - } - private static final int WGPUTextureFormat_RGBA16Float = (int)34L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA16Float = 34 - * } - */ - public static int WGPUTextureFormat_RGBA16Float() { - return WGPUTextureFormat_RGBA16Float; - } - private static final int WGPUTextureFormat_RGBA32Float = (int)35L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA32Float = 35 - * } - */ - public static int WGPUTextureFormat_RGBA32Float() { - return WGPUTextureFormat_RGBA32Float; - } - private static final int WGPUTextureFormat_RGBA32Uint = (int)36L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA32Uint = 36 - * } - */ - public static int WGPUTextureFormat_RGBA32Uint() { - return WGPUTextureFormat_RGBA32Uint; - } - private static final int WGPUTextureFormat_RGBA32Sint = (int)37L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_RGBA32Sint = 37 - * } - */ - public static int WGPUTextureFormat_RGBA32Sint() { - return WGPUTextureFormat_RGBA32Sint; - } - private static final int WGPUTextureFormat_Stencil8 = (int)38L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_Stencil8 = 38 - * } - */ - public static int WGPUTextureFormat_Stencil8() { - return WGPUTextureFormat_Stencil8; - } - private static final int WGPUTextureFormat_Depth16Unorm = (int)39L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_Depth16Unorm = 39 - * } - */ - public static int WGPUTextureFormat_Depth16Unorm() { - return WGPUTextureFormat_Depth16Unorm; - } - private static final int WGPUTextureFormat_Depth24Plus = (int)40L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_Depth24Plus = 40 - * } - */ - public static int WGPUTextureFormat_Depth24Plus() { - return WGPUTextureFormat_Depth24Plus; - } - private static final int WGPUTextureFormat_Depth24PlusStencil8 = (int)41L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_Depth24PlusStencil8 = 41 - * } - */ - public static int WGPUTextureFormat_Depth24PlusStencil8() { - return WGPUTextureFormat_Depth24PlusStencil8; - } - private static final int WGPUTextureFormat_Depth32Float = (int)42L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_Depth32Float = 42 - * } - */ - public static int WGPUTextureFormat_Depth32Float() { - return WGPUTextureFormat_Depth32Float; - } - private static final int WGPUTextureFormat_Depth32FloatStencil8 = (int)43L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_Depth32FloatStencil8 = 43 - * } - */ - public static int WGPUTextureFormat_Depth32FloatStencil8() { - return WGPUTextureFormat_Depth32FloatStencil8; - } - private static final int WGPUTextureFormat_BC1RGBAUnorm = (int)44L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC1RGBAUnorm = 44 - * } - */ - public static int WGPUTextureFormat_BC1RGBAUnorm() { - return WGPUTextureFormat_BC1RGBAUnorm; - } - private static final int WGPUTextureFormat_BC1RGBAUnormSrgb = (int)45L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC1RGBAUnormSrgb = 45 - * } - */ - public static int WGPUTextureFormat_BC1RGBAUnormSrgb() { - return WGPUTextureFormat_BC1RGBAUnormSrgb; - } - private static final int WGPUTextureFormat_BC2RGBAUnorm = (int)46L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC2RGBAUnorm = 46 - * } - */ - public static int WGPUTextureFormat_BC2RGBAUnorm() { - return WGPUTextureFormat_BC2RGBAUnorm; - } - private static final int WGPUTextureFormat_BC2RGBAUnormSrgb = (int)47L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC2RGBAUnormSrgb = 47 - * } - */ - public static int WGPUTextureFormat_BC2RGBAUnormSrgb() { - return WGPUTextureFormat_BC2RGBAUnormSrgb; - } - private static final int WGPUTextureFormat_BC3RGBAUnorm = (int)48L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC3RGBAUnorm = 48 - * } - */ - public static int WGPUTextureFormat_BC3RGBAUnorm() { - return WGPUTextureFormat_BC3RGBAUnorm; - } - private static final int WGPUTextureFormat_BC3RGBAUnormSrgb = (int)49L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC3RGBAUnormSrgb = 49 - * } - */ - public static int WGPUTextureFormat_BC3RGBAUnormSrgb() { - return WGPUTextureFormat_BC3RGBAUnormSrgb; - } - private static final int WGPUTextureFormat_BC4RUnorm = (int)50L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC4RUnorm = 50 - * } - */ - public static int WGPUTextureFormat_BC4RUnorm() { - return WGPUTextureFormat_BC4RUnorm; - } - private static final int WGPUTextureFormat_BC4RSnorm = (int)51L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC4RSnorm = 51 - * } - */ - public static int WGPUTextureFormat_BC4RSnorm() { - return WGPUTextureFormat_BC4RSnorm; - } - private static final int WGPUTextureFormat_BC5RGUnorm = (int)52L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC5RGUnorm = 52 - * } - */ - public static int WGPUTextureFormat_BC5RGUnorm() { - return WGPUTextureFormat_BC5RGUnorm; - } - private static final int WGPUTextureFormat_BC5RGSnorm = (int)53L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC5RGSnorm = 53 - * } - */ - public static int WGPUTextureFormat_BC5RGSnorm() { - return WGPUTextureFormat_BC5RGSnorm; - } - private static final int WGPUTextureFormat_BC6HRGBUfloat = (int)54L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC6HRGBUfloat = 54 - * } - */ - public static int WGPUTextureFormat_BC6HRGBUfloat() { - return WGPUTextureFormat_BC6HRGBUfloat; - } - private static final int WGPUTextureFormat_BC6HRGBFloat = (int)55L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC6HRGBFloat = 55 - * } - */ - public static int WGPUTextureFormat_BC6HRGBFloat() { - return WGPUTextureFormat_BC6HRGBFloat; - } - private static final int WGPUTextureFormat_BC7RGBAUnorm = (int)56L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC7RGBAUnorm = 56 - * } - */ - public static int WGPUTextureFormat_BC7RGBAUnorm() { - return WGPUTextureFormat_BC7RGBAUnorm; - } - private static final int WGPUTextureFormat_BC7RGBAUnormSrgb = (int)57L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_BC7RGBAUnormSrgb = 57 - * } - */ - public static int WGPUTextureFormat_BC7RGBAUnormSrgb() { - return WGPUTextureFormat_BC7RGBAUnormSrgb; - } - private static final int WGPUTextureFormat_ETC2RGB8Unorm = (int)58L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ETC2RGB8Unorm = 58 - * } - */ - public static int WGPUTextureFormat_ETC2RGB8Unorm() { - return WGPUTextureFormat_ETC2RGB8Unorm; - } - private static final int WGPUTextureFormat_ETC2RGB8UnormSrgb = (int)59L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ETC2RGB8UnormSrgb = 59 - * } - */ - public static int WGPUTextureFormat_ETC2RGB8UnormSrgb() { - return WGPUTextureFormat_ETC2RGB8UnormSrgb; - } - private static final int WGPUTextureFormat_ETC2RGB8A1Unorm = (int)60L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ETC2RGB8A1Unorm = 60 - * } - */ - public static int WGPUTextureFormat_ETC2RGB8A1Unorm() { - return WGPUTextureFormat_ETC2RGB8A1Unorm; - } - private static final int WGPUTextureFormat_ETC2RGB8A1UnormSrgb = (int)61L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ETC2RGB8A1UnormSrgb = 61 - * } - */ - public static int WGPUTextureFormat_ETC2RGB8A1UnormSrgb() { - return WGPUTextureFormat_ETC2RGB8A1UnormSrgb; - } - private static final int WGPUTextureFormat_ETC2RGBA8Unorm = (int)62L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ETC2RGBA8Unorm = 62 - * } - */ - public static int WGPUTextureFormat_ETC2RGBA8Unorm() { - return WGPUTextureFormat_ETC2RGBA8Unorm; - } - private static final int WGPUTextureFormat_ETC2RGBA8UnormSrgb = (int)63L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ETC2RGBA8UnormSrgb = 63 - * } - */ - public static int WGPUTextureFormat_ETC2RGBA8UnormSrgb() { - return WGPUTextureFormat_ETC2RGBA8UnormSrgb; - } - private static final int WGPUTextureFormat_EACR11Unorm = (int)64L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_EACR11Unorm = 64 - * } - */ - public static int WGPUTextureFormat_EACR11Unorm() { - return WGPUTextureFormat_EACR11Unorm; - } - private static final int WGPUTextureFormat_EACR11Snorm = (int)65L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_EACR11Snorm = 65 - * } - */ - public static int WGPUTextureFormat_EACR11Snorm() { - return WGPUTextureFormat_EACR11Snorm; - } - private static final int WGPUTextureFormat_EACRG11Unorm = (int)66L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_EACRG11Unorm = 66 - * } - */ - public static int WGPUTextureFormat_EACRG11Unorm() { - return WGPUTextureFormat_EACRG11Unorm; - } - private static final int WGPUTextureFormat_EACRG11Snorm = (int)67L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_EACRG11Snorm = 67 - * } - */ - public static int WGPUTextureFormat_EACRG11Snorm() { - return WGPUTextureFormat_EACRG11Snorm; - } - private static final int WGPUTextureFormat_ASTC4x4Unorm = (int)68L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC4x4Unorm = 68 - * } - */ - public static int WGPUTextureFormat_ASTC4x4Unorm() { - return WGPUTextureFormat_ASTC4x4Unorm; - } - private static final int WGPUTextureFormat_ASTC4x4UnormSrgb = (int)69L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC4x4UnormSrgb = 69 - * } - */ - public static int WGPUTextureFormat_ASTC4x4UnormSrgb() { - return WGPUTextureFormat_ASTC4x4UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC5x4Unorm = (int)70L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC5x4Unorm = 70 - * } - */ - public static int WGPUTextureFormat_ASTC5x4Unorm() { - return WGPUTextureFormat_ASTC5x4Unorm; - } - private static final int WGPUTextureFormat_ASTC5x4UnormSrgb = (int)71L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC5x4UnormSrgb = 71 - * } - */ - public static int WGPUTextureFormat_ASTC5x4UnormSrgb() { - return WGPUTextureFormat_ASTC5x4UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC5x5Unorm = (int)72L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC5x5Unorm = 72 - * } - */ - public static int WGPUTextureFormat_ASTC5x5Unorm() { - return WGPUTextureFormat_ASTC5x5Unorm; - } - private static final int WGPUTextureFormat_ASTC5x5UnormSrgb = (int)73L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC5x5UnormSrgb = 73 - * } - */ - public static int WGPUTextureFormat_ASTC5x5UnormSrgb() { - return WGPUTextureFormat_ASTC5x5UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC6x5Unorm = (int)74L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC6x5Unorm = 74 - * } - */ - public static int WGPUTextureFormat_ASTC6x5Unorm() { - return WGPUTextureFormat_ASTC6x5Unorm; - } - private static final int WGPUTextureFormat_ASTC6x5UnormSrgb = (int)75L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC6x5UnormSrgb = 75 - * } - */ - public static int WGPUTextureFormat_ASTC6x5UnormSrgb() { - return WGPUTextureFormat_ASTC6x5UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC6x6Unorm = (int)76L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC6x6Unorm = 76 - * } - */ - public static int WGPUTextureFormat_ASTC6x6Unorm() { - return WGPUTextureFormat_ASTC6x6Unorm; - } - private static final int WGPUTextureFormat_ASTC6x6UnormSrgb = (int)77L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC6x6UnormSrgb = 77 - * } - */ - public static int WGPUTextureFormat_ASTC6x6UnormSrgb() { - return WGPUTextureFormat_ASTC6x6UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC8x5Unorm = (int)78L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC8x5Unorm = 78 - * } - */ - public static int WGPUTextureFormat_ASTC8x5Unorm() { - return WGPUTextureFormat_ASTC8x5Unorm; - } - private static final int WGPUTextureFormat_ASTC8x5UnormSrgb = (int)79L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC8x5UnormSrgb = 79 - * } - */ - public static int WGPUTextureFormat_ASTC8x5UnormSrgb() { - return WGPUTextureFormat_ASTC8x5UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC8x6Unorm = (int)80L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC8x6Unorm = 80 - * } - */ - public static int WGPUTextureFormat_ASTC8x6Unorm() { - return WGPUTextureFormat_ASTC8x6Unorm; - } - private static final int WGPUTextureFormat_ASTC8x6UnormSrgb = (int)81L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC8x6UnormSrgb = 81 - * } - */ - public static int WGPUTextureFormat_ASTC8x6UnormSrgb() { - return WGPUTextureFormat_ASTC8x6UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC8x8Unorm = (int)82L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC8x8Unorm = 82 - * } - */ - public static int WGPUTextureFormat_ASTC8x8Unorm() { - return WGPUTextureFormat_ASTC8x8Unorm; - } - private static final int WGPUTextureFormat_ASTC8x8UnormSrgb = (int)83L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC8x8UnormSrgb = 83 - * } - */ - public static int WGPUTextureFormat_ASTC8x8UnormSrgb() { - return WGPUTextureFormat_ASTC8x8UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC10x5Unorm = (int)84L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC10x5Unorm = 84 - * } - */ - public static int WGPUTextureFormat_ASTC10x5Unorm() { - return WGPUTextureFormat_ASTC10x5Unorm; - } - private static final int WGPUTextureFormat_ASTC10x5UnormSrgb = (int)85L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC10x5UnormSrgb = 85 - * } - */ - public static int WGPUTextureFormat_ASTC10x5UnormSrgb() { - return WGPUTextureFormat_ASTC10x5UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC10x6Unorm = (int)86L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC10x6Unorm = 86 - * } - */ - public static int WGPUTextureFormat_ASTC10x6Unorm() { - return WGPUTextureFormat_ASTC10x6Unorm; - } - private static final int WGPUTextureFormat_ASTC10x6UnormSrgb = (int)87L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC10x6UnormSrgb = 87 - * } - */ - public static int WGPUTextureFormat_ASTC10x6UnormSrgb() { - return WGPUTextureFormat_ASTC10x6UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC10x8Unorm = (int)88L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC10x8Unorm = 88 - * } - */ - public static int WGPUTextureFormat_ASTC10x8Unorm() { - return WGPUTextureFormat_ASTC10x8Unorm; - } - private static final int WGPUTextureFormat_ASTC10x8UnormSrgb = (int)89L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC10x8UnormSrgb = 89 - * } - */ - public static int WGPUTextureFormat_ASTC10x8UnormSrgb() { - return WGPUTextureFormat_ASTC10x8UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC10x10Unorm = (int)90L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC10x10Unorm = 90 - * } - */ - public static int WGPUTextureFormat_ASTC10x10Unorm() { - return WGPUTextureFormat_ASTC10x10Unorm; - } - private static final int WGPUTextureFormat_ASTC10x10UnormSrgb = (int)91L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC10x10UnormSrgb = 91 - * } - */ - public static int WGPUTextureFormat_ASTC10x10UnormSrgb() { - return WGPUTextureFormat_ASTC10x10UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC12x10Unorm = (int)92L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC12x10Unorm = 92 - * } - */ - public static int WGPUTextureFormat_ASTC12x10Unorm() { - return WGPUTextureFormat_ASTC12x10Unorm; - } - private static final int WGPUTextureFormat_ASTC12x10UnormSrgb = (int)93L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC12x10UnormSrgb = 93 - * } - */ - public static int WGPUTextureFormat_ASTC12x10UnormSrgb() { - return WGPUTextureFormat_ASTC12x10UnormSrgb; - } - private static final int WGPUTextureFormat_ASTC12x12Unorm = (int)94L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC12x12Unorm = 94 - * } - */ - public static int WGPUTextureFormat_ASTC12x12Unorm() { - return WGPUTextureFormat_ASTC12x12Unorm; - } - private static final int WGPUTextureFormat_ASTC12x12UnormSrgb = (int)95L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_ASTC12x12UnormSrgb = 95 - * } - */ - public static int WGPUTextureFormat_ASTC12x12UnormSrgb() { - return WGPUTextureFormat_ASTC12x12UnormSrgb; - } - private static final int WGPUTextureFormat_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUTextureFormat.WGPUTextureFormat_Force32 = 2147483647 - * } - */ - public static int WGPUTextureFormat_Force32() { - return WGPUTextureFormat_Force32; - } - private static final int WGPUTextureSampleType_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUTextureSampleType.WGPUTextureSampleType_Undefined = 0 - * } - */ - public static int WGPUTextureSampleType_Undefined() { - return WGPUTextureSampleType_Undefined; - } - private static final int WGPUTextureSampleType_Float = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUTextureSampleType.WGPUTextureSampleType_Float = 1 - * } - */ - public static int WGPUTextureSampleType_Float() { - return WGPUTextureSampleType_Float; - } - private static final int WGPUTextureSampleType_UnfilterableFloat = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUTextureSampleType.WGPUTextureSampleType_UnfilterableFloat = 2 - * } - */ - public static int WGPUTextureSampleType_UnfilterableFloat() { - return WGPUTextureSampleType_UnfilterableFloat; - } - private static final int WGPUTextureSampleType_Depth = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUTextureSampleType.WGPUTextureSampleType_Depth = 3 - * } - */ - public static int WGPUTextureSampleType_Depth() { - return WGPUTextureSampleType_Depth; - } - private static final int WGPUTextureSampleType_Sint = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUTextureSampleType.WGPUTextureSampleType_Sint = 4 - * } - */ - public static int WGPUTextureSampleType_Sint() { - return WGPUTextureSampleType_Sint; - } - private static final int WGPUTextureSampleType_Uint = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUTextureSampleType.WGPUTextureSampleType_Uint = 5 - * } - */ - public static int WGPUTextureSampleType_Uint() { - return WGPUTextureSampleType_Uint; - } - private static final int WGPUTextureSampleType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUTextureSampleType.WGPUTextureSampleType_Force32 = 2147483647 - * } - */ - public static int WGPUTextureSampleType_Force32() { - return WGPUTextureSampleType_Force32; - } - private static final int WGPUTextureViewDimension_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUTextureViewDimension.WGPUTextureViewDimension_Undefined = 0 - * } - */ - public static int WGPUTextureViewDimension_Undefined() { - return WGPUTextureViewDimension_Undefined; - } - private static final int WGPUTextureViewDimension_1D = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUTextureViewDimension.WGPUTextureViewDimension_1D = 1 - * } - */ - public static int WGPUTextureViewDimension_1D() { - return WGPUTextureViewDimension_1D; - } - private static final int WGPUTextureViewDimension_2D = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUTextureViewDimension.WGPUTextureViewDimension_2D = 2 - * } - */ - public static int WGPUTextureViewDimension_2D() { - return WGPUTextureViewDimension_2D; - } - private static final int WGPUTextureViewDimension_2DArray = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUTextureViewDimension.WGPUTextureViewDimension_2DArray = 3 - * } - */ - public static int WGPUTextureViewDimension_2DArray() { - return WGPUTextureViewDimension_2DArray; - } - private static final int WGPUTextureViewDimension_Cube = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUTextureViewDimension.WGPUTextureViewDimension_Cube = 4 - * } - */ - public static int WGPUTextureViewDimension_Cube() { - return WGPUTextureViewDimension_Cube; - } - private static final int WGPUTextureViewDimension_CubeArray = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUTextureViewDimension.WGPUTextureViewDimension_CubeArray = 5 - * } - */ - public static int WGPUTextureViewDimension_CubeArray() { - return WGPUTextureViewDimension_CubeArray; - } - private static final int WGPUTextureViewDimension_3D = (int)6L; - /** - * {@snippet lang=c : - * enum WGPUTextureViewDimension.WGPUTextureViewDimension_3D = 6 - * } - */ - public static int WGPUTextureViewDimension_3D() { - return WGPUTextureViewDimension_3D; - } - private static final int WGPUTextureViewDimension_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUTextureViewDimension.WGPUTextureViewDimension_Force32 = 2147483647 - * } - */ - public static int WGPUTextureViewDimension_Force32() { - return WGPUTextureViewDimension_Force32; - } - private static final int WGPUVertexFormat_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Undefined = 0 - * } - */ - public static int WGPUVertexFormat_Undefined() { - return WGPUVertexFormat_Undefined; - } - private static final int WGPUVertexFormat_Uint8x2 = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Uint8x2 = 1 - * } - */ - public static int WGPUVertexFormat_Uint8x2() { - return WGPUVertexFormat_Uint8x2; - } - private static final int WGPUVertexFormat_Uint8x4 = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Uint8x4 = 2 - * } - */ - public static int WGPUVertexFormat_Uint8x4() { - return WGPUVertexFormat_Uint8x4; - } - private static final int WGPUVertexFormat_Sint8x2 = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Sint8x2 = 3 - * } - */ - public static int WGPUVertexFormat_Sint8x2() { - return WGPUVertexFormat_Sint8x2; - } - private static final int WGPUVertexFormat_Sint8x4 = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Sint8x4 = 4 - * } - */ - public static int WGPUVertexFormat_Sint8x4() { - return WGPUVertexFormat_Sint8x4; - } - private static final int WGPUVertexFormat_Unorm8x2 = (int)5L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Unorm8x2 = 5 - * } - */ - public static int WGPUVertexFormat_Unorm8x2() { - return WGPUVertexFormat_Unorm8x2; - } - private static final int WGPUVertexFormat_Unorm8x4 = (int)6L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Unorm8x4 = 6 - * } - */ - public static int WGPUVertexFormat_Unorm8x4() { - return WGPUVertexFormat_Unorm8x4; - } - private static final int WGPUVertexFormat_Snorm8x2 = (int)7L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Snorm8x2 = 7 - * } - */ - public static int WGPUVertexFormat_Snorm8x2() { - return WGPUVertexFormat_Snorm8x2; - } - private static final int WGPUVertexFormat_Snorm8x4 = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Snorm8x4 = 8 - * } - */ - public static int WGPUVertexFormat_Snorm8x4() { - return WGPUVertexFormat_Snorm8x4; - } - private static final int WGPUVertexFormat_Uint16x2 = (int)9L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Uint16x2 = 9 - * } - */ - public static int WGPUVertexFormat_Uint16x2() { - return WGPUVertexFormat_Uint16x2; - } - private static final int WGPUVertexFormat_Uint16x4 = (int)10L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Uint16x4 = 10 - * } - */ - public static int WGPUVertexFormat_Uint16x4() { - return WGPUVertexFormat_Uint16x4; - } - private static final int WGPUVertexFormat_Sint16x2 = (int)11L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Sint16x2 = 11 - * } - */ - public static int WGPUVertexFormat_Sint16x2() { - return WGPUVertexFormat_Sint16x2; - } - private static final int WGPUVertexFormat_Sint16x4 = (int)12L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Sint16x4 = 12 - * } - */ - public static int WGPUVertexFormat_Sint16x4() { - return WGPUVertexFormat_Sint16x4; - } - private static final int WGPUVertexFormat_Unorm16x2 = (int)13L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Unorm16x2 = 13 - * } - */ - public static int WGPUVertexFormat_Unorm16x2() { - return WGPUVertexFormat_Unorm16x2; - } - private static final int WGPUVertexFormat_Unorm16x4 = (int)14L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Unorm16x4 = 14 - * } - */ - public static int WGPUVertexFormat_Unorm16x4() { - return WGPUVertexFormat_Unorm16x4; - } - private static final int WGPUVertexFormat_Snorm16x2 = (int)15L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Snorm16x2 = 15 - * } - */ - public static int WGPUVertexFormat_Snorm16x2() { - return WGPUVertexFormat_Snorm16x2; - } - private static final int WGPUVertexFormat_Snorm16x4 = (int)16L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Snorm16x4 = 16 - * } - */ - public static int WGPUVertexFormat_Snorm16x4() { - return WGPUVertexFormat_Snorm16x4; - } - private static final int WGPUVertexFormat_Float16x2 = (int)17L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Float16x2 = 17 - * } - */ - public static int WGPUVertexFormat_Float16x2() { - return WGPUVertexFormat_Float16x2; - } - private static final int WGPUVertexFormat_Float16x4 = (int)18L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Float16x4 = 18 - * } - */ - public static int WGPUVertexFormat_Float16x4() { - return WGPUVertexFormat_Float16x4; - } - private static final int WGPUVertexFormat_Float32 = (int)19L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Float32 = 19 - * } - */ - public static int WGPUVertexFormat_Float32() { - return WGPUVertexFormat_Float32; - } - private static final int WGPUVertexFormat_Float32x2 = (int)20L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Float32x2 = 20 - * } - */ - public static int WGPUVertexFormat_Float32x2() { - return WGPUVertexFormat_Float32x2; - } - private static final int WGPUVertexFormat_Float32x3 = (int)21L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Float32x3 = 21 - * } - */ - public static int WGPUVertexFormat_Float32x3() { - return WGPUVertexFormat_Float32x3; - } - private static final int WGPUVertexFormat_Float32x4 = (int)22L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Float32x4 = 22 - * } - */ - public static int WGPUVertexFormat_Float32x4() { - return WGPUVertexFormat_Float32x4; - } - private static final int WGPUVertexFormat_Uint32 = (int)23L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Uint32 = 23 - * } - */ - public static int WGPUVertexFormat_Uint32() { - return WGPUVertexFormat_Uint32; - } - private static final int WGPUVertexFormat_Uint32x2 = (int)24L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Uint32x2 = 24 - * } - */ - public static int WGPUVertexFormat_Uint32x2() { - return WGPUVertexFormat_Uint32x2; - } - private static final int WGPUVertexFormat_Uint32x3 = (int)25L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Uint32x3 = 25 - * } - */ - public static int WGPUVertexFormat_Uint32x3() { - return WGPUVertexFormat_Uint32x3; - } - private static final int WGPUVertexFormat_Uint32x4 = (int)26L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Uint32x4 = 26 - * } - */ - public static int WGPUVertexFormat_Uint32x4() { - return WGPUVertexFormat_Uint32x4; - } - private static final int WGPUVertexFormat_Sint32 = (int)27L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Sint32 = 27 - * } - */ - public static int WGPUVertexFormat_Sint32() { - return WGPUVertexFormat_Sint32; - } - private static final int WGPUVertexFormat_Sint32x2 = (int)28L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Sint32x2 = 28 - * } - */ - public static int WGPUVertexFormat_Sint32x2() { - return WGPUVertexFormat_Sint32x2; - } - private static final int WGPUVertexFormat_Sint32x3 = (int)29L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Sint32x3 = 29 - * } - */ - public static int WGPUVertexFormat_Sint32x3() { - return WGPUVertexFormat_Sint32x3; - } - private static final int WGPUVertexFormat_Sint32x4 = (int)30L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Sint32x4 = 30 - * } - */ - public static int WGPUVertexFormat_Sint32x4() { - return WGPUVertexFormat_Sint32x4; - } - private static final int WGPUVertexFormat_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUVertexFormat.WGPUVertexFormat_Force32 = 2147483647 - * } - */ - public static int WGPUVertexFormat_Force32() { - return WGPUVertexFormat_Force32; - } - private static final int WGPUVertexStepMode_Vertex = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUVertexStepMode.WGPUVertexStepMode_Vertex = 0 - * } - */ - public static int WGPUVertexStepMode_Vertex() { - return WGPUVertexStepMode_Vertex; - } - private static final int WGPUVertexStepMode_Instance = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUVertexStepMode.WGPUVertexStepMode_Instance = 1 - * } - */ - public static int WGPUVertexStepMode_Instance() { - return WGPUVertexStepMode_Instance; - } - private static final int WGPUVertexStepMode_VertexBufferNotUsed = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUVertexStepMode.WGPUVertexStepMode_VertexBufferNotUsed = 2 - * } - */ - public static int WGPUVertexStepMode_VertexBufferNotUsed() { - return WGPUVertexStepMode_VertexBufferNotUsed; - } - private static final int WGPUVertexStepMode_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUVertexStepMode.WGPUVertexStepMode_Force32 = 2147483647 - * } - */ - public static int WGPUVertexStepMode_Force32() { - return WGPUVertexStepMode_Force32; - } - private static final int WGPUBufferUsage_None = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_None = 0 - * } - */ - public static int WGPUBufferUsage_None() { - return WGPUBufferUsage_None; - } - private static final int WGPUBufferUsage_MapRead = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_MapRead = 1 - * } - */ - public static int WGPUBufferUsage_MapRead() { - return WGPUBufferUsage_MapRead; - } - private static final int WGPUBufferUsage_MapWrite = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_MapWrite = 2 - * } - */ - public static int WGPUBufferUsage_MapWrite() { - return WGPUBufferUsage_MapWrite; - } - private static final int WGPUBufferUsage_CopySrc = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_CopySrc = 4 - * } - */ - public static int WGPUBufferUsage_CopySrc() { - return WGPUBufferUsage_CopySrc; - } - private static final int WGPUBufferUsage_CopyDst = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_CopyDst = 8 - * } - */ - public static int WGPUBufferUsage_CopyDst() { - return WGPUBufferUsage_CopyDst; - } - private static final int WGPUBufferUsage_Index = (int)16L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_Index = 16 - * } - */ - public static int WGPUBufferUsage_Index() { - return WGPUBufferUsage_Index; - } - private static final int WGPUBufferUsage_Vertex = (int)32L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_Vertex = 32 - * } - */ - public static int WGPUBufferUsage_Vertex() { - return WGPUBufferUsage_Vertex; - } - private static final int WGPUBufferUsage_Uniform = (int)64L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_Uniform = 64 - * } - */ - public static int WGPUBufferUsage_Uniform() { - return WGPUBufferUsage_Uniform; - } - private static final int WGPUBufferUsage_Storage = (int)128L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_Storage = 128 - * } - */ - public static int WGPUBufferUsage_Storage() { - return WGPUBufferUsage_Storage; - } - private static final int WGPUBufferUsage_Indirect = (int)256L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_Indirect = 256 - * } - */ - public static int WGPUBufferUsage_Indirect() { - return WGPUBufferUsage_Indirect; - } - private static final int WGPUBufferUsage_QueryResolve = (int)512L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_QueryResolve = 512 - * } - */ - public static int WGPUBufferUsage_QueryResolve() { - return WGPUBufferUsage_QueryResolve; - } - private static final int WGPUBufferUsage_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUBufferUsage.WGPUBufferUsage_Force32 = 2147483647 - * } - */ - public static int WGPUBufferUsage_Force32() { - return WGPUBufferUsage_Force32; - } - /** - * {@snippet lang=c : - * typedef WGPUFlags WGPUBufferUsageFlags - * } - */ - public static final OfInt WGPUBufferUsageFlags = WGPU.C_INT; - private static final int WGPUColorWriteMask_None = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUColorWriteMask.WGPUColorWriteMask_None = 0 - * } - */ - public static int WGPUColorWriteMask_None() { - return WGPUColorWriteMask_None; - } - private static final int WGPUColorWriteMask_Red = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUColorWriteMask.WGPUColorWriteMask_Red = 1 - * } - */ - public static int WGPUColorWriteMask_Red() { - return WGPUColorWriteMask_Red; - } - private static final int WGPUColorWriteMask_Green = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUColorWriteMask.WGPUColorWriteMask_Green = 2 - * } - */ - public static int WGPUColorWriteMask_Green() { - return WGPUColorWriteMask_Green; - } - private static final int WGPUColorWriteMask_Blue = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUColorWriteMask.WGPUColorWriteMask_Blue = 4 - * } - */ - public static int WGPUColorWriteMask_Blue() { - return WGPUColorWriteMask_Blue; - } - private static final int WGPUColorWriteMask_Alpha = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUColorWriteMask.WGPUColorWriteMask_Alpha = 8 - * } - */ - public static int WGPUColorWriteMask_Alpha() { - return WGPUColorWriteMask_Alpha; - } - private static final int WGPUColorWriteMask_All = (int)15L; - /** - * {@snippet lang=c : - * enum WGPUColorWriteMask.WGPUColorWriteMask_All = 15 - * } - */ - public static int WGPUColorWriteMask_All() { - return WGPUColorWriteMask_All; - } - private static final int WGPUColorWriteMask_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUColorWriteMask.WGPUColorWriteMask_Force32 = 2147483647 - * } - */ - public static int WGPUColorWriteMask_Force32() { - return WGPUColorWriteMask_Force32; - } - /** - * {@snippet lang=c : - * typedef WGPUFlags WGPUColorWriteMaskFlags - * } - */ - public static final OfInt WGPUColorWriteMaskFlags = WGPU.C_INT; - private static final int WGPUMapMode_None = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUMapMode.WGPUMapMode_None = 0 - * } - */ - public static int WGPUMapMode_None() { - return WGPUMapMode_None; - } - private static final int WGPUMapMode_Read = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUMapMode.WGPUMapMode_Read = 1 - * } - */ - public static int WGPUMapMode_Read() { - return WGPUMapMode_Read; - } - private static final int WGPUMapMode_Write = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUMapMode.WGPUMapMode_Write = 2 - * } - */ - public static int WGPUMapMode_Write() { - return WGPUMapMode_Write; - } - private static final int WGPUMapMode_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUMapMode.WGPUMapMode_Force32 = 2147483647 - * } - */ - public static int WGPUMapMode_Force32() { - return WGPUMapMode_Force32; - } - /** - * {@snippet lang=c : - * typedef WGPUFlags WGPUMapModeFlags - * } - */ - public static final OfInt WGPUMapModeFlags = WGPU.C_INT; - private static final int WGPUShaderStage_None = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUShaderStage.WGPUShaderStage_None = 0 - * } - */ - public static int WGPUShaderStage_None() { - return WGPUShaderStage_None; - } - private static final int WGPUShaderStage_Vertex = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUShaderStage.WGPUShaderStage_Vertex = 1 - * } - */ - public static int WGPUShaderStage_Vertex() { - return WGPUShaderStage_Vertex; - } - private static final int WGPUShaderStage_Fragment = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUShaderStage.WGPUShaderStage_Fragment = 2 - * } - */ - public static int WGPUShaderStage_Fragment() { - return WGPUShaderStage_Fragment; - } - private static final int WGPUShaderStage_Compute = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUShaderStage.WGPUShaderStage_Compute = 4 - * } - */ - public static int WGPUShaderStage_Compute() { - return WGPUShaderStage_Compute; - } - private static final int WGPUShaderStage_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUShaderStage.WGPUShaderStage_Force32 = 2147483647 - * } - */ - public static int WGPUShaderStage_Force32() { - return WGPUShaderStage_Force32; - } - /** - * {@snippet lang=c : - * typedef WGPUFlags WGPUShaderStageFlags - * } - */ - public static final OfInt WGPUShaderStageFlags = WGPU.C_INT; - private static final int WGPUTextureUsage_None = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUTextureUsage.WGPUTextureUsage_None = 0 - * } - */ - public static int WGPUTextureUsage_None() { - return WGPUTextureUsage_None; - } - private static final int WGPUTextureUsage_CopySrc = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUTextureUsage.WGPUTextureUsage_CopySrc = 1 - * } - */ - public static int WGPUTextureUsage_CopySrc() { - return WGPUTextureUsage_CopySrc; - } - private static final int WGPUTextureUsage_CopyDst = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUTextureUsage.WGPUTextureUsage_CopyDst = 2 - * } - */ - public static int WGPUTextureUsage_CopyDst() { - return WGPUTextureUsage_CopyDst; - } - private static final int WGPUTextureUsage_TextureBinding = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUTextureUsage.WGPUTextureUsage_TextureBinding = 4 - * } - */ - public static int WGPUTextureUsage_TextureBinding() { - return WGPUTextureUsage_TextureBinding; - } - private static final int WGPUTextureUsage_StorageBinding = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUTextureUsage.WGPUTextureUsage_StorageBinding = 8 - * } - */ - public static int WGPUTextureUsage_StorageBinding() { - return WGPUTextureUsage_StorageBinding; - } - private static final int WGPUTextureUsage_RenderAttachment = (int)16L; - /** - * {@snippet lang=c : - * enum WGPUTextureUsage.WGPUTextureUsage_RenderAttachment = 16 - * } - */ - public static int WGPUTextureUsage_RenderAttachment() { - return WGPUTextureUsage_RenderAttachment; - } - private static final int WGPUTextureUsage_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUTextureUsage.WGPUTextureUsage_Force32 = 2147483647 - * } - */ - public static int WGPUTextureUsage_Force32() { - return WGPUTextureUsage_Force32; - } - /** - * {@snippet lang=c : - * typedef WGPUFlags WGPUTextureUsageFlags - * } - */ - public static final OfInt WGPUTextureUsageFlags = WGPU.C_INT; - - private static class wgpuCreateInstance { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCreateInstance"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUInstance wgpuCreateInstance(const WGPUInstanceDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuCreateInstance$descriptor() { - return wgpuCreateInstance.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUInstance wgpuCreateInstance(const WGPUInstanceDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuCreateInstance$handle() { - return wgpuCreateInstance.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUInstance wgpuCreateInstance(const WGPUInstanceDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuCreateInstance$address() { - return wgpuCreateInstance.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUInstance wgpuCreateInstance(const WGPUInstanceDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuCreateInstance(MemorySegment descriptor) { - var mh$ = wgpuCreateInstance.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCreateInstance", descriptor); - } - return (MemorySegment)mh$.invokeExact(descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuGetProcAddress { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuGetProcAddress"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUProc wgpuGetProcAddress(WGPUDevice device, const char *procName) - * } - */ - public static FunctionDescriptor wgpuGetProcAddress$descriptor() { - return wgpuGetProcAddress.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUProc wgpuGetProcAddress(WGPUDevice device, const char *procName) - * } - */ - public static MethodHandle wgpuGetProcAddress$handle() { - return wgpuGetProcAddress.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUProc wgpuGetProcAddress(WGPUDevice device, const char *procName) - * } - */ - public static MemorySegment wgpuGetProcAddress$address() { - return wgpuGetProcAddress.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUProc wgpuGetProcAddress(WGPUDevice device, const char *procName) - * } - */ - public static MemorySegment wgpuGetProcAddress(MemorySegment device, MemorySegment procName) { - var mh$ = wgpuGetProcAddress.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuGetProcAddress", device, procName); - } - return (MemorySegment)mh$.invokeExact(device, procName); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuAdapterEnumerateFeatures { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuAdapterEnumerateFeatures"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * size_t wgpuAdapterEnumerateFeatures(WGPUAdapter adapter, WGPUFeatureName *features) - * } - */ - public static FunctionDescriptor wgpuAdapterEnumerateFeatures$descriptor() { - return wgpuAdapterEnumerateFeatures.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * size_t wgpuAdapterEnumerateFeatures(WGPUAdapter adapter, WGPUFeatureName *features) - * } - */ - public static MethodHandle wgpuAdapterEnumerateFeatures$handle() { - return wgpuAdapterEnumerateFeatures.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * size_t wgpuAdapterEnumerateFeatures(WGPUAdapter adapter, WGPUFeatureName *features) - * } - */ - public static MemorySegment wgpuAdapterEnumerateFeatures$address() { - return wgpuAdapterEnumerateFeatures.ADDR; - } - - /** - * {@snippet lang=c : - * size_t wgpuAdapterEnumerateFeatures(WGPUAdapter adapter, WGPUFeatureName *features) - * } - */ - public static long wgpuAdapterEnumerateFeatures(MemorySegment adapter, MemorySegment features) { - var mh$ = wgpuAdapterEnumerateFeatures.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuAdapterEnumerateFeatures", adapter, features); - } - return (long)mh$.invokeExact(adapter, features); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuAdapterGetLimits { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuAdapterGetLimits"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBool wgpuAdapterGetLimits(WGPUAdapter adapter, WGPUSupportedLimits *limits) - * } - */ - public static FunctionDescriptor wgpuAdapterGetLimits$descriptor() { - return wgpuAdapterGetLimits.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBool wgpuAdapterGetLimits(WGPUAdapter adapter, WGPUSupportedLimits *limits) - * } - */ - public static MethodHandle wgpuAdapterGetLimits$handle() { - return wgpuAdapterGetLimits.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBool wgpuAdapterGetLimits(WGPUAdapter adapter, WGPUSupportedLimits *limits) - * } - */ - public static MemorySegment wgpuAdapterGetLimits$address() { - return wgpuAdapterGetLimits.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBool wgpuAdapterGetLimits(WGPUAdapter adapter, WGPUSupportedLimits *limits) - * } - */ - public static int wgpuAdapterGetLimits(MemorySegment adapter, MemorySegment limits) { - var mh$ = wgpuAdapterGetLimits.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuAdapterGetLimits", adapter, limits); - } - return (int)mh$.invokeExact(adapter, limits); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuAdapterGetProperties { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuAdapterGetProperties"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuAdapterGetProperties(WGPUAdapter adapter, WGPUAdapterProperties *properties) - * } - */ - public static FunctionDescriptor wgpuAdapterGetProperties$descriptor() { - return wgpuAdapterGetProperties.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuAdapterGetProperties(WGPUAdapter adapter, WGPUAdapterProperties *properties) - * } - */ - public static MethodHandle wgpuAdapterGetProperties$handle() { - return wgpuAdapterGetProperties.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuAdapterGetProperties(WGPUAdapter adapter, WGPUAdapterProperties *properties) - * } - */ - public static MemorySegment wgpuAdapterGetProperties$address() { - return wgpuAdapterGetProperties.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuAdapterGetProperties(WGPUAdapter adapter, WGPUAdapterProperties *properties) - * } - */ - public static void wgpuAdapterGetProperties(MemorySegment adapter, MemorySegment properties) { - var mh$ = wgpuAdapterGetProperties.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuAdapterGetProperties", adapter, properties); - } - mh$.invokeExact(adapter, properties); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuAdapterHasFeature { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuAdapterHasFeature"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBool wgpuAdapterHasFeature(WGPUAdapter adapter, WGPUFeatureName feature) - * } - */ - public static FunctionDescriptor wgpuAdapterHasFeature$descriptor() { - return wgpuAdapterHasFeature.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBool wgpuAdapterHasFeature(WGPUAdapter adapter, WGPUFeatureName feature) - * } - */ - public static MethodHandle wgpuAdapterHasFeature$handle() { - return wgpuAdapterHasFeature.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBool wgpuAdapterHasFeature(WGPUAdapter adapter, WGPUFeatureName feature) - * } - */ - public static MemorySegment wgpuAdapterHasFeature$address() { - return wgpuAdapterHasFeature.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBool wgpuAdapterHasFeature(WGPUAdapter adapter, WGPUFeatureName feature) - * } - */ - public static int wgpuAdapterHasFeature(MemorySegment adapter, int feature) { - var mh$ = wgpuAdapterHasFeature.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuAdapterHasFeature", adapter, feature); - } - return (int)mh$.invokeExact(adapter, feature); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuAdapterRequestDevice { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuAdapterRequestDevice"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuAdapterRequestDevice(WGPUAdapter adapter, const WGPUDeviceDescriptor *descriptor, WGPURequestDeviceCallback callback, void *userdata) - * } - */ - public static FunctionDescriptor wgpuAdapterRequestDevice$descriptor() { - return wgpuAdapterRequestDevice.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuAdapterRequestDevice(WGPUAdapter adapter, const WGPUDeviceDescriptor *descriptor, WGPURequestDeviceCallback callback, void *userdata) - * } - */ - public static MethodHandle wgpuAdapterRequestDevice$handle() { - return wgpuAdapterRequestDevice.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuAdapterRequestDevice(WGPUAdapter adapter, const WGPUDeviceDescriptor *descriptor, WGPURequestDeviceCallback callback, void *userdata) - * } - */ - public static MemorySegment wgpuAdapterRequestDevice$address() { - return wgpuAdapterRequestDevice.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuAdapterRequestDevice(WGPUAdapter adapter, const WGPUDeviceDescriptor *descriptor, WGPURequestDeviceCallback callback, void *userdata) - * } - */ - public static void wgpuAdapterRequestDevice(MemorySegment adapter, MemorySegment descriptor, MemorySegment callback, MemorySegment userdata) { - var mh$ = wgpuAdapterRequestDevice.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuAdapterRequestDevice", adapter, descriptor, callback, userdata); - } - mh$.invokeExact(adapter, descriptor, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuAdapterReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuAdapterReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuAdapterReference(WGPUAdapter adapter) - * } - */ - public static FunctionDescriptor wgpuAdapterReference$descriptor() { - return wgpuAdapterReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuAdapterReference(WGPUAdapter adapter) - * } - */ - public static MethodHandle wgpuAdapterReference$handle() { - return wgpuAdapterReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuAdapterReference(WGPUAdapter adapter) - * } - */ - public static MemorySegment wgpuAdapterReference$address() { - return wgpuAdapterReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuAdapterReference(WGPUAdapter adapter) - * } - */ - public static void wgpuAdapterReference(MemorySegment adapter) { - var mh$ = wgpuAdapterReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuAdapterReference", adapter); - } - mh$.invokeExact(adapter); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuAdapterRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuAdapterRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuAdapterRelease(WGPUAdapter adapter) - * } - */ - public static FunctionDescriptor wgpuAdapterRelease$descriptor() { - return wgpuAdapterRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuAdapterRelease(WGPUAdapter adapter) - * } - */ - public static MethodHandle wgpuAdapterRelease$handle() { - return wgpuAdapterRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuAdapterRelease(WGPUAdapter adapter) - * } - */ - public static MemorySegment wgpuAdapterRelease$address() { - return wgpuAdapterRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuAdapterRelease(WGPUAdapter adapter) - * } - */ - public static void wgpuAdapterRelease(MemorySegment adapter) { - var mh$ = wgpuAdapterRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuAdapterRelease", adapter); - } - mh$.invokeExact(adapter); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBindGroupSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBindGroupSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBindGroupSetLabel(WGPUBindGroup bindGroup, const char *label) - * } - */ - public static FunctionDescriptor wgpuBindGroupSetLabel$descriptor() { - return wgpuBindGroupSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBindGroupSetLabel(WGPUBindGroup bindGroup, const char *label) - * } - */ - public static MethodHandle wgpuBindGroupSetLabel$handle() { - return wgpuBindGroupSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBindGroupSetLabel(WGPUBindGroup bindGroup, const char *label) - * } - */ - public static MemorySegment wgpuBindGroupSetLabel$address() { - return wgpuBindGroupSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBindGroupSetLabel(WGPUBindGroup bindGroup, const char *label) - * } - */ - public static void wgpuBindGroupSetLabel(MemorySegment bindGroup, MemorySegment label) { - var mh$ = wgpuBindGroupSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBindGroupSetLabel", bindGroup, label); - } - mh$.invokeExact(bindGroup, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBindGroupReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBindGroupReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBindGroupReference(WGPUBindGroup bindGroup) - * } - */ - public static FunctionDescriptor wgpuBindGroupReference$descriptor() { - return wgpuBindGroupReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBindGroupReference(WGPUBindGroup bindGroup) - * } - */ - public static MethodHandle wgpuBindGroupReference$handle() { - return wgpuBindGroupReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBindGroupReference(WGPUBindGroup bindGroup) - * } - */ - public static MemorySegment wgpuBindGroupReference$address() { - return wgpuBindGroupReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBindGroupReference(WGPUBindGroup bindGroup) - * } - */ - public static void wgpuBindGroupReference(MemorySegment bindGroup) { - var mh$ = wgpuBindGroupReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBindGroupReference", bindGroup); - } - mh$.invokeExact(bindGroup); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBindGroupRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBindGroupRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBindGroupRelease(WGPUBindGroup bindGroup) - * } - */ - public static FunctionDescriptor wgpuBindGroupRelease$descriptor() { - return wgpuBindGroupRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBindGroupRelease(WGPUBindGroup bindGroup) - * } - */ - public static MethodHandle wgpuBindGroupRelease$handle() { - return wgpuBindGroupRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBindGroupRelease(WGPUBindGroup bindGroup) - * } - */ - public static MemorySegment wgpuBindGroupRelease$address() { - return wgpuBindGroupRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBindGroupRelease(WGPUBindGroup bindGroup) - * } - */ - public static void wgpuBindGroupRelease(MemorySegment bindGroup) { - var mh$ = wgpuBindGroupRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBindGroupRelease", bindGroup); - } - mh$.invokeExact(bindGroup); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBindGroupLayoutSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBindGroupLayoutSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBindGroupLayoutSetLabel(WGPUBindGroupLayout bindGroupLayout, const char *label) - * } - */ - public static FunctionDescriptor wgpuBindGroupLayoutSetLabel$descriptor() { - return wgpuBindGroupLayoutSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBindGroupLayoutSetLabel(WGPUBindGroupLayout bindGroupLayout, const char *label) - * } - */ - public static MethodHandle wgpuBindGroupLayoutSetLabel$handle() { - return wgpuBindGroupLayoutSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBindGroupLayoutSetLabel(WGPUBindGroupLayout bindGroupLayout, const char *label) - * } - */ - public static MemorySegment wgpuBindGroupLayoutSetLabel$address() { - return wgpuBindGroupLayoutSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBindGroupLayoutSetLabel(WGPUBindGroupLayout bindGroupLayout, const char *label) - * } - */ - public static void wgpuBindGroupLayoutSetLabel(MemorySegment bindGroupLayout, MemorySegment label) { - var mh$ = wgpuBindGroupLayoutSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBindGroupLayoutSetLabel", bindGroupLayout, label); - } - mh$.invokeExact(bindGroupLayout, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBindGroupLayoutReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBindGroupLayoutReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBindGroupLayoutReference(WGPUBindGroupLayout bindGroupLayout) - * } - */ - public static FunctionDescriptor wgpuBindGroupLayoutReference$descriptor() { - return wgpuBindGroupLayoutReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBindGroupLayoutReference(WGPUBindGroupLayout bindGroupLayout) - * } - */ - public static MethodHandle wgpuBindGroupLayoutReference$handle() { - return wgpuBindGroupLayoutReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBindGroupLayoutReference(WGPUBindGroupLayout bindGroupLayout) - * } - */ - public static MemorySegment wgpuBindGroupLayoutReference$address() { - return wgpuBindGroupLayoutReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBindGroupLayoutReference(WGPUBindGroupLayout bindGroupLayout) - * } - */ - public static void wgpuBindGroupLayoutReference(MemorySegment bindGroupLayout) { - var mh$ = wgpuBindGroupLayoutReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBindGroupLayoutReference", bindGroupLayout); - } - mh$.invokeExact(bindGroupLayout); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBindGroupLayoutRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBindGroupLayoutRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBindGroupLayoutRelease(WGPUBindGroupLayout bindGroupLayout) - * } - */ - public static FunctionDescriptor wgpuBindGroupLayoutRelease$descriptor() { - return wgpuBindGroupLayoutRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBindGroupLayoutRelease(WGPUBindGroupLayout bindGroupLayout) - * } - */ - public static MethodHandle wgpuBindGroupLayoutRelease$handle() { - return wgpuBindGroupLayoutRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBindGroupLayoutRelease(WGPUBindGroupLayout bindGroupLayout) - * } - */ - public static MemorySegment wgpuBindGroupLayoutRelease$address() { - return wgpuBindGroupLayoutRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBindGroupLayoutRelease(WGPUBindGroupLayout bindGroupLayout) - * } - */ - public static void wgpuBindGroupLayoutRelease(MemorySegment bindGroupLayout) { - var mh$ = wgpuBindGroupLayoutRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBindGroupLayoutRelease", bindGroupLayout); - } - mh$.invokeExact(bindGroupLayout); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferDestroy { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferDestroy"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBufferDestroy(WGPUBuffer buffer) - * } - */ - public static FunctionDescriptor wgpuBufferDestroy$descriptor() { - return wgpuBufferDestroy.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBufferDestroy(WGPUBuffer buffer) - * } - */ - public static MethodHandle wgpuBufferDestroy$handle() { - return wgpuBufferDestroy.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBufferDestroy(WGPUBuffer buffer) - * } - */ - public static MemorySegment wgpuBufferDestroy$address() { - return wgpuBufferDestroy.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBufferDestroy(WGPUBuffer buffer) - * } - */ - public static void wgpuBufferDestroy(MemorySegment buffer) { - var mh$ = wgpuBufferDestroy.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferDestroy", buffer); - } - mh$.invokeExact(buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferGetConstMappedRange { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferGetConstMappedRange"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * const void *wgpuBufferGetConstMappedRange(WGPUBuffer buffer, size_t offset, size_t size) - * } - */ - public static FunctionDescriptor wgpuBufferGetConstMappedRange$descriptor() { - return wgpuBufferGetConstMappedRange.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * const void *wgpuBufferGetConstMappedRange(WGPUBuffer buffer, size_t offset, size_t size) - * } - */ - public static MethodHandle wgpuBufferGetConstMappedRange$handle() { - return wgpuBufferGetConstMappedRange.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * const void *wgpuBufferGetConstMappedRange(WGPUBuffer buffer, size_t offset, size_t size) - * } - */ - public static MemorySegment wgpuBufferGetConstMappedRange$address() { - return wgpuBufferGetConstMappedRange.ADDR; - } - - /** - * {@snippet lang=c : - * const void *wgpuBufferGetConstMappedRange(WGPUBuffer buffer, size_t offset, size_t size) - * } - */ - public static MemorySegment wgpuBufferGetConstMappedRange(MemorySegment buffer, long offset, long size) { - var mh$ = wgpuBufferGetConstMappedRange.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferGetConstMappedRange", buffer, offset, size); - } - return (MemorySegment)mh$.invokeExact(buffer, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferGetMapState { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferGetMapState"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBufferMapState wgpuBufferGetMapState(WGPUBuffer buffer) - * } - */ - public static FunctionDescriptor wgpuBufferGetMapState$descriptor() { - return wgpuBufferGetMapState.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBufferMapState wgpuBufferGetMapState(WGPUBuffer buffer) - * } - */ - public static MethodHandle wgpuBufferGetMapState$handle() { - return wgpuBufferGetMapState.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBufferMapState wgpuBufferGetMapState(WGPUBuffer buffer) - * } - */ - public static MemorySegment wgpuBufferGetMapState$address() { - return wgpuBufferGetMapState.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBufferMapState wgpuBufferGetMapState(WGPUBuffer buffer) - * } - */ - public static int wgpuBufferGetMapState(MemorySegment buffer) { - var mh$ = wgpuBufferGetMapState.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferGetMapState", buffer); - } - return (int)mh$.invokeExact(buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferGetMappedRange { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferGetMappedRange"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void *wgpuBufferGetMappedRange(WGPUBuffer buffer, size_t offset, size_t size) - * } - */ - public static FunctionDescriptor wgpuBufferGetMappedRange$descriptor() { - return wgpuBufferGetMappedRange.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void *wgpuBufferGetMappedRange(WGPUBuffer buffer, size_t offset, size_t size) - * } - */ - public static MethodHandle wgpuBufferGetMappedRange$handle() { - return wgpuBufferGetMappedRange.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void *wgpuBufferGetMappedRange(WGPUBuffer buffer, size_t offset, size_t size) - * } - */ - public static MemorySegment wgpuBufferGetMappedRange$address() { - return wgpuBufferGetMappedRange.ADDR; - } - - /** - * {@snippet lang=c : - * void *wgpuBufferGetMappedRange(WGPUBuffer buffer, size_t offset, size_t size) - * } - */ - public static MemorySegment wgpuBufferGetMappedRange(MemorySegment buffer, long offset, long size) { - var mh$ = wgpuBufferGetMappedRange.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferGetMappedRange", buffer, offset, size); - } - return (MemorySegment)mh$.invokeExact(buffer, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferGetSize { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferGetSize"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * uint64_t wgpuBufferGetSize(WGPUBuffer buffer) - * } - */ - public static FunctionDescriptor wgpuBufferGetSize$descriptor() { - return wgpuBufferGetSize.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * uint64_t wgpuBufferGetSize(WGPUBuffer buffer) - * } - */ - public static MethodHandle wgpuBufferGetSize$handle() { - return wgpuBufferGetSize.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * uint64_t wgpuBufferGetSize(WGPUBuffer buffer) - * } - */ - public static MemorySegment wgpuBufferGetSize$address() { - return wgpuBufferGetSize.ADDR; - } - - /** - * {@snippet lang=c : - * uint64_t wgpuBufferGetSize(WGPUBuffer buffer) - * } - */ - public static long wgpuBufferGetSize(MemorySegment buffer) { - var mh$ = wgpuBufferGetSize.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferGetSize", buffer); - } - return (long)mh$.invokeExact(buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferGetUsage { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferGetUsage"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBufferUsageFlags wgpuBufferGetUsage(WGPUBuffer buffer) - * } - */ - public static FunctionDescriptor wgpuBufferGetUsage$descriptor() { - return wgpuBufferGetUsage.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBufferUsageFlags wgpuBufferGetUsage(WGPUBuffer buffer) - * } - */ - public static MethodHandle wgpuBufferGetUsage$handle() { - return wgpuBufferGetUsage.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBufferUsageFlags wgpuBufferGetUsage(WGPUBuffer buffer) - * } - */ - public static MemorySegment wgpuBufferGetUsage$address() { - return wgpuBufferGetUsage.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBufferUsageFlags wgpuBufferGetUsage(WGPUBuffer buffer) - * } - */ - public static int wgpuBufferGetUsage(MemorySegment buffer) { - var mh$ = wgpuBufferGetUsage.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferGetUsage", buffer); - } - return (int)mh$.invokeExact(buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferMapAsync { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferMapAsync"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBufferMapAsync(WGPUBuffer buffer, WGPUMapModeFlags mode, size_t offset, size_t size, WGPUBufferMapCallback callback, void *userdata) - * } - */ - public static FunctionDescriptor wgpuBufferMapAsync$descriptor() { - return wgpuBufferMapAsync.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBufferMapAsync(WGPUBuffer buffer, WGPUMapModeFlags mode, size_t offset, size_t size, WGPUBufferMapCallback callback, void *userdata) - * } - */ - public static MethodHandle wgpuBufferMapAsync$handle() { - return wgpuBufferMapAsync.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBufferMapAsync(WGPUBuffer buffer, WGPUMapModeFlags mode, size_t offset, size_t size, WGPUBufferMapCallback callback, void *userdata) - * } - */ - public static MemorySegment wgpuBufferMapAsync$address() { - return wgpuBufferMapAsync.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBufferMapAsync(WGPUBuffer buffer, WGPUMapModeFlags mode, size_t offset, size_t size, WGPUBufferMapCallback callback, void *userdata) - * } - */ - public static void wgpuBufferMapAsync(MemorySegment buffer, int mode, long offset, long size, MemorySegment callback, MemorySegment userdata) { - var mh$ = wgpuBufferMapAsync.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferMapAsync", buffer, mode, offset, size, callback, userdata); - } - mh$.invokeExact(buffer, mode, offset, size, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBufferSetLabel(WGPUBuffer buffer, const char *label) - * } - */ - public static FunctionDescriptor wgpuBufferSetLabel$descriptor() { - return wgpuBufferSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBufferSetLabel(WGPUBuffer buffer, const char *label) - * } - */ - public static MethodHandle wgpuBufferSetLabel$handle() { - return wgpuBufferSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBufferSetLabel(WGPUBuffer buffer, const char *label) - * } - */ - public static MemorySegment wgpuBufferSetLabel$address() { - return wgpuBufferSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBufferSetLabel(WGPUBuffer buffer, const char *label) - * } - */ - public static void wgpuBufferSetLabel(MemorySegment buffer, MemorySegment label) { - var mh$ = wgpuBufferSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferSetLabel", buffer, label); - } - mh$.invokeExact(buffer, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferUnmap { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferUnmap"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBufferUnmap(WGPUBuffer buffer) - * } - */ - public static FunctionDescriptor wgpuBufferUnmap$descriptor() { - return wgpuBufferUnmap.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBufferUnmap(WGPUBuffer buffer) - * } - */ - public static MethodHandle wgpuBufferUnmap$handle() { - return wgpuBufferUnmap.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBufferUnmap(WGPUBuffer buffer) - * } - */ - public static MemorySegment wgpuBufferUnmap$address() { - return wgpuBufferUnmap.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBufferUnmap(WGPUBuffer buffer) - * } - */ - public static void wgpuBufferUnmap(MemorySegment buffer) { - var mh$ = wgpuBufferUnmap.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferUnmap", buffer); - } - mh$.invokeExact(buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBufferReference(WGPUBuffer buffer) - * } - */ - public static FunctionDescriptor wgpuBufferReference$descriptor() { - return wgpuBufferReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBufferReference(WGPUBuffer buffer) - * } - */ - public static MethodHandle wgpuBufferReference$handle() { - return wgpuBufferReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBufferReference(WGPUBuffer buffer) - * } - */ - public static MemorySegment wgpuBufferReference$address() { - return wgpuBufferReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBufferReference(WGPUBuffer buffer) - * } - */ - public static void wgpuBufferReference(MemorySegment buffer) { - var mh$ = wgpuBufferReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferReference", buffer); - } - mh$.invokeExact(buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuBufferRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuBufferRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuBufferRelease(WGPUBuffer buffer) - * } - */ - public static FunctionDescriptor wgpuBufferRelease$descriptor() { - return wgpuBufferRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuBufferRelease(WGPUBuffer buffer) - * } - */ - public static MethodHandle wgpuBufferRelease$handle() { - return wgpuBufferRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuBufferRelease(WGPUBuffer buffer) - * } - */ - public static MemorySegment wgpuBufferRelease$address() { - return wgpuBufferRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuBufferRelease(WGPUBuffer buffer) - * } - */ - public static void wgpuBufferRelease(MemorySegment buffer) { - var mh$ = wgpuBufferRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuBufferRelease", buffer); - } - mh$.invokeExact(buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandBufferSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandBufferSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandBufferSetLabel(WGPUCommandBuffer commandBuffer, const char *label) - * } - */ - public static FunctionDescriptor wgpuCommandBufferSetLabel$descriptor() { - return wgpuCommandBufferSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandBufferSetLabel(WGPUCommandBuffer commandBuffer, const char *label) - * } - */ - public static MethodHandle wgpuCommandBufferSetLabel$handle() { - return wgpuCommandBufferSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandBufferSetLabel(WGPUCommandBuffer commandBuffer, const char *label) - * } - */ - public static MemorySegment wgpuCommandBufferSetLabel$address() { - return wgpuCommandBufferSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandBufferSetLabel(WGPUCommandBuffer commandBuffer, const char *label) - * } - */ - public static void wgpuCommandBufferSetLabel(MemorySegment commandBuffer, MemorySegment label) { - var mh$ = wgpuCommandBufferSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandBufferSetLabel", commandBuffer, label); - } - mh$.invokeExact(commandBuffer, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandBufferReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandBufferReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandBufferReference(WGPUCommandBuffer commandBuffer) - * } - */ - public static FunctionDescriptor wgpuCommandBufferReference$descriptor() { - return wgpuCommandBufferReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandBufferReference(WGPUCommandBuffer commandBuffer) - * } - */ - public static MethodHandle wgpuCommandBufferReference$handle() { - return wgpuCommandBufferReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandBufferReference(WGPUCommandBuffer commandBuffer) - * } - */ - public static MemorySegment wgpuCommandBufferReference$address() { - return wgpuCommandBufferReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandBufferReference(WGPUCommandBuffer commandBuffer) - * } - */ - public static void wgpuCommandBufferReference(MemorySegment commandBuffer) { - var mh$ = wgpuCommandBufferReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandBufferReference", commandBuffer); - } - mh$.invokeExact(commandBuffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandBufferRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandBufferRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandBufferRelease(WGPUCommandBuffer commandBuffer) - * } - */ - public static FunctionDescriptor wgpuCommandBufferRelease$descriptor() { - return wgpuCommandBufferRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandBufferRelease(WGPUCommandBuffer commandBuffer) - * } - */ - public static MethodHandle wgpuCommandBufferRelease$handle() { - return wgpuCommandBufferRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandBufferRelease(WGPUCommandBuffer commandBuffer) - * } - */ - public static MemorySegment wgpuCommandBufferRelease$address() { - return wgpuCommandBufferRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandBufferRelease(WGPUCommandBuffer commandBuffer) - * } - */ - public static void wgpuCommandBufferRelease(MemorySegment commandBuffer) { - var mh$ = wgpuCommandBufferRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandBufferRelease", commandBuffer); - } - mh$.invokeExact(commandBuffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderBeginComputePass { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderBeginComputePass"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUComputePassEncoder wgpuCommandEncoderBeginComputePass(WGPUCommandEncoder commandEncoder, const WGPUComputePassDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderBeginComputePass$descriptor() { - return wgpuCommandEncoderBeginComputePass.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUComputePassEncoder wgpuCommandEncoderBeginComputePass(WGPUCommandEncoder commandEncoder, const WGPUComputePassDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuCommandEncoderBeginComputePass$handle() { - return wgpuCommandEncoderBeginComputePass.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUComputePassEncoder wgpuCommandEncoderBeginComputePass(WGPUCommandEncoder commandEncoder, const WGPUComputePassDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuCommandEncoderBeginComputePass$address() { - return wgpuCommandEncoderBeginComputePass.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUComputePassEncoder wgpuCommandEncoderBeginComputePass(WGPUCommandEncoder commandEncoder, const WGPUComputePassDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuCommandEncoderBeginComputePass(MemorySegment commandEncoder, MemorySegment descriptor) { - var mh$ = wgpuCommandEncoderBeginComputePass.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderBeginComputePass", commandEncoder, descriptor); - } - return (MemorySegment)mh$.invokeExact(commandEncoder, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderBeginRenderPass { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderBeginRenderPass"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPURenderPassEncoder wgpuCommandEncoderBeginRenderPass(WGPUCommandEncoder commandEncoder, const WGPURenderPassDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderBeginRenderPass$descriptor() { - return wgpuCommandEncoderBeginRenderPass.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPURenderPassEncoder wgpuCommandEncoderBeginRenderPass(WGPUCommandEncoder commandEncoder, const WGPURenderPassDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuCommandEncoderBeginRenderPass$handle() { - return wgpuCommandEncoderBeginRenderPass.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPURenderPassEncoder wgpuCommandEncoderBeginRenderPass(WGPUCommandEncoder commandEncoder, const WGPURenderPassDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuCommandEncoderBeginRenderPass$address() { - return wgpuCommandEncoderBeginRenderPass.ADDR; - } - - /** - * {@snippet lang=c : - * WGPURenderPassEncoder wgpuCommandEncoderBeginRenderPass(WGPUCommandEncoder commandEncoder, const WGPURenderPassDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuCommandEncoderBeginRenderPass(MemorySegment commandEncoder, MemorySegment descriptor) { - var mh$ = wgpuCommandEncoderBeginRenderPass.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderBeginRenderPass", commandEncoder, descriptor); - } - return (MemorySegment)mh$.invokeExact(commandEncoder, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderClearBuffer { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderClearBuffer"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderClearBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderClearBuffer$descriptor() { - return wgpuCommandEncoderClearBuffer.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderClearBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static MethodHandle wgpuCommandEncoderClearBuffer$handle() { - return wgpuCommandEncoderClearBuffer.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderClearBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static MemorySegment wgpuCommandEncoderClearBuffer$address() { - return wgpuCommandEncoderClearBuffer.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderClearBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static void wgpuCommandEncoderClearBuffer(MemorySegment commandEncoder, MemorySegment buffer, long offset, long size) { - var mh$ = wgpuCommandEncoderClearBuffer.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderClearBuffer", commandEncoder, buffer, offset, size); - } - mh$.invokeExact(commandEncoder, buffer, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderCopyBufferToBuffer { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderCopyBufferToBuffer"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyBufferToBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer source, uint64_t sourceOffset, WGPUBuffer destination, uint64_t destinationOffset, uint64_t size) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderCopyBufferToBuffer$descriptor() { - return wgpuCommandEncoderCopyBufferToBuffer.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyBufferToBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer source, uint64_t sourceOffset, WGPUBuffer destination, uint64_t destinationOffset, uint64_t size) - * } - */ - public static MethodHandle wgpuCommandEncoderCopyBufferToBuffer$handle() { - return wgpuCommandEncoderCopyBufferToBuffer.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyBufferToBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer source, uint64_t sourceOffset, WGPUBuffer destination, uint64_t destinationOffset, uint64_t size) - * } - */ - public static MemorySegment wgpuCommandEncoderCopyBufferToBuffer$address() { - return wgpuCommandEncoderCopyBufferToBuffer.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderCopyBufferToBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer source, uint64_t sourceOffset, WGPUBuffer destination, uint64_t destinationOffset, uint64_t size) - * } - */ - public static void wgpuCommandEncoderCopyBufferToBuffer(MemorySegment commandEncoder, MemorySegment source, long sourceOffset, MemorySegment destination, long destinationOffset, long size) { - var mh$ = wgpuCommandEncoderCopyBufferToBuffer.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderCopyBufferToBuffer", commandEncoder, source, sourceOffset, destination, destinationOffset, size); - } - mh$.invokeExact(commandEncoder, source, sourceOffset, destination, destinationOffset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderCopyBufferToTexture { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderCopyBufferToTexture"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyBufferToTexture(WGPUCommandEncoder commandEncoder, const WGPUImageCopyBuffer *source, const WGPUImageCopyTexture *destination, const WGPUExtent3D *copySize) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderCopyBufferToTexture$descriptor() { - return wgpuCommandEncoderCopyBufferToTexture.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyBufferToTexture(WGPUCommandEncoder commandEncoder, const WGPUImageCopyBuffer *source, const WGPUImageCopyTexture *destination, const WGPUExtent3D *copySize) - * } - */ - public static MethodHandle wgpuCommandEncoderCopyBufferToTexture$handle() { - return wgpuCommandEncoderCopyBufferToTexture.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyBufferToTexture(WGPUCommandEncoder commandEncoder, const WGPUImageCopyBuffer *source, const WGPUImageCopyTexture *destination, const WGPUExtent3D *copySize) - * } - */ - public static MemorySegment wgpuCommandEncoderCopyBufferToTexture$address() { - return wgpuCommandEncoderCopyBufferToTexture.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderCopyBufferToTexture(WGPUCommandEncoder commandEncoder, const WGPUImageCopyBuffer *source, const WGPUImageCopyTexture *destination, const WGPUExtent3D *copySize) - * } - */ - public static void wgpuCommandEncoderCopyBufferToTexture(MemorySegment commandEncoder, MemorySegment source, MemorySegment destination, MemorySegment copySize) { - var mh$ = wgpuCommandEncoderCopyBufferToTexture.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderCopyBufferToTexture", commandEncoder, source, destination, copySize); - } - mh$.invokeExact(commandEncoder, source, destination, copySize); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderCopyTextureToBuffer { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderCopyTextureToBuffer"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyTextureToBuffer(WGPUCommandEncoder commandEncoder, const WGPUImageCopyTexture *source, const WGPUImageCopyBuffer *destination, const WGPUExtent3D *copySize) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderCopyTextureToBuffer$descriptor() { - return wgpuCommandEncoderCopyTextureToBuffer.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyTextureToBuffer(WGPUCommandEncoder commandEncoder, const WGPUImageCopyTexture *source, const WGPUImageCopyBuffer *destination, const WGPUExtent3D *copySize) - * } - */ - public static MethodHandle wgpuCommandEncoderCopyTextureToBuffer$handle() { - return wgpuCommandEncoderCopyTextureToBuffer.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyTextureToBuffer(WGPUCommandEncoder commandEncoder, const WGPUImageCopyTexture *source, const WGPUImageCopyBuffer *destination, const WGPUExtent3D *copySize) - * } - */ - public static MemorySegment wgpuCommandEncoderCopyTextureToBuffer$address() { - return wgpuCommandEncoderCopyTextureToBuffer.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderCopyTextureToBuffer(WGPUCommandEncoder commandEncoder, const WGPUImageCopyTexture *source, const WGPUImageCopyBuffer *destination, const WGPUExtent3D *copySize) - * } - */ - public static void wgpuCommandEncoderCopyTextureToBuffer(MemorySegment commandEncoder, MemorySegment source, MemorySegment destination, MemorySegment copySize) { - var mh$ = wgpuCommandEncoderCopyTextureToBuffer.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderCopyTextureToBuffer", commandEncoder, source, destination, copySize); - } - mh$.invokeExact(commandEncoder, source, destination, copySize); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderCopyTextureToTexture { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderCopyTextureToTexture"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyTextureToTexture(WGPUCommandEncoder commandEncoder, const WGPUImageCopyTexture *source, const WGPUImageCopyTexture *destination, const WGPUExtent3D *copySize) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderCopyTextureToTexture$descriptor() { - return wgpuCommandEncoderCopyTextureToTexture.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyTextureToTexture(WGPUCommandEncoder commandEncoder, const WGPUImageCopyTexture *source, const WGPUImageCopyTexture *destination, const WGPUExtent3D *copySize) - * } - */ - public static MethodHandle wgpuCommandEncoderCopyTextureToTexture$handle() { - return wgpuCommandEncoderCopyTextureToTexture.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderCopyTextureToTexture(WGPUCommandEncoder commandEncoder, const WGPUImageCopyTexture *source, const WGPUImageCopyTexture *destination, const WGPUExtent3D *copySize) - * } - */ - public static MemorySegment wgpuCommandEncoderCopyTextureToTexture$address() { - return wgpuCommandEncoderCopyTextureToTexture.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderCopyTextureToTexture(WGPUCommandEncoder commandEncoder, const WGPUImageCopyTexture *source, const WGPUImageCopyTexture *destination, const WGPUExtent3D *copySize) - * } - */ - public static void wgpuCommandEncoderCopyTextureToTexture(MemorySegment commandEncoder, MemorySegment source, MemorySegment destination, MemorySegment copySize) { - var mh$ = wgpuCommandEncoderCopyTextureToTexture.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderCopyTextureToTexture", commandEncoder, source, destination, copySize); - } - mh$.invokeExact(commandEncoder, source, destination, copySize); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderFinish { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderFinish"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUCommandBuffer wgpuCommandEncoderFinish(WGPUCommandEncoder commandEncoder, const WGPUCommandBufferDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderFinish$descriptor() { - return wgpuCommandEncoderFinish.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUCommandBuffer wgpuCommandEncoderFinish(WGPUCommandEncoder commandEncoder, const WGPUCommandBufferDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuCommandEncoderFinish$handle() { - return wgpuCommandEncoderFinish.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUCommandBuffer wgpuCommandEncoderFinish(WGPUCommandEncoder commandEncoder, const WGPUCommandBufferDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuCommandEncoderFinish$address() { - return wgpuCommandEncoderFinish.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUCommandBuffer wgpuCommandEncoderFinish(WGPUCommandEncoder commandEncoder, const WGPUCommandBufferDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuCommandEncoderFinish(MemorySegment commandEncoder, MemorySegment descriptor) { - var mh$ = wgpuCommandEncoderFinish.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderFinish", commandEncoder, descriptor); - } - return (MemorySegment)mh$.invokeExact(commandEncoder, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderInsertDebugMarker { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderInsertDebugMarker"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderInsertDebugMarker(WGPUCommandEncoder commandEncoder, const char *markerLabel) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderInsertDebugMarker$descriptor() { - return wgpuCommandEncoderInsertDebugMarker.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderInsertDebugMarker(WGPUCommandEncoder commandEncoder, const char *markerLabel) - * } - */ - public static MethodHandle wgpuCommandEncoderInsertDebugMarker$handle() { - return wgpuCommandEncoderInsertDebugMarker.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderInsertDebugMarker(WGPUCommandEncoder commandEncoder, const char *markerLabel) - * } - */ - public static MemorySegment wgpuCommandEncoderInsertDebugMarker$address() { - return wgpuCommandEncoderInsertDebugMarker.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderInsertDebugMarker(WGPUCommandEncoder commandEncoder, const char *markerLabel) - * } - */ - public static void wgpuCommandEncoderInsertDebugMarker(MemorySegment commandEncoder, MemorySegment markerLabel) { - var mh$ = wgpuCommandEncoderInsertDebugMarker.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderInsertDebugMarker", commandEncoder, markerLabel); - } - mh$.invokeExact(commandEncoder, markerLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderPopDebugGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderPopDebugGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderPopDebugGroup(WGPUCommandEncoder commandEncoder) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderPopDebugGroup$descriptor() { - return wgpuCommandEncoderPopDebugGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderPopDebugGroup(WGPUCommandEncoder commandEncoder) - * } - */ - public static MethodHandle wgpuCommandEncoderPopDebugGroup$handle() { - return wgpuCommandEncoderPopDebugGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderPopDebugGroup(WGPUCommandEncoder commandEncoder) - * } - */ - public static MemorySegment wgpuCommandEncoderPopDebugGroup$address() { - return wgpuCommandEncoderPopDebugGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderPopDebugGroup(WGPUCommandEncoder commandEncoder) - * } - */ - public static void wgpuCommandEncoderPopDebugGroup(MemorySegment commandEncoder) { - var mh$ = wgpuCommandEncoderPopDebugGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderPopDebugGroup", commandEncoder); - } - mh$.invokeExact(commandEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderPushDebugGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderPushDebugGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderPushDebugGroup(WGPUCommandEncoder commandEncoder, const char *groupLabel) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderPushDebugGroup$descriptor() { - return wgpuCommandEncoderPushDebugGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderPushDebugGroup(WGPUCommandEncoder commandEncoder, const char *groupLabel) - * } - */ - public static MethodHandle wgpuCommandEncoderPushDebugGroup$handle() { - return wgpuCommandEncoderPushDebugGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderPushDebugGroup(WGPUCommandEncoder commandEncoder, const char *groupLabel) - * } - */ - public static MemorySegment wgpuCommandEncoderPushDebugGroup$address() { - return wgpuCommandEncoderPushDebugGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderPushDebugGroup(WGPUCommandEncoder commandEncoder, const char *groupLabel) - * } - */ - public static void wgpuCommandEncoderPushDebugGroup(MemorySegment commandEncoder, MemorySegment groupLabel) { - var mh$ = wgpuCommandEncoderPushDebugGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderPushDebugGroup", commandEncoder, groupLabel); - } - mh$.invokeExact(commandEncoder, groupLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderResolveQuerySet { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderResolveQuerySet"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderResolveQuerySet(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t firstQuery, uint32_t queryCount, WGPUBuffer destination, uint64_t destinationOffset) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderResolveQuerySet$descriptor() { - return wgpuCommandEncoderResolveQuerySet.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderResolveQuerySet(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t firstQuery, uint32_t queryCount, WGPUBuffer destination, uint64_t destinationOffset) - * } - */ - public static MethodHandle wgpuCommandEncoderResolveQuerySet$handle() { - return wgpuCommandEncoderResolveQuerySet.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderResolveQuerySet(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t firstQuery, uint32_t queryCount, WGPUBuffer destination, uint64_t destinationOffset) - * } - */ - public static MemorySegment wgpuCommandEncoderResolveQuerySet$address() { - return wgpuCommandEncoderResolveQuerySet.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderResolveQuerySet(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t firstQuery, uint32_t queryCount, WGPUBuffer destination, uint64_t destinationOffset) - * } - */ - public static void wgpuCommandEncoderResolveQuerySet(MemorySegment commandEncoder, MemorySegment querySet, int firstQuery, int queryCount, MemorySegment destination, long destinationOffset) { - var mh$ = wgpuCommandEncoderResolveQuerySet.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderResolveQuerySet", commandEncoder, querySet, firstQuery, queryCount, destination, destinationOffset); - } - mh$.invokeExact(commandEncoder, querySet, firstQuery, queryCount, destination, destinationOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderSetLabel(WGPUCommandEncoder commandEncoder, const char *label) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderSetLabel$descriptor() { - return wgpuCommandEncoderSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderSetLabel(WGPUCommandEncoder commandEncoder, const char *label) - * } - */ - public static MethodHandle wgpuCommandEncoderSetLabel$handle() { - return wgpuCommandEncoderSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderSetLabel(WGPUCommandEncoder commandEncoder, const char *label) - * } - */ - public static MemorySegment wgpuCommandEncoderSetLabel$address() { - return wgpuCommandEncoderSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderSetLabel(WGPUCommandEncoder commandEncoder, const char *label) - * } - */ - public static void wgpuCommandEncoderSetLabel(MemorySegment commandEncoder, MemorySegment label) { - var mh$ = wgpuCommandEncoderSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderSetLabel", commandEncoder, label); - } - mh$.invokeExact(commandEncoder, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderWriteTimestamp { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderWriteTimestamp"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderWriteTimestamp(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderWriteTimestamp$descriptor() { - return wgpuCommandEncoderWriteTimestamp.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderWriteTimestamp(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static MethodHandle wgpuCommandEncoderWriteTimestamp$handle() { - return wgpuCommandEncoderWriteTimestamp.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderWriteTimestamp(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static MemorySegment wgpuCommandEncoderWriteTimestamp$address() { - return wgpuCommandEncoderWriteTimestamp.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderWriteTimestamp(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static void wgpuCommandEncoderWriteTimestamp(MemorySegment commandEncoder, MemorySegment querySet, int queryIndex) { - var mh$ = wgpuCommandEncoderWriteTimestamp.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderWriteTimestamp", commandEncoder, querySet, queryIndex); - } - mh$.invokeExact(commandEncoder, querySet, queryIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderReference(WGPUCommandEncoder commandEncoder) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderReference$descriptor() { - return wgpuCommandEncoderReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderReference(WGPUCommandEncoder commandEncoder) - * } - */ - public static MethodHandle wgpuCommandEncoderReference$handle() { - return wgpuCommandEncoderReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderReference(WGPUCommandEncoder commandEncoder) - * } - */ - public static MemorySegment wgpuCommandEncoderReference$address() { - return wgpuCommandEncoderReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderReference(WGPUCommandEncoder commandEncoder) - * } - */ - public static void wgpuCommandEncoderReference(MemorySegment commandEncoder) { - var mh$ = wgpuCommandEncoderReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderReference", commandEncoder); - } - mh$.invokeExact(commandEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuCommandEncoderRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuCommandEncoderRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuCommandEncoderRelease(WGPUCommandEncoder commandEncoder) - * } - */ - public static FunctionDescriptor wgpuCommandEncoderRelease$descriptor() { - return wgpuCommandEncoderRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuCommandEncoderRelease(WGPUCommandEncoder commandEncoder) - * } - */ - public static MethodHandle wgpuCommandEncoderRelease$handle() { - return wgpuCommandEncoderRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuCommandEncoderRelease(WGPUCommandEncoder commandEncoder) - * } - */ - public static MemorySegment wgpuCommandEncoderRelease$address() { - return wgpuCommandEncoderRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuCommandEncoderRelease(WGPUCommandEncoder commandEncoder) - * } - */ - public static void wgpuCommandEncoderRelease(MemorySegment commandEncoder) { - var mh$ = wgpuCommandEncoderRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuCommandEncoderRelease", commandEncoder); - } - mh$.invokeExact(commandEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderDispatchWorkgroups { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderDispatchWorkgroups"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderDispatchWorkgroups(WGPUComputePassEncoder computePassEncoder, uint32_t workgroupCountX, uint32_t workgroupCountY, uint32_t workgroupCountZ) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderDispatchWorkgroups$descriptor() { - return wgpuComputePassEncoderDispatchWorkgroups.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderDispatchWorkgroups(WGPUComputePassEncoder computePassEncoder, uint32_t workgroupCountX, uint32_t workgroupCountY, uint32_t workgroupCountZ) - * } - */ - public static MethodHandle wgpuComputePassEncoderDispatchWorkgroups$handle() { - return wgpuComputePassEncoderDispatchWorkgroups.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderDispatchWorkgroups(WGPUComputePassEncoder computePassEncoder, uint32_t workgroupCountX, uint32_t workgroupCountY, uint32_t workgroupCountZ) - * } - */ - public static MemorySegment wgpuComputePassEncoderDispatchWorkgroups$address() { - return wgpuComputePassEncoderDispatchWorkgroups.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderDispatchWorkgroups(WGPUComputePassEncoder computePassEncoder, uint32_t workgroupCountX, uint32_t workgroupCountY, uint32_t workgroupCountZ) - * } - */ - public static void wgpuComputePassEncoderDispatchWorkgroups(MemorySegment computePassEncoder, int workgroupCountX, int workgroupCountY, int workgroupCountZ) { - var mh$ = wgpuComputePassEncoderDispatchWorkgroups.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderDispatchWorkgroups", computePassEncoder, workgroupCountX, workgroupCountY, workgroupCountZ); - } - mh$.invokeExact(computePassEncoder, workgroupCountX, workgroupCountY, workgroupCountZ); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderDispatchWorkgroupsIndirect { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderDispatchWorkgroupsIndirect"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderDispatchWorkgroupsIndirect(WGPUComputePassEncoder computePassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderDispatchWorkgroupsIndirect$descriptor() { - return wgpuComputePassEncoderDispatchWorkgroupsIndirect.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderDispatchWorkgroupsIndirect(WGPUComputePassEncoder computePassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static MethodHandle wgpuComputePassEncoderDispatchWorkgroupsIndirect$handle() { - return wgpuComputePassEncoderDispatchWorkgroupsIndirect.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderDispatchWorkgroupsIndirect(WGPUComputePassEncoder computePassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static MemorySegment wgpuComputePassEncoderDispatchWorkgroupsIndirect$address() { - return wgpuComputePassEncoderDispatchWorkgroupsIndirect.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderDispatchWorkgroupsIndirect(WGPUComputePassEncoder computePassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static void wgpuComputePassEncoderDispatchWorkgroupsIndirect(MemorySegment computePassEncoder, MemorySegment indirectBuffer, long indirectOffset) { - var mh$ = wgpuComputePassEncoderDispatchWorkgroupsIndirect.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderDispatchWorkgroupsIndirect", computePassEncoder, indirectBuffer, indirectOffset); - } - mh$.invokeExact(computePassEncoder, indirectBuffer, indirectOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderEnd { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderEnd"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderEnd(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderEnd$descriptor() { - return wgpuComputePassEncoderEnd.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderEnd(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static MethodHandle wgpuComputePassEncoderEnd$handle() { - return wgpuComputePassEncoderEnd.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderEnd(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static MemorySegment wgpuComputePassEncoderEnd$address() { - return wgpuComputePassEncoderEnd.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderEnd(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static void wgpuComputePassEncoderEnd(MemorySegment computePassEncoder) { - var mh$ = wgpuComputePassEncoderEnd.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderEnd", computePassEncoder); - } - mh$.invokeExact(computePassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderInsertDebugMarker { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderInsertDebugMarker"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderInsertDebugMarker(WGPUComputePassEncoder computePassEncoder, const char *markerLabel) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderInsertDebugMarker$descriptor() { - return wgpuComputePassEncoderInsertDebugMarker.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderInsertDebugMarker(WGPUComputePassEncoder computePassEncoder, const char *markerLabel) - * } - */ - public static MethodHandle wgpuComputePassEncoderInsertDebugMarker$handle() { - return wgpuComputePassEncoderInsertDebugMarker.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderInsertDebugMarker(WGPUComputePassEncoder computePassEncoder, const char *markerLabel) - * } - */ - public static MemorySegment wgpuComputePassEncoderInsertDebugMarker$address() { - return wgpuComputePassEncoderInsertDebugMarker.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderInsertDebugMarker(WGPUComputePassEncoder computePassEncoder, const char *markerLabel) - * } - */ - public static void wgpuComputePassEncoderInsertDebugMarker(MemorySegment computePassEncoder, MemorySegment markerLabel) { - var mh$ = wgpuComputePassEncoderInsertDebugMarker.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderInsertDebugMarker", computePassEncoder, markerLabel); - } - mh$.invokeExact(computePassEncoder, markerLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderPopDebugGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderPopDebugGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderPopDebugGroup(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderPopDebugGroup$descriptor() { - return wgpuComputePassEncoderPopDebugGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderPopDebugGroup(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static MethodHandle wgpuComputePassEncoderPopDebugGroup$handle() { - return wgpuComputePassEncoderPopDebugGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderPopDebugGroup(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static MemorySegment wgpuComputePassEncoderPopDebugGroup$address() { - return wgpuComputePassEncoderPopDebugGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderPopDebugGroup(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static void wgpuComputePassEncoderPopDebugGroup(MemorySegment computePassEncoder) { - var mh$ = wgpuComputePassEncoderPopDebugGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderPopDebugGroup", computePassEncoder); - } - mh$.invokeExact(computePassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderPushDebugGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderPushDebugGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderPushDebugGroup(WGPUComputePassEncoder computePassEncoder, const char *groupLabel) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderPushDebugGroup$descriptor() { - return wgpuComputePassEncoderPushDebugGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderPushDebugGroup(WGPUComputePassEncoder computePassEncoder, const char *groupLabel) - * } - */ - public static MethodHandle wgpuComputePassEncoderPushDebugGroup$handle() { - return wgpuComputePassEncoderPushDebugGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderPushDebugGroup(WGPUComputePassEncoder computePassEncoder, const char *groupLabel) - * } - */ - public static MemorySegment wgpuComputePassEncoderPushDebugGroup$address() { - return wgpuComputePassEncoderPushDebugGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderPushDebugGroup(WGPUComputePassEncoder computePassEncoder, const char *groupLabel) - * } - */ - public static void wgpuComputePassEncoderPushDebugGroup(MemorySegment computePassEncoder, MemorySegment groupLabel) { - var mh$ = wgpuComputePassEncoderPushDebugGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderPushDebugGroup", computePassEncoder, groupLabel); - } - mh$.invokeExact(computePassEncoder, groupLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderSetBindGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderSetBindGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderSetBindGroup(WGPUComputePassEncoder computePassEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderSetBindGroup$descriptor() { - return wgpuComputePassEncoderSetBindGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderSetBindGroup(WGPUComputePassEncoder computePassEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static MethodHandle wgpuComputePassEncoderSetBindGroup$handle() { - return wgpuComputePassEncoderSetBindGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderSetBindGroup(WGPUComputePassEncoder computePassEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static MemorySegment wgpuComputePassEncoderSetBindGroup$address() { - return wgpuComputePassEncoderSetBindGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderSetBindGroup(WGPUComputePassEncoder computePassEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static void wgpuComputePassEncoderSetBindGroup(MemorySegment computePassEncoder, int groupIndex, MemorySegment group, long dynamicOffsetCount, MemorySegment dynamicOffsets) { - var mh$ = wgpuComputePassEncoderSetBindGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderSetBindGroup", computePassEncoder, groupIndex, group, dynamicOffsetCount, dynamicOffsets); - } - mh$.invokeExact(computePassEncoder, groupIndex, group, dynamicOffsetCount, dynamicOffsets); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderSetLabel(WGPUComputePassEncoder computePassEncoder, const char *label) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderSetLabel$descriptor() { - return wgpuComputePassEncoderSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderSetLabel(WGPUComputePassEncoder computePassEncoder, const char *label) - * } - */ - public static MethodHandle wgpuComputePassEncoderSetLabel$handle() { - return wgpuComputePassEncoderSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderSetLabel(WGPUComputePassEncoder computePassEncoder, const char *label) - * } - */ - public static MemorySegment wgpuComputePassEncoderSetLabel$address() { - return wgpuComputePassEncoderSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderSetLabel(WGPUComputePassEncoder computePassEncoder, const char *label) - * } - */ - public static void wgpuComputePassEncoderSetLabel(MemorySegment computePassEncoder, MemorySegment label) { - var mh$ = wgpuComputePassEncoderSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderSetLabel", computePassEncoder, label); - } - mh$.invokeExact(computePassEncoder, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderSetPipeline { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderSetPipeline"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderSetPipeline(WGPUComputePassEncoder computePassEncoder, WGPUComputePipeline pipeline) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderSetPipeline$descriptor() { - return wgpuComputePassEncoderSetPipeline.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderSetPipeline(WGPUComputePassEncoder computePassEncoder, WGPUComputePipeline pipeline) - * } - */ - public static MethodHandle wgpuComputePassEncoderSetPipeline$handle() { - return wgpuComputePassEncoderSetPipeline.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderSetPipeline(WGPUComputePassEncoder computePassEncoder, WGPUComputePipeline pipeline) - * } - */ - public static MemorySegment wgpuComputePassEncoderSetPipeline$address() { - return wgpuComputePassEncoderSetPipeline.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderSetPipeline(WGPUComputePassEncoder computePassEncoder, WGPUComputePipeline pipeline) - * } - */ - public static void wgpuComputePassEncoderSetPipeline(MemorySegment computePassEncoder, MemorySegment pipeline) { - var mh$ = wgpuComputePassEncoderSetPipeline.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderSetPipeline", computePassEncoder, pipeline); - } - mh$.invokeExact(computePassEncoder, pipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderReference(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderReference$descriptor() { - return wgpuComputePassEncoderReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderReference(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static MethodHandle wgpuComputePassEncoderReference$handle() { - return wgpuComputePassEncoderReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderReference(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static MemorySegment wgpuComputePassEncoderReference$address() { - return wgpuComputePassEncoderReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderReference(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static void wgpuComputePassEncoderReference(MemorySegment computePassEncoder) { - var mh$ = wgpuComputePassEncoderReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderReference", computePassEncoder); - } - mh$.invokeExact(computePassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderRelease(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderRelease$descriptor() { - return wgpuComputePassEncoderRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderRelease(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static MethodHandle wgpuComputePassEncoderRelease$handle() { - return wgpuComputePassEncoderRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderRelease(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static MemorySegment wgpuComputePassEncoderRelease$address() { - return wgpuComputePassEncoderRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderRelease(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static void wgpuComputePassEncoderRelease(MemorySegment computePassEncoder) { - var mh$ = wgpuComputePassEncoderRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderRelease", computePassEncoder); - } - mh$.invokeExact(computePassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePipelineGetBindGroupLayout { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePipelineGetBindGroupLayout"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuComputePipelineGetBindGroupLayout(WGPUComputePipeline computePipeline, uint32_t groupIndex) - * } - */ - public static FunctionDescriptor wgpuComputePipelineGetBindGroupLayout$descriptor() { - return wgpuComputePipelineGetBindGroupLayout.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuComputePipelineGetBindGroupLayout(WGPUComputePipeline computePipeline, uint32_t groupIndex) - * } - */ - public static MethodHandle wgpuComputePipelineGetBindGroupLayout$handle() { - return wgpuComputePipelineGetBindGroupLayout.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuComputePipelineGetBindGroupLayout(WGPUComputePipeline computePipeline, uint32_t groupIndex) - * } - */ - public static MemorySegment wgpuComputePipelineGetBindGroupLayout$address() { - return wgpuComputePipelineGetBindGroupLayout.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuComputePipelineGetBindGroupLayout(WGPUComputePipeline computePipeline, uint32_t groupIndex) - * } - */ - public static MemorySegment wgpuComputePipelineGetBindGroupLayout(MemorySegment computePipeline, int groupIndex) { - var mh$ = wgpuComputePipelineGetBindGroupLayout.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePipelineGetBindGroupLayout", computePipeline, groupIndex); - } - return (MemorySegment)mh$.invokeExact(computePipeline, groupIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePipelineSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePipelineSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePipelineSetLabel(WGPUComputePipeline computePipeline, const char *label) - * } - */ - public static FunctionDescriptor wgpuComputePipelineSetLabel$descriptor() { - return wgpuComputePipelineSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePipelineSetLabel(WGPUComputePipeline computePipeline, const char *label) - * } - */ - public static MethodHandle wgpuComputePipelineSetLabel$handle() { - return wgpuComputePipelineSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePipelineSetLabel(WGPUComputePipeline computePipeline, const char *label) - * } - */ - public static MemorySegment wgpuComputePipelineSetLabel$address() { - return wgpuComputePipelineSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePipelineSetLabel(WGPUComputePipeline computePipeline, const char *label) - * } - */ - public static void wgpuComputePipelineSetLabel(MemorySegment computePipeline, MemorySegment label) { - var mh$ = wgpuComputePipelineSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePipelineSetLabel", computePipeline, label); - } - mh$.invokeExact(computePipeline, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePipelineReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePipelineReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePipelineReference(WGPUComputePipeline computePipeline) - * } - */ - public static FunctionDescriptor wgpuComputePipelineReference$descriptor() { - return wgpuComputePipelineReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePipelineReference(WGPUComputePipeline computePipeline) - * } - */ - public static MethodHandle wgpuComputePipelineReference$handle() { - return wgpuComputePipelineReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePipelineReference(WGPUComputePipeline computePipeline) - * } - */ - public static MemorySegment wgpuComputePipelineReference$address() { - return wgpuComputePipelineReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePipelineReference(WGPUComputePipeline computePipeline) - * } - */ - public static void wgpuComputePipelineReference(MemorySegment computePipeline) { - var mh$ = wgpuComputePipelineReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePipelineReference", computePipeline); - } - mh$.invokeExact(computePipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePipelineRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePipelineRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePipelineRelease(WGPUComputePipeline computePipeline) - * } - */ - public static FunctionDescriptor wgpuComputePipelineRelease$descriptor() { - return wgpuComputePipelineRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePipelineRelease(WGPUComputePipeline computePipeline) - * } - */ - public static MethodHandle wgpuComputePipelineRelease$handle() { - return wgpuComputePipelineRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePipelineRelease(WGPUComputePipeline computePipeline) - * } - */ - public static MemorySegment wgpuComputePipelineRelease$address() { - return wgpuComputePipelineRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePipelineRelease(WGPUComputePipeline computePipeline) - * } - */ - public static void wgpuComputePipelineRelease(MemorySegment computePipeline) { - var mh$ = wgpuComputePipelineRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePipelineRelease", computePipeline); - } - mh$.invokeExact(computePipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateBindGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateBindGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBindGroup wgpuDeviceCreateBindGroup(WGPUDevice device, const WGPUBindGroupDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateBindGroup$descriptor() { - return wgpuDeviceCreateBindGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBindGroup wgpuDeviceCreateBindGroup(WGPUDevice device, const WGPUBindGroupDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateBindGroup$handle() { - return wgpuDeviceCreateBindGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBindGroup wgpuDeviceCreateBindGroup(WGPUDevice device, const WGPUBindGroupDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateBindGroup$address() { - return wgpuDeviceCreateBindGroup.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBindGroup wgpuDeviceCreateBindGroup(WGPUDevice device, const WGPUBindGroupDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateBindGroup(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateBindGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateBindGroup", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateBindGroupLayout { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateBindGroupLayout"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuDeviceCreateBindGroupLayout(WGPUDevice device, const WGPUBindGroupLayoutDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateBindGroupLayout$descriptor() { - return wgpuDeviceCreateBindGroupLayout.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuDeviceCreateBindGroupLayout(WGPUDevice device, const WGPUBindGroupLayoutDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateBindGroupLayout$handle() { - return wgpuDeviceCreateBindGroupLayout.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuDeviceCreateBindGroupLayout(WGPUDevice device, const WGPUBindGroupLayoutDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateBindGroupLayout$address() { - return wgpuDeviceCreateBindGroupLayout.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuDeviceCreateBindGroupLayout(WGPUDevice device, const WGPUBindGroupLayoutDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateBindGroupLayout(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateBindGroupLayout.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateBindGroupLayout", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateBuffer { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateBuffer"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBuffer wgpuDeviceCreateBuffer(WGPUDevice device, const WGPUBufferDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateBuffer$descriptor() { - return wgpuDeviceCreateBuffer.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBuffer wgpuDeviceCreateBuffer(WGPUDevice device, const WGPUBufferDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateBuffer$handle() { - return wgpuDeviceCreateBuffer.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBuffer wgpuDeviceCreateBuffer(WGPUDevice device, const WGPUBufferDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateBuffer$address() { - return wgpuDeviceCreateBuffer.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBuffer wgpuDeviceCreateBuffer(WGPUDevice device, const WGPUBufferDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateBuffer(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateBuffer.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateBuffer", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateCommandEncoder { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateCommandEncoder"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUCommandEncoder wgpuDeviceCreateCommandEncoder(WGPUDevice device, const WGPUCommandEncoderDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateCommandEncoder$descriptor() { - return wgpuDeviceCreateCommandEncoder.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUCommandEncoder wgpuDeviceCreateCommandEncoder(WGPUDevice device, const WGPUCommandEncoderDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateCommandEncoder$handle() { - return wgpuDeviceCreateCommandEncoder.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUCommandEncoder wgpuDeviceCreateCommandEncoder(WGPUDevice device, const WGPUCommandEncoderDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateCommandEncoder$address() { - return wgpuDeviceCreateCommandEncoder.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUCommandEncoder wgpuDeviceCreateCommandEncoder(WGPUDevice device, const WGPUCommandEncoderDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateCommandEncoder(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateCommandEncoder.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateCommandEncoder", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateComputePipeline { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateComputePipeline"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUComputePipeline wgpuDeviceCreateComputePipeline(WGPUDevice device, const WGPUComputePipelineDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateComputePipeline$descriptor() { - return wgpuDeviceCreateComputePipeline.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUComputePipeline wgpuDeviceCreateComputePipeline(WGPUDevice device, const WGPUComputePipelineDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateComputePipeline$handle() { - return wgpuDeviceCreateComputePipeline.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUComputePipeline wgpuDeviceCreateComputePipeline(WGPUDevice device, const WGPUComputePipelineDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateComputePipeline$address() { - return wgpuDeviceCreateComputePipeline.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUComputePipeline wgpuDeviceCreateComputePipeline(WGPUDevice device, const WGPUComputePipelineDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateComputePipeline(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateComputePipeline.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateComputePipeline", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateComputePipelineAsync { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateComputePipelineAsync"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuDeviceCreateComputePipelineAsync(WGPUDevice device, const WGPUComputePipelineDescriptor *descriptor, WGPUCreateComputePipelineAsyncCallback callback, void *userdata) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateComputePipelineAsync$descriptor() { - return wgpuDeviceCreateComputePipelineAsync.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuDeviceCreateComputePipelineAsync(WGPUDevice device, const WGPUComputePipelineDescriptor *descriptor, WGPUCreateComputePipelineAsyncCallback callback, void *userdata) - * } - */ - public static MethodHandle wgpuDeviceCreateComputePipelineAsync$handle() { - return wgpuDeviceCreateComputePipelineAsync.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuDeviceCreateComputePipelineAsync(WGPUDevice device, const WGPUComputePipelineDescriptor *descriptor, WGPUCreateComputePipelineAsyncCallback callback, void *userdata) - * } - */ - public static MemorySegment wgpuDeviceCreateComputePipelineAsync$address() { - return wgpuDeviceCreateComputePipelineAsync.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuDeviceCreateComputePipelineAsync(WGPUDevice device, const WGPUComputePipelineDescriptor *descriptor, WGPUCreateComputePipelineAsyncCallback callback, void *userdata) - * } - */ - public static void wgpuDeviceCreateComputePipelineAsync(MemorySegment device, MemorySegment descriptor, MemorySegment callback, MemorySegment userdata) { - var mh$ = wgpuDeviceCreateComputePipelineAsync.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateComputePipelineAsync", device, descriptor, callback, userdata); - } - mh$.invokeExact(device, descriptor, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreatePipelineLayout { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreatePipelineLayout"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUPipelineLayout wgpuDeviceCreatePipelineLayout(WGPUDevice device, const WGPUPipelineLayoutDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreatePipelineLayout$descriptor() { - return wgpuDeviceCreatePipelineLayout.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUPipelineLayout wgpuDeviceCreatePipelineLayout(WGPUDevice device, const WGPUPipelineLayoutDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreatePipelineLayout$handle() { - return wgpuDeviceCreatePipelineLayout.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUPipelineLayout wgpuDeviceCreatePipelineLayout(WGPUDevice device, const WGPUPipelineLayoutDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreatePipelineLayout$address() { - return wgpuDeviceCreatePipelineLayout.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUPipelineLayout wgpuDeviceCreatePipelineLayout(WGPUDevice device, const WGPUPipelineLayoutDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreatePipelineLayout(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreatePipelineLayout.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreatePipelineLayout", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateQuerySet { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateQuerySet"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUQuerySet wgpuDeviceCreateQuerySet(WGPUDevice device, const WGPUQuerySetDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateQuerySet$descriptor() { - return wgpuDeviceCreateQuerySet.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUQuerySet wgpuDeviceCreateQuerySet(WGPUDevice device, const WGPUQuerySetDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateQuerySet$handle() { - return wgpuDeviceCreateQuerySet.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUQuerySet wgpuDeviceCreateQuerySet(WGPUDevice device, const WGPUQuerySetDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateQuerySet$address() { - return wgpuDeviceCreateQuerySet.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUQuerySet wgpuDeviceCreateQuerySet(WGPUDevice device, const WGPUQuerySetDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateQuerySet(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateQuerySet.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateQuerySet", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateRenderBundleEncoder { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateRenderBundleEncoder"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPURenderBundleEncoder wgpuDeviceCreateRenderBundleEncoder(WGPUDevice device, const WGPURenderBundleEncoderDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateRenderBundleEncoder$descriptor() { - return wgpuDeviceCreateRenderBundleEncoder.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPURenderBundleEncoder wgpuDeviceCreateRenderBundleEncoder(WGPUDevice device, const WGPURenderBundleEncoderDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateRenderBundleEncoder$handle() { - return wgpuDeviceCreateRenderBundleEncoder.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPURenderBundleEncoder wgpuDeviceCreateRenderBundleEncoder(WGPUDevice device, const WGPURenderBundleEncoderDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateRenderBundleEncoder$address() { - return wgpuDeviceCreateRenderBundleEncoder.ADDR; - } - - /** - * {@snippet lang=c : - * WGPURenderBundleEncoder wgpuDeviceCreateRenderBundleEncoder(WGPUDevice device, const WGPURenderBundleEncoderDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateRenderBundleEncoder(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateRenderBundleEncoder.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateRenderBundleEncoder", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateRenderPipeline { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateRenderPipeline"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPURenderPipeline wgpuDeviceCreateRenderPipeline(WGPUDevice device, const WGPURenderPipelineDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateRenderPipeline$descriptor() { - return wgpuDeviceCreateRenderPipeline.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPURenderPipeline wgpuDeviceCreateRenderPipeline(WGPUDevice device, const WGPURenderPipelineDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateRenderPipeline$handle() { - return wgpuDeviceCreateRenderPipeline.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPURenderPipeline wgpuDeviceCreateRenderPipeline(WGPUDevice device, const WGPURenderPipelineDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateRenderPipeline$address() { - return wgpuDeviceCreateRenderPipeline.ADDR; - } - - /** - * {@snippet lang=c : - * WGPURenderPipeline wgpuDeviceCreateRenderPipeline(WGPUDevice device, const WGPURenderPipelineDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateRenderPipeline(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateRenderPipeline.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateRenderPipeline", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateRenderPipelineAsync { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateRenderPipelineAsync"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuDeviceCreateRenderPipelineAsync(WGPUDevice device, const WGPURenderPipelineDescriptor *descriptor, WGPUCreateRenderPipelineAsyncCallback callback, void *userdata) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateRenderPipelineAsync$descriptor() { - return wgpuDeviceCreateRenderPipelineAsync.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuDeviceCreateRenderPipelineAsync(WGPUDevice device, const WGPURenderPipelineDescriptor *descriptor, WGPUCreateRenderPipelineAsyncCallback callback, void *userdata) - * } - */ - public static MethodHandle wgpuDeviceCreateRenderPipelineAsync$handle() { - return wgpuDeviceCreateRenderPipelineAsync.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuDeviceCreateRenderPipelineAsync(WGPUDevice device, const WGPURenderPipelineDescriptor *descriptor, WGPUCreateRenderPipelineAsyncCallback callback, void *userdata) - * } - */ - public static MemorySegment wgpuDeviceCreateRenderPipelineAsync$address() { - return wgpuDeviceCreateRenderPipelineAsync.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuDeviceCreateRenderPipelineAsync(WGPUDevice device, const WGPURenderPipelineDescriptor *descriptor, WGPUCreateRenderPipelineAsyncCallback callback, void *userdata) - * } - */ - public static void wgpuDeviceCreateRenderPipelineAsync(MemorySegment device, MemorySegment descriptor, MemorySegment callback, MemorySegment userdata) { - var mh$ = wgpuDeviceCreateRenderPipelineAsync.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateRenderPipelineAsync", device, descriptor, callback, userdata); - } - mh$.invokeExact(device, descriptor, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateSampler { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateSampler"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUSampler wgpuDeviceCreateSampler(WGPUDevice device, const WGPUSamplerDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateSampler$descriptor() { - return wgpuDeviceCreateSampler.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUSampler wgpuDeviceCreateSampler(WGPUDevice device, const WGPUSamplerDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateSampler$handle() { - return wgpuDeviceCreateSampler.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUSampler wgpuDeviceCreateSampler(WGPUDevice device, const WGPUSamplerDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateSampler$address() { - return wgpuDeviceCreateSampler.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUSampler wgpuDeviceCreateSampler(WGPUDevice device, const WGPUSamplerDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateSampler(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateSampler.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateSampler", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateShaderModule { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateShaderModule"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUShaderModule wgpuDeviceCreateShaderModule(WGPUDevice device, const WGPUShaderModuleDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateShaderModule$descriptor() { - return wgpuDeviceCreateShaderModule.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUShaderModule wgpuDeviceCreateShaderModule(WGPUDevice device, const WGPUShaderModuleDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateShaderModule$handle() { - return wgpuDeviceCreateShaderModule.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUShaderModule wgpuDeviceCreateShaderModule(WGPUDevice device, const WGPUShaderModuleDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateShaderModule$address() { - return wgpuDeviceCreateShaderModule.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUShaderModule wgpuDeviceCreateShaderModule(WGPUDevice device, const WGPUShaderModuleDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateShaderModule(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateShaderModule.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateShaderModule", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceCreateTexture { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceCreateTexture"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUTexture wgpuDeviceCreateTexture(WGPUDevice device, const WGPUTextureDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuDeviceCreateTexture$descriptor() { - return wgpuDeviceCreateTexture.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUTexture wgpuDeviceCreateTexture(WGPUDevice device, const WGPUTextureDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuDeviceCreateTexture$handle() { - return wgpuDeviceCreateTexture.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUTexture wgpuDeviceCreateTexture(WGPUDevice device, const WGPUTextureDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateTexture$address() { - return wgpuDeviceCreateTexture.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUTexture wgpuDeviceCreateTexture(WGPUDevice device, const WGPUTextureDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuDeviceCreateTexture(MemorySegment device, MemorySegment descriptor) { - var mh$ = wgpuDeviceCreateTexture.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceCreateTexture", device, descriptor); - } - return (MemorySegment)mh$.invokeExact(device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceDestroy { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceDestroy"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuDeviceDestroy(WGPUDevice device) - * } - */ - public static FunctionDescriptor wgpuDeviceDestroy$descriptor() { - return wgpuDeviceDestroy.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuDeviceDestroy(WGPUDevice device) - * } - */ - public static MethodHandle wgpuDeviceDestroy$handle() { - return wgpuDeviceDestroy.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuDeviceDestroy(WGPUDevice device) - * } - */ - public static MemorySegment wgpuDeviceDestroy$address() { - return wgpuDeviceDestroy.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuDeviceDestroy(WGPUDevice device) - * } - */ - public static void wgpuDeviceDestroy(MemorySegment device) { - var mh$ = wgpuDeviceDestroy.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceDestroy", device); - } - mh$.invokeExact(device); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceEnumerateFeatures { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceEnumerateFeatures"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * size_t wgpuDeviceEnumerateFeatures(WGPUDevice device, WGPUFeatureName *features) - * } - */ - public static FunctionDescriptor wgpuDeviceEnumerateFeatures$descriptor() { - return wgpuDeviceEnumerateFeatures.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * size_t wgpuDeviceEnumerateFeatures(WGPUDevice device, WGPUFeatureName *features) - * } - */ - public static MethodHandle wgpuDeviceEnumerateFeatures$handle() { - return wgpuDeviceEnumerateFeatures.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * size_t wgpuDeviceEnumerateFeatures(WGPUDevice device, WGPUFeatureName *features) - * } - */ - public static MemorySegment wgpuDeviceEnumerateFeatures$address() { - return wgpuDeviceEnumerateFeatures.ADDR; - } - - /** - * {@snippet lang=c : - * size_t wgpuDeviceEnumerateFeatures(WGPUDevice device, WGPUFeatureName *features) - * } - */ - public static long wgpuDeviceEnumerateFeatures(MemorySegment device, MemorySegment features) { - var mh$ = wgpuDeviceEnumerateFeatures.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceEnumerateFeatures", device, features); - } - return (long)mh$.invokeExact(device, features); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceGetLimits { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceGetLimits"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBool wgpuDeviceGetLimits(WGPUDevice device, WGPUSupportedLimits *limits) - * } - */ - public static FunctionDescriptor wgpuDeviceGetLimits$descriptor() { - return wgpuDeviceGetLimits.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBool wgpuDeviceGetLimits(WGPUDevice device, WGPUSupportedLimits *limits) - * } - */ - public static MethodHandle wgpuDeviceGetLimits$handle() { - return wgpuDeviceGetLimits.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBool wgpuDeviceGetLimits(WGPUDevice device, WGPUSupportedLimits *limits) - * } - */ - public static MemorySegment wgpuDeviceGetLimits$address() { - return wgpuDeviceGetLimits.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBool wgpuDeviceGetLimits(WGPUDevice device, WGPUSupportedLimits *limits) - * } - */ - public static int wgpuDeviceGetLimits(MemorySegment device, MemorySegment limits) { - var mh$ = wgpuDeviceGetLimits.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceGetLimits", device, limits); - } - return (int)mh$.invokeExact(device, limits); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceGetQueue { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceGetQueue"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUQueue wgpuDeviceGetQueue(WGPUDevice device) - * } - */ - public static FunctionDescriptor wgpuDeviceGetQueue$descriptor() { - return wgpuDeviceGetQueue.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUQueue wgpuDeviceGetQueue(WGPUDevice device) - * } - */ - public static MethodHandle wgpuDeviceGetQueue$handle() { - return wgpuDeviceGetQueue.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUQueue wgpuDeviceGetQueue(WGPUDevice device) - * } - */ - public static MemorySegment wgpuDeviceGetQueue$address() { - return wgpuDeviceGetQueue.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUQueue wgpuDeviceGetQueue(WGPUDevice device) - * } - */ - public static MemorySegment wgpuDeviceGetQueue(MemorySegment device) { - var mh$ = wgpuDeviceGetQueue.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceGetQueue", device); - } - return (MemorySegment)mh$.invokeExact(device); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceHasFeature { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceHasFeature"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBool wgpuDeviceHasFeature(WGPUDevice device, WGPUFeatureName feature) - * } - */ - public static FunctionDescriptor wgpuDeviceHasFeature$descriptor() { - return wgpuDeviceHasFeature.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBool wgpuDeviceHasFeature(WGPUDevice device, WGPUFeatureName feature) - * } - */ - public static MethodHandle wgpuDeviceHasFeature$handle() { - return wgpuDeviceHasFeature.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBool wgpuDeviceHasFeature(WGPUDevice device, WGPUFeatureName feature) - * } - */ - public static MemorySegment wgpuDeviceHasFeature$address() { - return wgpuDeviceHasFeature.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBool wgpuDeviceHasFeature(WGPUDevice device, WGPUFeatureName feature) - * } - */ - public static int wgpuDeviceHasFeature(MemorySegment device, int feature) { - var mh$ = wgpuDeviceHasFeature.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceHasFeature", device, feature); - } - return (int)mh$.invokeExact(device, feature); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDevicePopErrorScope { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDevicePopErrorScope"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuDevicePopErrorScope(WGPUDevice device, WGPUErrorCallback callback, void *userdata) - * } - */ - public static FunctionDescriptor wgpuDevicePopErrorScope$descriptor() { - return wgpuDevicePopErrorScope.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuDevicePopErrorScope(WGPUDevice device, WGPUErrorCallback callback, void *userdata) - * } - */ - public static MethodHandle wgpuDevicePopErrorScope$handle() { - return wgpuDevicePopErrorScope.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuDevicePopErrorScope(WGPUDevice device, WGPUErrorCallback callback, void *userdata) - * } - */ - public static MemorySegment wgpuDevicePopErrorScope$address() { - return wgpuDevicePopErrorScope.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuDevicePopErrorScope(WGPUDevice device, WGPUErrorCallback callback, void *userdata) - * } - */ - public static void wgpuDevicePopErrorScope(MemorySegment device, MemorySegment callback, MemorySegment userdata) { - var mh$ = wgpuDevicePopErrorScope.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDevicePopErrorScope", device, callback, userdata); - } - mh$.invokeExact(device, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDevicePushErrorScope { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDevicePushErrorScope"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuDevicePushErrorScope(WGPUDevice device, WGPUErrorFilter filter) - * } - */ - public static FunctionDescriptor wgpuDevicePushErrorScope$descriptor() { - return wgpuDevicePushErrorScope.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuDevicePushErrorScope(WGPUDevice device, WGPUErrorFilter filter) - * } - */ - public static MethodHandle wgpuDevicePushErrorScope$handle() { - return wgpuDevicePushErrorScope.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuDevicePushErrorScope(WGPUDevice device, WGPUErrorFilter filter) - * } - */ - public static MemorySegment wgpuDevicePushErrorScope$address() { - return wgpuDevicePushErrorScope.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuDevicePushErrorScope(WGPUDevice device, WGPUErrorFilter filter) - * } - */ - public static void wgpuDevicePushErrorScope(MemorySegment device, int filter) { - var mh$ = wgpuDevicePushErrorScope.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDevicePushErrorScope", device, filter); - } - mh$.invokeExact(device, filter); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuDeviceSetLabel(WGPUDevice device, const char *label) - * } - */ - public static FunctionDescriptor wgpuDeviceSetLabel$descriptor() { - return wgpuDeviceSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuDeviceSetLabel(WGPUDevice device, const char *label) - * } - */ - public static MethodHandle wgpuDeviceSetLabel$handle() { - return wgpuDeviceSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuDeviceSetLabel(WGPUDevice device, const char *label) - * } - */ - public static MemorySegment wgpuDeviceSetLabel$address() { - return wgpuDeviceSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuDeviceSetLabel(WGPUDevice device, const char *label) - * } - */ - public static void wgpuDeviceSetLabel(MemorySegment device, MemorySegment label) { - var mh$ = wgpuDeviceSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceSetLabel", device, label); - } - mh$.invokeExact(device, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceSetUncapturedErrorCallback { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceSetUncapturedErrorCallback"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuDeviceSetUncapturedErrorCallback(WGPUDevice device, WGPUErrorCallback callback, void *userdata) - * } - */ - public static FunctionDescriptor wgpuDeviceSetUncapturedErrorCallback$descriptor() { - return wgpuDeviceSetUncapturedErrorCallback.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuDeviceSetUncapturedErrorCallback(WGPUDevice device, WGPUErrorCallback callback, void *userdata) - * } - */ - public static MethodHandle wgpuDeviceSetUncapturedErrorCallback$handle() { - return wgpuDeviceSetUncapturedErrorCallback.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuDeviceSetUncapturedErrorCallback(WGPUDevice device, WGPUErrorCallback callback, void *userdata) - * } - */ - public static MemorySegment wgpuDeviceSetUncapturedErrorCallback$address() { - return wgpuDeviceSetUncapturedErrorCallback.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuDeviceSetUncapturedErrorCallback(WGPUDevice device, WGPUErrorCallback callback, void *userdata) - * } - */ - public static void wgpuDeviceSetUncapturedErrorCallback(MemorySegment device, MemorySegment callback, MemorySegment userdata) { - var mh$ = wgpuDeviceSetUncapturedErrorCallback.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceSetUncapturedErrorCallback", device, callback, userdata); - } - mh$.invokeExact(device, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuDeviceReference(WGPUDevice device) - * } - */ - public static FunctionDescriptor wgpuDeviceReference$descriptor() { - return wgpuDeviceReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuDeviceReference(WGPUDevice device) - * } - */ - public static MethodHandle wgpuDeviceReference$handle() { - return wgpuDeviceReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuDeviceReference(WGPUDevice device) - * } - */ - public static MemorySegment wgpuDeviceReference$address() { - return wgpuDeviceReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuDeviceReference(WGPUDevice device) - * } - */ - public static void wgpuDeviceReference(MemorySegment device) { - var mh$ = wgpuDeviceReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceReference", device); - } - mh$.invokeExact(device); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDeviceRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDeviceRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuDeviceRelease(WGPUDevice device) - * } - */ - public static FunctionDescriptor wgpuDeviceRelease$descriptor() { - return wgpuDeviceRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuDeviceRelease(WGPUDevice device) - * } - */ - public static MethodHandle wgpuDeviceRelease$handle() { - return wgpuDeviceRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuDeviceRelease(WGPUDevice device) - * } - */ - public static MemorySegment wgpuDeviceRelease$address() { - return wgpuDeviceRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuDeviceRelease(WGPUDevice device) - * } - */ - public static void wgpuDeviceRelease(MemorySegment device) { - var mh$ = wgpuDeviceRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDeviceRelease", device); - } - mh$.invokeExact(device); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuInstanceCreateSurface { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuInstanceCreateSurface"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUSurface wgpuInstanceCreateSurface(WGPUInstance instance, const WGPUSurfaceDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuInstanceCreateSurface$descriptor() { - return wgpuInstanceCreateSurface.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUSurface wgpuInstanceCreateSurface(WGPUInstance instance, const WGPUSurfaceDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuInstanceCreateSurface$handle() { - return wgpuInstanceCreateSurface.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUSurface wgpuInstanceCreateSurface(WGPUInstance instance, const WGPUSurfaceDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuInstanceCreateSurface$address() { - return wgpuInstanceCreateSurface.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUSurface wgpuInstanceCreateSurface(WGPUInstance instance, const WGPUSurfaceDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuInstanceCreateSurface(MemorySegment instance, MemorySegment descriptor) { - var mh$ = wgpuInstanceCreateSurface.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuInstanceCreateSurface", instance, descriptor); - } - return (MemorySegment)mh$.invokeExact(instance, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuInstanceProcessEvents { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuInstanceProcessEvents"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuInstanceProcessEvents(WGPUInstance instance) - * } - */ - public static FunctionDescriptor wgpuInstanceProcessEvents$descriptor() { - return wgpuInstanceProcessEvents.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuInstanceProcessEvents(WGPUInstance instance) - * } - */ - public static MethodHandle wgpuInstanceProcessEvents$handle() { - return wgpuInstanceProcessEvents.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuInstanceProcessEvents(WGPUInstance instance) - * } - */ - public static MemorySegment wgpuInstanceProcessEvents$address() { - return wgpuInstanceProcessEvents.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuInstanceProcessEvents(WGPUInstance instance) - * } - */ - public static void wgpuInstanceProcessEvents(MemorySegment instance) { - var mh$ = wgpuInstanceProcessEvents.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuInstanceProcessEvents", instance); - } - mh$.invokeExact(instance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuInstanceRequestAdapter { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuInstanceRequestAdapter"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuInstanceRequestAdapter(WGPUInstance instance, const WGPURequestAdapterOptions *options, WGPURequestAdapterCallback callback, void *userdata) - * } - */ - public static FunctionDescriptor wgpuInstanceRequestAdapter$descriptor() { - return wgpuInstanceRequestAdapter.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuInstanceRequestAdapter(WGPUInstance instance, const WGPURequestAdapterOptions *options, WGPURequestAdapterCallback callback, void *userdata) - * } - */ - public static MethodHandle wgpuInstanceRequestAdapter$handle() { - return wgpuInstanceRequestAdapter.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuInstanceRequestAdapter(WGPUInstance instance, const WGPURequestAdapterOptions *options, WGPURequestAdapterCallback callback, void *userdata) - * } - */ - public static MemorySegment wgpuInstanceRequestAdapter$address() { - return wgpuInstanceRequestAdapter.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuInstanceRequestAdapter(WGPUInstance instance, const WGPURequestAdapterOptions *options, WGPURequestAdapterCallback callback, void *userdata) - * } - */ - public static void wgpuInstanceRequestAdapter(MemorySegment instance, MemorySegment options, MemorySegment callback, MemorySegment userdata) { - var mh$ = wgpuInstanceRequestAdapter.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuInstanceRequestAdapter", instance, options, callback, userdata); - } - mh$.invokeExact(instance, options, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuInstanceReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuInstanceReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuInstanceReference(WGPUInstance instance) - * } - */ - public static FunctionDescriptor wgpuInstanceReference$descriptor() { - return wgpuInstanceReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuInstanceReference(WGPUInstance instance) - * } - */ - public static MethodHandle wgpuInstanceReference$handle() { - return wgpuInstanceReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuInstanceReference(WGPUInstance instance) - * } - */ - public static MemorySegment wgpuInstanceReference$address() { - return wgpuInstanceReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuInstanceReference(WGPUInstance instance) - * } - */ - public static void wgpuInstanceReference(MemorySegment instance) { - var mh$ = wgpuInstanceReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuInstanceReference", instance); - } - mh$.invokeExact(instance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuInstanceRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuInstanceRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuInstanceRelease(WGPUInstance instance) - * } - */ - public static FunctionDescriptor wgpuInstanceRelease$descriptor() { - return wgpuInstanceRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuInstanceRelease(WGPUInstance instance) - * } - */ - public static MethodHandle wgpuInstanceRelease$handle() { - return wgpuInstanceRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuInstanceRelease(WGPUInstance instance) - * } - */ - public static MemorySegment wgpuInstanceRelease$address() { - return wgpuInstanceRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuInstanceRelease(WGPUInstance instance) - * } - */ - public static void wgpuInstanceRelease(MemorySegment instance) { - var mh$ = wgpuInstanceRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuInstanceRelease", instance); - } - mh$.invokeExact(instance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuPipelineLayoutSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuPipelineLayoutSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuPipelineLayoutSetLabel(WGPUPipelineLayout pipelineLayout, const char *label) - * } - */ - public static FunctionDescriptor wgpuPipelineLayoutSetLabel$descriptor() { - return wgpuPipelineLayoutSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuPipelineLayoutSetLabel(WGPUPipelineLayout pipelineLayout, const char *label) - * } - */ - public static MethodHandle wgpuPipelineLayoutSetLabel$handle() { - return wgpuPipelineLayoutSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuPipelineLayoutSetLabel(WGPUPipelineLayout pipelineLayout, const char *label) - * } - */ - public static MemorySegment wgpuPipelineLayoutSetLabel$address() { - return wgpuPipelineLayoutSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuPipelineLayoutSetLabel(WGPUPipelineLayout pipelineLayout, const char *label) - * } - */ - public static void wgpuPipelineLayoutSetLabel(MemorySegment pipelineLayout, MemorySegment label) { - var mh$ = wgpuPipelineLayoutSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuPipelineLayoutSetLabel", pipelineLayout, label); - } - mh$.invokeExact(pipelineLayout, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuPipelineLayoutReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuPipelineLayoutReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuPipelineLayoutReference(WGPUPipelineLayout pipelineLayout) - * } - */ - public static FunctionDescriptor wgpuPipelineLayoutReference$descriptor() { - return wgpuPipelineLayoutReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuPipelineLayoutReference(WGPUPipelineLayout pipelineLayout) - * } - */ - public static MethodHandle wgpuPipelineLayoutReference$handle() { - return wgpuPipelineLayoutReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuPipelineLayoutReference(WGPUPipelineLayout pipelineLayout) - * } - */ - public static MemorySegment wgpuPipelineLayoutReference$address() { - return wgpuPipelineLayoutReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuPipelineLayoutReference(WGPUPipelineLayout pipelineLayout) - * } - */ - public static void wgpuPipelineLayoutReference(MemorySegment pipelineLayout) { - var mh$ = wgpuPipelineLayoutReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuPipelineLayoutReference", pipelineLayout); - } - mh$.invokeExact(pipelineLayout); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuPipelineLayoutRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuPipelineLayoutRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuPipelineLayoutRelease(WGPUPipelineLayout pipelineLayout) - * } - */ - public static FunctionDescriptor wgpuPipelineLayoutRelease$descriptor() { - return wgpuPipelineLayoutRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuPipelineLayoutRelease(WGPUPipelineLayout pipelineLayout) - * } - */ - public static MethodHandle wgpuPipelineLayoutRelease$handle() { - return wgpuPipelineLayoutRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuPipelineLayoutRelease(WGPUPipelineLayout pipelineLayout) - * } - */ - public static MemorySegment wgpuPipelineLayoutRelease$address() { - return wgpuPipelineLayoutRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuPipelineLayoutRelease(WGPUPipelineLayout pipelineLayout) - * } - */ - public static void wgpuPipelineLayoutRelease(MemorySegment pipelineLayout) { - var mh$ = wgpuPipelineLayoutRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuPipelineLayoutRelease", pipelineLayout); - } - mh$.invokeExact(pipelineLayout); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQuerySetDestroy { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQuerySetDestroy"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQuerySetDestroy(WGPUQuerySet querySet) - * } - */ - public static FunctionDescriptor wgpuQuerySetDestroy$descriptor() { - return wgpuQuerySetDestroy.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQuerySetDestroy(WGPUQuerySet querySet) - * } - */ - public static MethodHandle wgpuQuerySetDestroy$handle() { - return wgpuQuerySetDestroy.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQuerySetDestroy(WGPUQuerySet querySet) - * } - */ - public static MemorySegment wgpuQuerySetDestroy$address() { - return wgpuQuerySetDestroy.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQuerySetDestroy(WGPUQuerySet querySet) - * } - */ - public static void wgpuQuerySetDestroy(MemorySegment querySet) { - var mh$ = wgpuQuerySetDestroy.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQuerySetDestroy", querySet); - } - mh$.invokeExact(querySet); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQuerySetGetCount { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQuerySetGetCount"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * uint32_t wgpuQuerySetGetCount(WGPUQuerySet querySet) - * } - */ - public static FunctionDescriptor wgpuQuerySetGetCount$descriptor() { - return wgpuQuerySetGetCount.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * uint32_t wgpuQuerySetGetCount(WGPUQuerySet querySet) - * } - */ - public static MethodHandle wgpuQuerySetGetCount$handle() { - return wgpuQuerySetGetCount.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * uint32_t wgpuQuerySetGetCount(WGPUQuerySet querySet) - * } - */ - public static MemorySegment wgpuQuerySetGetCount$address() { - return wgpuQuerySetGetCount.ADDR; - } - - /** - * {@snippet lang=c : - * uint32_t wgpuQuerySetGetCount(WGPUQuerySet querySet) - * } - */ - public static int wgpuQuerySetGetCount(MemorySegment querySet) { - var mh$ = wgpuQuerySetGetCount.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQuerySetGetCount", querySet); - } - return (int)mh$.invokeExact(querySet); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQuerySetGetType { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQuerySetGetType"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUQueryType wgpuQuerySetGetType(WGPUQuerySet querySet) - * } - */ - public static FunctionDescriptor wgpuQuerySetGetType$descriptor() { - return wgpuQuerySetGetType.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUQueryType wgpuQuerySetGetType(WGPUQuerySet querySet) - * } - */ - public static MethodHandle wgpuQuerySetGetType$handle() { - return wgpuQuerySetGetType.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUQueryType wgpuQuerySetGetType(WGPUQuerySet querySet) - * } - */ - public static MemorySegment wgpuQuerySetGetType$address() { - return wgpuQuerySetGetType.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUQueryType wgpuQuerySetGetType(WGPUQuerySet querySet) - * } - */ - public static int wgpuQuerySetGetType(MemorySegment querySet) { - var mh$ = wgpuQuerySetGetType.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQuerySetGetType", querySet); - } - return (int)mh$.invokeExact(querySet); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQuerySetSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQuerySetSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQuerySetSetLabel(WGPUQuerySet querySet, const char *label) - * } - */ - public static FunctionDescriptor wgpuQuerySetSetLabel$descriptor() { - return wgpuQuerySetSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQuerySetSetLabel(WGPUQuerySet querySet, const char *label) - * } - */ - public static MethodHandle wgpuQuerySetSetLabel$handle() { - return wgpuQuerySetSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQuerySetSetLabel(WGPUQuerySet querySet, const char *label) - * } - */ - public static MemorySegment wgpuQuerySetSetLabel$address() { - return wgpuQuerySetSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQuerySetSetLabel(WGPUQuerySet querySet, const char *label) - * } - */ - public static void wgpuQuerySetSetLabel(MemorySegment querySet, MemorySegment label) { - var mh$ = wgpuQuerySetSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQuerySetSetLabel", querySet, label); - } - mh$.invokeExact(querySet, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQuerySetReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQuerySetReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQuerySetReference(WGPUQuerySet querySet) - * } - */ - public static FunctionDescriptor wgpuQuerySetReference$descriptor() { - return wgpuQuerySetReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQuerySetReference(WGPUQuerySet querySet) - * } - */ - public static MethodHandle wgpuQuerySetReference$handle() { - return wgpuQuerySetReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQuerySetReference(WGPUQuerySet querySet) - * } - */ - public static MemorySegment wgpuQuerySetReference$address() { - return wgpuQuerySetReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQuerySetReference(WGPUQuerySet querySet) - * } - */ - public static void wgpuQuerySetReference(MemorySegment querySet) { - var mh$ = wgpuQuerySetReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQuerySetReference", querySet); - } - mh$.invokeExact(querySet); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQuerySetRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQuerySetRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQuerySetRelease(WGPUQuerySet querySet) - * } - */ - public static FunctionDescriptor wgpuQuerySetRelease$descriptor() { - return wgpuQuerySetRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQuerySetRelease(WGPUQuerySet querySet) - * } - */ - public static MethodHandle wgpuQuerySetRelease$handle() { - return wgpuQuerySetRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQuerySetRelease(WGPUQuerySet querySet) - * } - */ - public static MemorySegment wgpuQuerySetRelease$address() { - return wgpuQuerySetRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQuerySetRelease(WGPUQuerySet querySet) - * } - */ - public static void wgpuQuerySetRelease(MemorySegment querySet) { - var mh$ = wgpuQuerySetRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQuerySetRelease", querySet); - } - mh$.invokeExact(querySet); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQueueOnSubmittedWorkDone { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQueueOnSubmittedWorkDone"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQueueOnSubmittedWorkDone(WGPUQueue queue, WGPUQueueWorkDoneCallback callback, void *userdata) - * } - */ - public static FunctionDescriptor wgpuQueueOnSubmittedWorkDone$descriptor() { - return wgpuQueueOnSubmittedWorkDone.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQueueOnSubmittedWorkDone(WGPUQueue queue, WGPUQueueWorkDoneCallback callback, void *userdata) - * } - */ - public static MethodHandle wgpuQueueOnSubmittedWorkDone$handle() { - return wgpuQueueOnSubmittedWorkDone.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQueueOnSubmittedWorkDone(WGPUQueue queue, WGPUQueueWorkDoneCallback callback, void *userdata) - * } - */ - public static MemorySegment wgpuQueueOnSubmittedWorkDone$address() { - return wgpuQueueOnSubmittedWorkDone.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQueueOnSubmittedWorkDone(WGPUQueue queue, WGPUQueueWorkDoneCallback callback, void *userdata) - * } - */ - public static void wgpuQueueOnSubmittedWorkDone(MemorySegment queue, MemorySegment callback, MemorySegment userdata) { - var mh$ = wgpuQueueOnSubmittedWorkDone.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQueueOnSubmittedWorkDone", queue, callback, userdata); - } - mh$.invokeExact(queue, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQueueSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQueueSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQueueSetLabel(WGPUQueue queue, const char *label) - * } - */ - public static FunctionDescriptor wgpuQueueSetLabel$descriptor() { - return wgpuQueueSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQueueSetLabel(WGPUQueue queue, const char *label) - * } - */ - public static MethodHandle wgpuQueueSetLabel$handle() { - return wgpuQueueSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQueueSetLabel(WGPUQueue queue, const char *label) - * } - */ - public static MemorySegment wgpuQueueSetLabel$address() { - return wgpuQueueSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQueueSetLabel(WGPUQueue queue, const char *label) - * } - */ - public static void wgpuQueueSetLabel(MemorySegment queue, MemorySegment label) { - var mh$ = wgpuQueueSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQueueSetLabel", queue, label); - } - mh$.invokeExact(queue, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQueueSubmit { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQueueSubmit"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQueueSubmit(WGPUQueue queue, size_t commandCount, const WGPUCommandBuffer *commands) - * } - */ - public static FunctionDescriptor wgpuQueueSubmit$descriptor() { - return wgpuQueueSubmit.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQueueSubmit(WGPUQueue queue, size_t commandCount, const WGPUCommandBuffer *commands) - * } - */ - public static MethodHandle wgpuQueueSubmit$handle() { - return wgpuQueueSubmit.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQueueSubmit(WGPUQueue queue, size_t commandCount, const WGPUCommandBuffer *commands) - * } - */ - public static MemorySegment wgpuQueueSubmit$address() { - return wgpuQueueSubmit.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQueueSubmit(WGPUQueue queue, size_t commandCount, const WGPUCommandBuffer *commands) - * } - */ - public static void wgpuQueueSubmit(MemorySegment queue, long commandCount, MemorySegment commands) { - var mh$ = wgpuQueueSubmit.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQueueSubmit", queue, commandCount, commands); - } - mh$.invokeExact(queue, commandCount, commands); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQueueWriteBuffer { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQueueWriteBuffer"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQueueWriteBuffer(WGPUQueue queue, WGPUBuffer buffer, uint64_t bufferOffset, const void *data, size_t size) - * } - */ - public static FunctionDescriptor wgpuQueueWriteBuffer$descriptor() { - return wgpuQueueWriteBuffer.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQueueWriteBuffer(WGPUQueue queue, WGPUBuffer buffer, uint64_t bufferOffset, const void *data, size_t size) - * } - */ - public static MethodHandle wgpuQueueWriteBuffer$handle() { - return wgpuQueueWriteBuffer.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQueueWriteBuffer(WGPUQueue queue, WGPUBuffer buffer, uint64_t bufferOffset, const void *data, size_t size) - * } - */ - public static MemorySegment wgpuQueueWriteBuffer$address() { - return wgpuQueueWriteBuffer.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQueueWriteBuffer(WGPUQueue queue, WGPUBuffer buffer, uint64_t bufferOffset, const void *data, size_t size) - * } - */ - public static void wgpuQueueWriteBuffer(MemorySegment queue, MemorySegment buffer, long bufferOffset, MemorySegment data, long size) { - var mh$ = wgpuQueueWriteBuffer.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQueueWriteBuffer", queue, buffer, bufferOffset, data, size); - } - mh$.invokeExact(queue, buffer, bufferOffset, data, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQueueWriteTexture { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQueueWriteTexture"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQueueWriteTexture(WGPUQueue queue, const WGPUImageCopyTexture *destination, const void *data, size_t dataSize, const WGPUTextureDataLayout *dataLayout, const WGPUExtent3D *writeSize) - * } - */ - public static FunctionDescriptor wgpuQueueWriteTexture$descriptor() { - return wgpuQueueWriteTexture.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQueueWriteTexture(WGPUQueue queue, const WGPUImageCopyTexture *destination, const void *data, size_t dataSize, const WGPUTextureDataLayout *dataLayout, const WGPUExtent3D *writeSize) - * } - */ - public static MethodHandle wgpuQueueWriteTexture$handle() { - return wgpuQueueWriteTexture.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQueueWriteTexture(WGPUQueue queue, const WGPUImageCopyTexture *destination, const void *data, size_t dataSize, const WGPUTextureDataLayout *dataLayout, const WGPUExtent3D *writeSize) - * } - */ - public static MemorySegment wgpuQueueWriteTexture$address() { - return wgpuQueueWriteTexture.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQueueWriteTexture(WGPUQueue queue, const WGPUImageCopyTexture *destination, const void *data, size_t dataSize, const WGPUTextureDataLayout *dataLayout, const WGPUExtent3D *writeSize) - * } - */ - public static void wgpuQueueWriteTexture(MemorySegment queue, MemorySegment destination, MemorySegment data, long dataSize, MemorySegment dataLayout, MemorySegment writeSize) { - var mh$ = wgpuQueueWriteTexture.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQueueWriteTexture", queue, destination, data, dataSize, dataLayout, writeSize); - } - mh$.invokeExact(queue, destination, data, dataSize, dataLayout, writeSize); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQueueReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQueueReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQueueReference(WGPUQueue queue) - * } - */ - public static FunctionDescriptor wgpuQueueReference$descriptor() { - return wgpuQueueReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQueueReference(WGPUQueue queue) - * } - */ - public static MethodHandle wgpuQueueReference$handle() { - return wgpuQueueReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQueueReference(WGPUQueue queue) - * } - */ - public static MemorySegment wgpuQueueReference$address() { - return wgpuQueueReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQueueReference(WGPUQueue queue) - * } - */ - public static void wgpuQueueReference(MemorySegment queue) { - var mh$ = wgpuQueueReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQueueReference", queue); - } - mh$.invokeExact(queue); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQueueRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQueueRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuQueueRelease(WGPUQueue queue) - * } - */ - public static FunctionDescriptor wgpuQueueRelease$descriptor() { - return wgpuQueueRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuQueueRelease(WGPUQueue queue) - * } - */ - public static MethodHandle wgpuQueueRelease$handle() { - return wgpuQueueRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuQueueRelease(WGPUQueue queue) - * } - */ - public static MemorySegment wgpuQueueRelease$address() { - return wgpuQueueRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuQueueRelease(WGPUQueue queue) - * } - */ - public static void wgpuQueueRelease(MemorySegment queue) { - var mh$ = wgpuQueueRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQueueRelease", queue); - } - mh$.invokeExact(queue); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleSetLabel(WGPURenderBundle renderBundle, const char *label) - * } - */ - public static FunctionDescriptor wgpuRenderBundleSetLabel$descriptor() { - return wgpuRenderBundleSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleSetLabel(WGPURenderBundle renderBundle, const char *label) - * } - */ - public static MethodHandle wgpuRenderBundleSetLabel$handle() { - return wgpuRenderBundleSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleSetLabel(WGPURenderBundle renderBundle, const char *label) - * } - */ - public static MemorySegment wgpuRenderBundleSetLabel$address() { - return wgpuRenderBundleSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleSetLabel(WGPURenderBundle renderBundle, const char *label) - * } - */ - public static void wgpuRenderBundleSetLabel(MemorySegment renderBundle, MemorySegment label) { - var mh$ = wgpuRenderBundleSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleSetLabel", renderBundle, label); - } - mh$.invokeExact(renderBundle, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleReference(WGPURenderBundle renderBundle) - * } - */ - public static FunctionDescriptor wgpuRenderBundleReference$descriptor() { - return wgpuRenderBundleReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleReference(WGPURenderBundle renderBundle) - * } - */ - public static MethodHandle wgpuRenderBundleReference$handle() { - return wgpuRenderBundleReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleReference(WGPURenderBundle renderBundle) - * } - */ - public static MemorySegment wgpuRenderBundleReference$address() { - return wgpuRenderBundleReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleReference(WGPURenderBundle renderBundle) - * } - */ - public static void wgpuRenderBundleReference(MemorySegment renderBundle) { - var mh$ = wgpuRenderBundleReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleReference", renderBundle); - } - mh$.invokeExact(renderBundle); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleRelease(WGPURenderBundle renderBundle) - * } - */ - public static FunctionDescriptor wgpuRenderBundleRelease$descriptor() { - return wgpuRenderBundleRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleRelease(WGPURenderBundle renderBundle) - * } - */ - public static MethodHandle wgpuRenderBundleRelease$handle() { - return wgpuRenderBundleRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleRelease(WGPURenderBundle renderBundle) - * } - */ - public static MemorySegment wgpuRenderBundleRelease$address() { - return wgpuRenderBundleRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleRelease(WGPURenderBundle renderBundle) - * } - */ - public static void wgpuRenderBundleRelease(MemorySegment renderBundle) { - var mh$ = wgpuRenderBundleRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleRelease", renderBundle); - } - mh$.invokeExact(renderBundle); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderDraw { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderDraw"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDraw(WGPURenderBundleEncoder renderBundleEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderDraw$descriptor() { - return wgpuRenderBundleEncoderDraw.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDraw(WGPURenderBundleEncoder renderBundleEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderDraw$handle() { - return wgpuRenderBundleEncoderDraw.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDraw(WGPURenderBundleEncoder renderBundleEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderDraw$address() { - return wgpuRenderBundleEncoderDraw.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDraw(WGPURenderBundleEncoder renderBundleEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) - * } - */ - public static void wgpuRenderBundleEncoderDraw(MemorySegment renderBundleEncoder, int vertexCount, int instanceCount, int firstVertex, int firstInstance) { - var mh$ = wgpuRenderBundleEncoderDraw.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderDraw", renderBundleEncoder, vertexCount, instanceCount, firstVertex, firstInstance); - } - mh$.invokeExact(renderBundleEncoder, vertexCount, instanceCount, firstVertex, firstInstance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderDrawIndexed { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderDrawIndexed"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndexed(WGPURenderBundleEncoder renderBundleEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderDrawIndexed$descriptor() { - return wgpuRenderBundleEncoderDrawIndexed.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndexed(WGPURenderBundleEncoder renderBundleEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderDrawIndexed$handle() { - return wgpuRenderBundleEncoderDrawIndexed.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndexed(WGPURenderBundleEncoder renderBundleEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderDrawIndexed$address() { - return wgpuRenderBundleEncoderDrawIndexed.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndexed(WGPURenderBundleEncoder renderBundleEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) - * } - */ - public static void wgpuRenderBundleEncoderDrawIndexed(MemorySegment renderBundleEncoder, int indexCount, int instanceCount, int firstIndex, int baseVertex, int firstInstance) { - var mh$ = wgpuRenderBundleEncoderDrawIndexed.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderDrawIndexed", renderBundleEncoder, indexCount, instanceCount, firstIndex, baseVertex, firstInstance); - } - mh$.invokeExact(renderBundleEncoder, indexCount, instanceCount, firstIndex, baseVertex, firstInstance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderDrawIndexedIndirect { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderDrawIndexedIndirect"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndexedIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderDrawIndexedIndirect$descriptor() { - return wgpuRenderBundleEncoderDrawIndexedIndirect.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndexedIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderDrawIndexedIndirect$handle() { - return wgpuRenderBundleEncoderDrawIndexedIndirect.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndexedIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderDrawIndexedIndirect$address() { - return wgpuRenderBundleEncoderDrawIndexedIndirect.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndexedIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static void wgpuRenderBundleEncoderDrawIndexedIndirect(MemorySegment renderBundleEncoder, MemorySegment indirectBuffer, long indirectOffset) { - var mh$ = wgpuRenderBundleEncoderDrawIndexedIndirect.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderDrawIndexedIndirect", renderBundleEncoder, indirectBuffer, indirectOffset); - } - mh$.invokeExact(renderBundleEncoder, indirectBuffer, indirectOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderDrawIndirect { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderDrawIndirect"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderDrawIndirect$descriptor() { - return wgpuRenderBundleEncoderDrawIndirect.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderDrawIndirect$handle() { - return wgpuRenderBundleEncoderDrawIndirect.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderDrawIndirect$address() { - return wgpuRenderBundleEncoderDrawIndirect.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderDrawIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static void wgpuRenderBundleEncoderDrawIndirect(MemorySegment renderBundleEncoder, MemorySegment indirectBuffer, long indirectOffset) { - var mh$ = wgpuRenderBundleEncoderDrawIndirect.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderDrawIndirect", renderBundleEncoder, indirectBuffer, indirectOffset); - } - mh$.invokeExact(renderBundleEncoder, indirectBuffer, indirectOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderFinish { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderFinish"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPURenderBundle wgpuRenderBundleEncoderFinish(WGPURenderBundleEncoder renderBundleEncoder, const WGPURenderBundleDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderFinish$descriptor() { - return wgpuRenderBundleEncoderFinish.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPURenderBundle wgpuRenderBundleEncoderFinish(WGPURenderBundleEncoder renderBundleEncoder, const WGPURenderBundleDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderFinish$handle() { - return wgpuRenderBundleEncoderFinish.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPURenderBundle wgpuRenderBundleEncoderFinish(WGPURenderBundleEncoder renderBundleEncoder, const WGPURenderBundleDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderFinish$address() { - return wgpuRenderBundleEncoderFinish.ADDR; - } - - /** - * {@snippet lang=c : - * WGPURenderBundle wgpuRenderBundleEncoderFinish(WGPURenderBundleEncoder renderBundleEncoder, const WGPURenderBundleDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderFinish(MemorySegment renderBundleEncoder, MemorySegment descriptor) { - var mh$ = wgpuRenderBundleEncoderFinish.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderFinish", renderBundleEncoder, descriptor); - } - return (MemorySegment)mh$.invokeExact(renderBundleEncoder, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderInsertDebugMarker { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderInsertDebugMarker"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderInsertDebugMarker(WGPURenderBundleEncoder renderBundleEncoder, const char *markerLabel) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderInsertDebugMarker$descriptor() { - return wgpuRenderBundleEncoderInsertDebugMarker.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderInsertDebugMarker(WGPURenderBundleEncoder renderBundleEncoder, const char *markerLabel) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderInsertDebugMarker$handle() { - return wgpuRenderBundleEncoderInsertDebugMarker.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderInsertDebugMarker(WGPURenderBundleEncoder renderBundleEncoder, const char *markerLabel) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderInsertDebugMarker$address() { - return wgpuRenderBundleEncoderInsertDebugMarker.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderInsertDebugMarker(WGPURenderBundleEncoder renderBundleEncoder, const char *markerLabel) - * } - */ - public static void wgpuRenderBundleEncoderInsertDebugMarker(MemorySegment renderBundleEncoder, MemorySegment markerLabel) { - var mh$ = wgpuRenderBundleEncoderInsertDebugMarker.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderInsertDebugMarker", renderBundleEncoder, markerLabel); - } - mh$.invokeExact(renderBundleEncoder, markerLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderPopDebugGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderPopDebugGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderPopDebugGroup(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderPopDebugGroup$descriptor() { - return wgpuRenderBundleEncoderPopDebugGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderPopDebugGroup(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderPopDebugGroup$handle() { - return wgpuRenderBundleEncoderPopDebugGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderPopDebugGroup(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderPopDebugGroup$address() { - return wgpuRenderBundleEncoderPopDebugGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderPopDebugGroup(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static void wgpuRenderBundleEncoderPopDebugGroup(MemorySegment renderBundleEncoder) { - var mh$ = wgpuRenderBundleEncoderPopDebugGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderPopDebugGroup", renderBundleEncoder); - } - mh$.invokeExact(renderBundleEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderPushDebugGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderPushDebugGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderPushDebugGroup(WGPURenderBundleEncoder renderBundleEncoder, const char *groupLabel) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderPushDebugGroup$descriptor() { - return wgpuRenderBundleEncoderPushDebugGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderPushDebugGroup(WGPURenderBundleEncoder renderBundleEncoder, const char *groupLabel) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderPushDebugGroup$handle() { - return wgpuRenderBundleEncoderPushDebugGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderPushDebugGroup(WGPURenderBundleEncoder renderBundleEncoder, const char *groupLabel) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderPushDebugGroup$address() { - return wgpuRenderBundleEncoderPushDebugGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderPushDebugGroup(WGPURenderBundleEncoder renderBundleEncoder, const char *groupLabel) - * } - */ - public static void wgpuRenderBundleEncoderPushDebugGroup(MemorySegment renderBundleEncoder, MemorySegment groupLabel) { - var mh$ = wgpuRenderBundleEncoderPushDebugGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderPushDebugGroup", renderBundleEncoder, groupLabel); - } - mh$.invokeExact(renderBundleEncoder, groupLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderSetBindGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderSetBindGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetBindGroup(WGPURenderBundleEncoder renderBundleEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderSetBindGroup$descriptor() { - return wgpuRenderBundleEncoderSetBindGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetBindGroup(WGPURenderBundleEncoder renderBundleEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderSetBindGroup$handle() { - return wgpuRenderBundleEncoderSetBindGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetBindGroup(WGPURenderBundleEncoder renderBundleEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderSetBindGroup$address() { - return wgpuRenderBundleEncoderSetBindGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetBindGroup(WGPURenderBundleEncoder renderBundleEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static void wgpuRenderBundleEncoderSetBindGroup(MemorySegment renderBundleEncoder, int groupIndex, MemorySegment group, long dynamicOffsetCount, MemorySegment dynamicOffsets) { - var mh$ = wgpuRenderBundleEncoderSetBindGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderSetBindGroup", renderBundleEncoder, groupIndex, group, dynamicOffsetCount, dynamicOffsets); - } - mh$.invokeExact(renderBundleEncoder, groupIndex, group, dynamicOffsetCount, dynamicOffsets); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderSetIndexBuffer { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderSetIndexBuffer"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetIndexBuffer(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderSetIndexBuffer$descriptor() { - return wgpuRenderBundleEncoderSetIndexBuffer.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetIndexBuffer(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderSetIndexBuffer$handle() { - return wgpuRenderBundleEncoderSetIndexBuffer.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetIndexBuffer(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderSetIndexBuffer$address() { - return wgpuRenderBundleEncoderSetIndexBuffer.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetIndexBuffer(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) - * } - */ - public static void wgpuRenderBundleEncoderSetIndexBuffer(MemorySegment renderBundleEncoder, MemorySegment buffer, int format, long offset, long size) { - var mh$ = wgpuRenderBundleEncoderSetIndexBuffer.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderSetIndexBuffer", renderBundleEncoder, buffer, format, offset, size); - } - mh$.invokeExact(renderBundleEncoder, buffer, format, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetLabel(WGPURenderBundleEncoder renderBundleEncoder, const char *label) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderSetLabel$descriptor() { - return wgpuRenderBundleEncoderSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetLabel(WGPURenderBundleEncoder renderBundleEncoder, const char *label) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderSetLabel$handle() { - return wgpuRenderBundleEncoderSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetLabel(WGPURenderBundleEncoder renderBundleEncoder, const char *label) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderSetLabel$address() { - return wgpuRenderBundleEncoderSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetLabel(WGPURenderBundleEncoder renderBundleEncoder, const char *label) - * } - */ - public static void wgpuRenderBundleEncoderSetLabel(MemorySegment renderBundleEncoder, MemorySegment label) { - var mh$ = wgpuRenderBundleEncoderSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderSetLabel", renderBundleEncoder, label); - } - mh$.invokeExact(renderBundleEncoder, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderSetPipeline { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderSetPipeline"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetPipeline(WGPURenderBundleEncoder renderBundleEncoder, WGPURenderPipeline pipeline) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderSetPipeline$descriptor() { - return wgpuRenderBundleEncoderSetPipeline.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetPipeline(WGPURenderBundleEncoder renderBundleEncoder, WGPURenderPipeline pipeline) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderSetPipeline$handle() { - return wgpuRenderBundleEncoderSetPipeline.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetPipeline(WGPURenderBundleEncoder renderBundleEncoder, WGPURenderPipeline pipeline) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderSetPipeline$address() { - return wgpuRenderBundleEncoderSetPipeline.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetPipeline(WGPURenderBundleEncoder renderBundleEncoder, WGPURenderPipeline pipeline) - * } - */ - public static void wgpuRenderBundleEncoderSetPipeline(MemorySegment renderBundleEncoder, MemorySegment pipeline) { - var mh$ = wgpuRenderBundleEncoderSetPipeline.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderSetPipeline", renderBundleEncoder, pipeline); - } - mh$.invokeExact(renderBundleEncoder, pipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderSetVertexBuffer { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderSetVertexBuffer"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetVertexBuffer(WGPURenderBundleEncoder renderBundleEncoder, uint32_t slot, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderSetVertexBuffer$descriptor() { - return wgpuRenderBundleEncoderSetVertexBuffer.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetVertexBuffer(WGPURenderBundleEncoder renderBundleEncoder, uint32_t slot, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderSetVertexBuffer$handle() { - return wgpuRenderBundleEncoderSetVertexBuffer.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetVertexBuffer(WGPURenderBundleEncoder renderBundleEncoder, uint32_t slot, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderSetVertexBuffer$address() { - return wgpuRenderBundleEncoderSetVertexBuffer.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderSetVertexBuffer(WGPURenderBundleEncoder renderBundleEncoder, uint32_t slot, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static void wgpuRenderBundleEncoderSetVertexBuffer(MemorySegment renderBundleEncoder, int slot, MemorySegment buffer, long offset, long size) { - var mh$ = wgpuRenderBundleEncoderSetVertexBuffer.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderSetVertexBuffer", renderBundleEncoder, slot, buffer, offset, size); - } - mh$.invokeExact(renderBundleEncoder, slot, buffer, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderReference(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderReference$descriptor() { - return wgpuRenderBundleEncoderReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderReference(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderReference$handle() { - return wgpuRenderBundleEncoderReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderReference(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderReference$address() { - return wgpuRenderBundleEncoderReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderReference(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static void wgpuRenderBundleEncoderReference(MemorySegment renderBundleEncoder) { - var mh$ = wgpuRenderBundleEncoderReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderReference", renderBundleEncoder); - } - mh$.invokeExact(renderBundleEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderBundleEncoderRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderBundleEncoderRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderRelease(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static FunctionDescriptor wgpuRenderBundleEncoderRelease$descriptor() { - return wgpuRenderBundleEncoderRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderRelease(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static MethodHandle wgpuRenderBundleEncoderRelease$handle() { - return wgpuRenderBundleEncoderRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderBundleEncoderRelease(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static MemorySegment wgpuRenderBundleEncoderRelease$address() { - return wgpuRenderBundleEncoderRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderBundleEncoderRelease(WGPURenderBundleEncoder renderBundleEncoder) - * } - */ - public static void wgpuRenderBundleEncoderRelease(MemorySegment renderBundleEncoder) { - var mh$ = wgpuRenderBundleEncoderRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderBundleEncoderRelease", renderBundleEncoder); - } - mh$.invokeExact(renderBundleEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderBeginOcclusionQuery { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderBeginOcclusionQuery"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderBeginOcclusionQuery(WGPURenderPassEncoder renderPassEncoder, uint32_t queryIndex) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderBeginOcclusionQuery$descriptor() { - return wgpuRenderPassEncoderBeginOcclusionQuery.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderBeginOcclusionQuery(WGPURenderPassEncoder renderPassEncoder, uint32_t queryIndex) - * } - */ - public static MethodHandle wgpuRenderPassEncoderBeginOcclusionQuery$handle() { - return wgpuRenderPassEncoderBeginOcclusionQuery.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderBeginOcclusionQuery(WGPURenderPassEncoder renderPassEncoder, uint32_t queryIndex) - * } - */ - public static MemorySegment wgpuRenderPassEncoderBeginOcclusionQuery$address() { - return wgpuRenderPassEncoderBeginOcclusionQuery.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderBeginOcclusionQuery(WGPURenderPassEncoder renderPassEncoder, uint32_t queryIndex) - * } - */ - public static void wgpuRenderPassEncoderBeginOcclusionQuery(MemorySegment renderPassEncoder, int queryIndex) { - var mh$ = wgpuRenderPassEncoderBeginOcclusionQuery.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderBeginOcclusionQuery", renderPassEncoder, queryIndex); - } - mh$.invokeExact(renderPassEncoder, queryIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderDraw { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderDraw"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDraw(WGPURenderPassEncoder renderPassEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderDraw$descriptor() { - return wgpuRenderPassEncoderDraw.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDraw(WGPURenderPassEncoder renderPassEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) - * } - */ - public static MethodHandle wgpuRenderPassEncoderDraw$handle() { - return wgpuRenderPassEncoderDraw.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDraw(WGPURenderPassEncoder renderPassEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) - * } - */ - public static MemorySegment wgpuRenderPassEncoderDraw$address() { - return wgpuRenderPassEncoderDraw.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderDraw(WGPURenderPassEncoder renderPassEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) - * } - */ - public static void wgpuRenderPassEncoderDraw(MemorySegment renderPassEncoder, int vertexCount, int instanceCount, int firstVertex, int firstInstance) { - var mh$ = wgpuRenderPassEncoderDraw.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderDraw", renderPassEncoder, vertexCount, instanceCount, firstVertex, firstInstance); - } - mh$.invokeExact(renderPassEncoder, vertexCount, instanceCount, firstVertex, firstInstance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderDrawIndexed { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderDrawIndexed"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndexed(WGPURenderPassEncoder renderPassEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderDrawIndexed$descriptor() { - return wgpuRenderPassEncoderDrawIndexed.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndexed(WGPURenderPassEncoder renderPassEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) - * } - */ - public static MethodHandle wgpuRenderPassEncoderDrawIndexed$handle() { - return wgpuRenderPassEncoderDrawIndexed.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndexed(WGPURenderPassEncoder renderPassEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) - * } - */ - public static MemorySegment wgpuRenderPassEncoderDrawIndexed$address() { - return wgpuRenderPassEncoderDrawIndexed.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndexed(WGPURenderPassEncoder renderPassEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) - * } - */ - public static void wgpuRenderPassEncoderDrawIndexed(MemorySegment renderPassEncoder, int indexCount, int instanceCount, int firstIndex, int baseVertex, int firstInstance) { - var mh$ = wgpuRenderPassEncoderDrawIndexed.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderDrawIndexed", renderPassEncoder, indexCount, instanceCount, firstIndex, baseVertex, firstInstance); - } - mh$.invokeExact(renderPassEncoder, indexCount, instanceCount, firstIndex, baseVertex, firstInstance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderDrawIndexedIndirect { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderDrawIndexedIndirect"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndexedIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderDrawIndexedIndirect$descriptor() { - return wgpuRenderPassEncoderDrawIndexedIndirect.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndexedIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static MethodHandle wgpuRenderPassEncoderDrawIndexedIndirect$handle() { - return wgpuRenderPassEncoderDrawIndexedIndirect.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndexedIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static MemorySegment wgpuRenderPassEncoderDrawIndexedIndirect$address() { - return wgpuRenderPassEncoderDrawIndexedIndirect.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndexedIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static void wgpuRenderPassEncoderDrawIndexedIndirect(MemorySegment renderPassEncoder, MemorySegment indirectBuffer, long indirectOffset) { - var mh$ = wgpuRenderPassEncoderDrawIndexedIndirect.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderDrawIndexedIndirect", renderPassEncoder, indirectBuffer, indirectOffset); - } - mh$.invokeExact(renderPassEncoder, indirectBuffer, indirectOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderDrawIndirect { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderDrawIndirect"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderDrawIndirect$descriptor() { - return wgpuRenderPassEncoderDrawIndirect.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static MethodHandle wgpuRenderPassEncoderDrawIndirect$handle() { - return wgpuRenderPassEncoderDrawIndirect.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static MemorySegment wgpuRenderPassEncoderDrawIndirect$address() { - return wgpuRenderPassEncoderDrawIndirect.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderDrawIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) - * } - */ - public static void wgpuRenderPassEncoderDrawIndirect(MemorySegment renderPassEncoder, MemorySegment indirectBuffer, long indirectOffset) { - var mh$ = wgpuRenderPassEncoderDrawIndirect.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderDrawIndirect", renderPassEncoder, indirectBuffer, indirectOffset); - } - mh$.invokeExact(renderPassEncoder, indirectBuffer, indirectOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderEnd { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderEnd"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderEnd(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderEnd$descriptor() { - return wgpuRenderPassEncoderEnd.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderEnd(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MethodHandle wgpuRenderPassEncoderEnd$handle() { - return wgpuRenderPassEncoderEnd.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderEnd(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MemorySegment wgpuRenderPassEncoderEnd$address() { - return wgpuRenderPassEncoderEnd.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderEnd(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static void wgpuRenderPassEncoderEnd(MemorySegment renderPassEncoder) { - var mh$ = wgpuRenderPassEncoderEnd.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderEnd", renderPassEncoder); - } - mh$.invokeExact(renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderEndOcclusionQuery { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderEndOcclusionQuery"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderEndOcclusionQuery(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderEndOcclusionQuery$descriptor() { - return wgpuRenderPassEncoderEndOcclusionQuery.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderEndOcclusionQuery(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MethodHandle wgpuRenderPassEncoderEndOcclusionQuery$handle() { - return wgpuRenderPassEncoderEndOcclusionQuery.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderEndOcclusionQuery(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MemorySegment wgpuRenderPassEncoderEndOcclusionQuery$address() { - return wgpuRenderPassEncoderEndOcclusionQuery.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderEndOcclusionQuery(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static void wgpuRenderPassEncoderEndOcclusionQuery(MemorySegment renderPassEncoder) { - var mh$ = wgpuRenderPassEncoderEndOcclusionQuery.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderEndOcclusionQuery", renderPassEncoder); - } - mh$.invokeExact(renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderExecuteBundles { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderExecuteBundles"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderExecuteBundles(WGPURenderPassEncoder renderPassEncoder, size_t bundleCount, const WGPURenderBundle *bundles) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderExecuteBundles$descriptor() { - return wgpuRenderPassEncoderExecuteBundles.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderExecuteBundles(WGPURenderPassEncoder renderPassEncoder, size_t bundleCount, const WGPURenderBundle *bundles) - * } - */ - public static MethodHandle wgpuRenderPassEncoderExecuteBundles$handle() { - return wgpuRenderPassEncoderExecuteBundles.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderExecuteBundles(WGPURenderPassEncoder renderPassEncoder, size_t bundleCount, const WGPURenderBundle *bundles) - * } - */ - public static MemorySegment wgpuRenderPassEncoderExecuteBundles$address() { - return wgpuRenderPassEncoderExecuteBundles.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderExecuteBundles(WGPURenderPassEncoder renderPassEncoder, size_t bundleCount, const WGPURenderBundle *bundles) - * } - */ - public static void wgpuRenderPassEncoderExecuteBundles(MemorySegment renderPassEncoder, long bundleCount, MemorySegment bundles) { - var mh$ = wgpuRenderPassEncoderExecuteBundles.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderExecuteBundles", renderPassEncoder, bundleCount, bundles); - } - mh$.invokeExact(renderPassEncoder, bundleCount, bundles); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderInsertDebugMarker { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderInsertDebugMarker"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderInsertDebugMarker(WGPURenderPassEncoder renderPassEncoder, const char *markerLabel) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderInsertDebugMarker$descriptor() { - return wgpuRenderPassEncoderInsertDebugMarker.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderInsertDebugMarker(WGPURenderPassEncoder renderPassEncoder, const char *markerLabel) - * } - */ - public static MethodHandle wgpuRenderPassEncoderInsertDebugMarker$handle() { - return wgpuRenderPassEncoderInsertDebugMarker.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderInsertDebugMarker(WGPURenderPassEncoder renderPassEncoder, const char *markerLabel) - * } - */ - public static MemorySegment wgpuRenderPassEncoderInsertDebugMarker$address() { - return wgpuRenderPassEncoderInsertDebugMarker.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderInsertDebugMarker(WGPURenderPassEncoder renderPassEncoder, const char *markerLabel) - * } - */ - public static void wgpuRenderPassEncoderInsertDebugMarker(MemorySegment renderPassEncoder, MemorySegment markerLabel) { - var mh$ = wgpuRenderPassEncoderInsertDebugMarker.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderInsertDebugMarker", renderPassEncoder, markerLabel); - } - mh$.invokeExact(renderPassEncoder, markerLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderPopDebugGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderPopDebugGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderPopDebugGroup(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderPopDebugGroup$descriptor() { - return wgpuRenderPassEncoderPopDebugGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderPopDebugGroup(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MethodHandle wgpuRenderPassEncoderPopDebugGroup$handle() { - return wgpuRenderPassEncoderPopDebugGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderPopDebugGroup(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MemorySegment wgpuRenderPassEncoderPopDebugGroup$address() { - return wgpuRenderPassEncoderPopDebugGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderPopDebugGroup(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static void wgpuRenderPassEncoderPopDebugGroup(MemorySegment renderPassEncoder) { - var mh$ = wgpuRenderPassEncoderPopDebugGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderPopDebugGroup", renderPassEncoder); - } - mh$.invokeExact(renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderPushDebugGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderPushDebugGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderPushDebugGroup(WGPURenderPassEncoder renderPassEncoder, const char *groupLabel) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderPushDebugGroup$descriptor() { - return wgpuRenderPassEncoderPushDebugGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderPushDebugGroup(WGPURenderPassEncoder renderPassEncoder, const char *groupLabel) - * } - */ - public static MethodHandle wgpuRenderPassEncoderPushDebugGroup$handle() { - return wgpuRenderPassEncoderPushDebugGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderPushDebugGroup(WGPURenderPassEncoder renderPassEncoder, const char *groupLabel) - * } - */ - public static MemorySegment wgpuRenderPassEncoderPushDebugGroup$address() { - return wgpuRenderPassEncoderPushDebugGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderPushDebugGroup(WGPURenderPassEncoder renderPassEncoder, const char *groupLabel) - * } - */ - public static void wgpuRenderPassEncoderPushDebugGroup(MemorySegment renderPassEncoder, MemorySegment groupLabel) { - var mh$ = wgpuRenderPassEncoderPushDebugGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderPushDebugGroup", renderPassEncoder, groupLabel); - } - mh$.invokeExact(renderPassEncoder, groupLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderSetBindGroup { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderSetBindGroup"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetBindGroup(WGPURenderPassEncoder renderPassEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderSetBindGroup$descriptor() { - return wgpuRenderPassEncoderSetBindGroup.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetBindGroup(WGPURenderPassEncoder renderPassEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static MethodHandle wgpuRenderPassEncoderSetBindGroup$handle() { - return wgpuRenderPassEncoderSetBindGroup.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetBindGroup(WGPURenderPassEncoder renderPassEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static MemorySegment wgpuRenderPassEncoderSetBindGroup$address() { - return wgpuRenderPassEncoderSetBindGroup.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetBindGroup(WGPURenderPassEncoder renderPassEncoder, uint32_t groupIndex, WGPUBindGroup group, size_t dynamicOffsetCount, const uint32_t *dynamicOffsets) - * } - */ - public static void wgpuRenderPassEncoderSetBindGroup(MemorySegment renderPassEncoder, int groupIndex, MemorySegment group, long dynamicOffsetCount, MemorySegment dynamicOffsets) { - var mh$ = wgpuRenderPassEncoderSetBindGroup.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderSetBindGroup", renderPassEncoder, groupIndex, group, dynamicOffsetCount, dynamicOffsets); - } - mh$.invokeExact(renderPassEncoder, groupIndex, group, dynamicOffsetCount, dynamicOffsets); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderSetBlendConstant { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderSetBlendConstant"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetBlendConstant(WGPURenderPassEncoder renderPassEncoder, const WGPUColor *color) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderSetBlendConstant$descriptor() { - return wgpuRenderPassEncoderSetBlendConstant.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetBlendConstant(WGPURenderPassEncoder renderPassEncoder, const WGPUColor *color) - * } - */ - public static MethodHandle wgpuRenderPassEncoderSetBlendConstant$handle() { - return wgpuRenderPassEncoderSetBlendConstant.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetBlendConstant(WGPURenderPassEncoder renderPassEncoder, const WGPUColor *color) - * } - */ - public static MemorySegment wgpuRenderPassEncoderSetBlendConstant$address() { - return wgpuRenderPassEncoderSetBlendConstant.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetBlendConstant(WGPURenderPassEncoder renderPassEncoder, const WGPUColor *color) - * } - */ - public static void wgpuRenderPassEncoderSetBlendConstant(MemorySegment renderPassEncoder, MemorySegment color) { - var mh$ = wgpuRenderPassEncoderSetBlendConstant.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderSetBlendConstant", renderPassEncoder, color); - } - mh$.invokeExact(renderPassEncoder, color); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderSetIndexBuffer { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderSetIndexBuffer"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetIndexBuffer(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderSetIndexBuffer$descriptor() { - return wgpuRenderPassEncoderSetIndexBuffer.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetIndexBuffer(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) - * } - */ - public static MethodHandle wgpuRenderPassEncoderSetIndexBuffer$handle() { - return wgpuRenderPassEncoderSetIndexBuffer.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetIndexBuffer(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) - * } - */ - public static MemorySegment wgpuRenderPassEncoderSetIndexBuffer$address() { - return wgpuRenderPassEncoderSetIndexBuffer.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetIndexBuffer(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) - * } - */ - public static void wgpuRenderPassEncoderSetIndexBuffer(MemorySegment renderPassEncoder, MemorySegment buffer, int format, long offset, long size) { - var mh$ = wgpuRenderPassEncoderSetIndexBuffer.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderSetIndexBuffer", renderPassEncoder, buffer, format, offset, size); - } - mh$.invokeExact(renderPassEncoder, buffer, format, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetLabel(WGPURenderPassEncoder renderPassEncoder, const char *label) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderSetLabel$descriptor() { - return wgpuRenderPassEncoderSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetLabel(WGPURenderPassEncoder renderPassEncoder, const char *label) - * } - */ - public static MethodHandle wgpuRenderPassEncoderSetLabel$handle() { - return wgpuRenderPassEncoderSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetLabel(WGPURenderPassEncoder renderPassEncoder, const char *label) - * } - */ - public static MemorySegment wgpuRenderPassEncoderSetLabel$address() { - return wgpuRenderPassEncoderSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetLabel(WGPURenderPassEncoder renderPassEncoder, const char *label) - * } - */ - public static void wgpuRenderPassEncoderSetLabel(MemorySegment renderPassEncoder, MemorySegment label) { - var mh$ = wgpuRenderPassEncoderSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderSetLabel", renderPassEncoder, label); - } - mh$.invokeExact(renderPassEncoder, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderSetPipeline { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderSetPipeline"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetPipeline(WGPURenderPassEncoder renderPassEncoder, WGPURenderPipeline pipeline) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderSetPipeline$descriptor() { - return wgpuRenderPassEncoderSetPipeline.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetPipeline(WGPURenderPassEncoder renderPassEncoder, WGPURenderPipeline pipeline) - * } - */ - public static MethodHandle wgpuRenderPassEncoderSetPipeline$handle() { - return wgpuRenderPassEncoderSetPipeline.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetPipeline(WGPURenderPassEncoder renderPassEncoder, WGPURenderPipeline pipeline) - * } - */ - public static MemorySegment wgpuRenderPassEncoderSetPipeline$address() { - return wgpuRenderPassEncoderSetPipeline.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetPipeline(WGPURenderPassEncoder renderPassEncoder, WGPURenderPipeline pipeline) - * } - */ - public static void wgpuRenderPassEncoderSetPipeline(MemorySegment renderPassEncoder, MemorySegment pipeline) { - var mh$ = wgpuRenderPassEncoderSetPipeline.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderSetPipeline", renderPassEncoder, pipeline); - } - mh$.invokeExact(renderPassEncoder, pipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderSetScissorRect { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderSetScissorRect"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetScissorRect(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderSetScissorRect$descriptor() { - return wgpuRenderPassEncoderSetScissorRect.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetScissorRect(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height) - * } - */ - public static MethodHandle wgpuRenderPassEncoderSetScissorRect$handle() { - return wgpuRenderPassEncoderSetScissorRect.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetScissorRect(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height) - * } - */ - public static MemorySegment wgpuRenderPassEncoderSetScissorRect$address() { - return wgpuRenderPassEncoderSetScissorRect.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetScissorRect(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height) - * } - */ - public static void wgpuRenderPassEncoderSetScissorRect(MemorySegment renderPassEncoder, int x, int y, int width, int height) { - var mh$ = wgpuRenderPassEncoderSetScissorRect.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderSetScissorRect", renderPassEncoder, x, y, width, height); - } - mh$.invokeExact(renderPassEncoder, x, y, width, height); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderSetStencilReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderSetStencilReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetStencilReference(WGPURenderPassEncoder renderPassEncoder, uint32_t reference) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderSetStencilReference$descriptor() { - return wgpuRenderPassEncoderSetStencilReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetStencilReference(WGPURenderPassEncoder renderPassEncoder, uint32_t reference) - * } - */ - public static MethodHandle wgpuRenderPassEncoderSetStencilReference$handle() { - return wgpuRenderPassEncoderSetStencilReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetStencilReference(WGPURenderPassEncoder renderPassEncoder, uint32_t reference) - * } - */ - public static MemorySegment wgpuRenderPassEncoderSetStencilReference$address() { - return wgpuRenderPassEncoderSetStencilReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetStencilReference(WGPURenderPassEncoder renderPassEncoder, uint32_t reference) - * } - */ - public static void wgpuRenderPassEncoderSetStencilReference(MemorySegment renderPassEncoder, int reference) { - var mh$ = wgpuRenderPassEncoderSetStencilReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderSetStencilReference", renderPassEncoder, reference); - } - mh$.invokeExact(renderPassEncoder, reference); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderSetVertexBuffer { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderSetVertexBuffer"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetVertexBuffer(WGPURenderPassEncoder renderPassEncoder, uint32_t slot, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderSetVertexBuffer$descriptor() { - return wgpuRenderPassEncoderSetVertexBuffer.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetVertexBuffer(WGPURenderPassEncoder renderPassEncoder, uint32_t slot, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static MethodHandle wgpuRenderPassEncoderSetVertexBuffer$handle() { - return wgpuRenderPassEncoderSetVertexBuffer.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetVertexBuffer(WGPURenderPassEncoder renderPassEncoder, uint32_t slot, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static MemorySegment wgpuRenderPassEncoderSetVertexBuffer$address() { - return wgpuRenderPassEncoderSetVertexBuffer.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetVertexBuffer(WGPURenderPassEncoder renderPassEncoder, uint32_t slot, WGPUBuffer buffer, uint64_t offset, uint64_t size) - * } - */ - public static void wgpuRenderPassEncoderSetVertexBuffer(MemorySegment renderPassEncoder, int slot, MemorySegment buffer, long offset, long size) { - var mh$ = wgpuRenderPassEncoderSetVertexBuffer.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderSetVertexBuffer", renderPassEncoder, slot, buffer, offset, size); - } - mh$.invokeExact(renderPassEncoder, slot, buffer, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderSetViewport { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_FLOAT, - WGPU.C_FLOAT, - WGPU.C_FLOAT, - WGPU.C_FLOAT, - WGPU.C_FLOAT, - WGPU.C_FLOAT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderSetViewport"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetViewport(WGPURenderPassEncoder renderPassEncoder, float x, float y, float width, float height, float minDepth, float maxDepth) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderSetViewport$descriptor() { - return wgpuRenderPassEncoderSetViewport.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetViewport(WGPURenderPassEncoder renderPassEncoder, float x, float y, float width, float height, float minDepth, float maxDepth) - * } - */ - public static MethodHandle wgpuRenderPassEncoderSetViewport$handle() { - return wgpuRenderPassEncoderSetViewport.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetViewport(WGPURenderPassEncoder renderPassEncoder, float x, float y, float width, float height, float minDepth, float maxDepth) - * } - */ - public static MemorySegment wgpuRenderPassEncoderSetViewport$address() { - return wgpuRenderPassEncoderSetViewport.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetViewport(WGPURenderPassEncoder renderPassEncoder, float x, float y, float width, float height, float minDepth, float maxDepth) - * } - */ - public static void wgpuRenderPassEncoderSetViewport(MemorySegment renderPassEncoder, float x, float y, float width, float height, float minDepth, float maxDepth) { - var mh$ = wgpuRenderPassEncoderSetViewport.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderSetViewport", renderPassEncoder, x, y, width, height, minDepth, maxDepth); - } - mh$.invokeExact(renderPassEncoder, x, y, width, height, minDepth, maxDepth); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderReference(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderReference$descriptor() { - return wgpuRenderPassEncoderReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderReference(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MethodHandle wgpuRenderPassEncoderReference$handle() { - return wgpuRenderPassEncoderReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderReference(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MemorySegment wgpuRenderPassEncoderReference$address() { - return wgpuRenderPassEncoderReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderReference(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static void wgpuRenderPassEncoderReference(MemorySegment renderPassEncoder) { - var mh$ = wgpuRenderPassEncoderReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderReference", renderPassEncoder); - } - mh$.invokeExact(renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderRelease(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderRelease$descriptor() { - return wgpuRenderPassEncoderRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderRelease(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MethodHandle wgpuRenderPassEncoderRelease$handle() { - return wgpuRenderPassEncoderRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderRelease(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MemorySegment wgpuRenderPassEncoderRelease$address() { - return wgpuRenderPassEncoderRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderRelease(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static void wgpuRenderPassEncoderRelease(MemorySegment renderPassEncoder) { - var mh$ = wgpuRenderPassEncoderRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderRelease", renderPassEncoder); - } - mh$.invokeExact(renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPipelineGetBindGroupLayout { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPipelineGetBindGroupLayout"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuRenderPipelineGetBindGroupLayout(WGPURenderPipeline renderPipeline, uint32_t groupIndex) - * } - */ - public static FunctionDescriptor wgpuRenderPipelineGetBindGroupLayout$descriptor() { - return wgpuRenderPipelineGetBindGroupLayout.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuRenderPipelineGetBindGroupLayout(WGPURenderPipeline renderPipeline, uint32_t groupIndex) - * } - */ - public static MethodHandle wgpuRenderPipelineGetBindGroupLayout$handle() { - return wgpuRenderPipelineGetBindGroupLayout.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuRenderPipelineGetBindGroupLayout(WGPURenderPipeline renderPipeline, uint32_t groupIndex) - * } - */ - public static MemorySegment wgpuRenderPipelineGetBindGroupLayout$address() { - return wgpuRenderPipelineGetBindGroupLayout.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBindGroupLayout wgpuRenderPipelineGetBindGroupLayout(WGPURenderPipeline renderPipeline, uint32_t groupIndex) - * } - */ - public static MemorySegment wgpuRenderPipelineGetBindGroupLayout(MemorySegment renderPipeline, int groupIndex) { - var mh$ = wgpuRenderPipelineGetBindGroupLayout.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPipelineGetBindGroupLayout", renderPipeline, groupIndex); - } - return (MemorySegment)mh$.invokeExact(renderPipeline, groupIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPipelineSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPipelineSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPipelineSetLabel(WGPURenderPipeline renderPipeline, const char *label) - * } - */ - public static FunctionDescriptor wgpuRenderPipelineSetLabel$descriptor() { - return wgpuRenderPipelineSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPipelineSetLabel(WGPURenderPipeline renderPipeline, const char *label) - * } - */ - public static MethodHandle wgpuRenderPipelineSetLabel$handle() { - return wgpuRenderPipelineSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPipelineSetLabel(WGPURenderPipeline renderPipeline, const char *label) - * } - */ - public static MemorySegment wgpuRenderPipelineSetLabel$address() { - return wgpuRenderPipelineSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPipelineSetLabel(WGPURenderPipeline renderPipeline, const char *label) - * } - */ - public static void wgpuRenderPipelineSetLabel(MemorySegment renderPipeline, MemorySegment label) { - var mh$ = wgpuRenderPipelineSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPipelineSetLabel", renderPipeline, label); - } - mh$.invokeExact(renderPipeline, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPipelineReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPipelineReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPipelineReference(WGPURenderPipeline renderPipeline) - * } - */ - public static FunctionDescriptor wgpuRenderPipelineReference$descriptor() { - return wgpuRenderPipelineReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPipelineReference(WGPURenderPipeline renderPipeline) - * } - */ - public static MethodHandle wgpuRenderPipelineReference$handle() { - return wgpuRenderPipelineReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPipelineReference(WGPURenderPipeline renderPipeline) - * } - */ - public static MemorySegment wgpuRenderPipelineReference$address() { - return wgpuRenderPipelineReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPipelineReference(WGPURenderPipeline renderPipeline) - * } - */ - public static void wgpuRenderPipelineReference(MemorySegment renderPipeline) { - var mh$ = wgpuRenderPipelineReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPipelineReference", renderPipeline); - } - mh$.invokeExact(renderPipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPipelineRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPipelineRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPipelineRelease(WGPURenderPipeline renderPipeline) - * } - */ - public static FunctionDescriptor wgpuRenderPipelineRelease$descriptor() { - return wgpuRenderPipelineRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPipelineRelease(WGPURenderPipeline renderPipeline) - * } - */ - public static MethodHandle wgpuRenderPipelineRelease$handle() { - return wgpuRenderPipelineRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPipelineRelease(WGPURenderPipeline renderPipeline) - * } - */ - public static MemorySegment wgpuRenderPipelineRelease$address() { - return wgpuRenderPipelineRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPipelineRelease(WGPURenderPipeline renderPipeline) - * } - */ - public static void wgpuRenderPipelineRelease(MemorySegment renderPipeline) { - var mh$ = wgpuRenderPipelineRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPipelineRelease", renderPipeline); - } - mh$.invokeExact(renderPipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSamplerSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSamplerSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSamplerSetLabel(WGPUSampler sampler, const char *label) - * } - */ - public static FunctionDescriptor wgpuSamplerSetLabel$descriptor() { - return wgpuSamplerSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSamplerSetLabel(WGPUSampler sampler, const char *label) - * } - */ - public static MethodHandle wgpuSamplerSetLabel$handle() { - return wgpuSamplerSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSamplerSetLabel(WGPUSampler sampler, const char *label) - * } - */ - public static MemorySegment wgpuSamplerSetLabel$address() { - return wgpuSamplerSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSamplerSetLabel(WGPUSampler sampler, const char *label) - * } - */ - public static void wgpuSamplerSetLabel(MemorySegment sampler, MemorySegment label) { - var mh$ = wgpuSamplerSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSamplerSetLabel", sampler, label); - } - mh$.invokeExact(sampler, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSamplerReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSamplerReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSamplerReference(WGPUSampler sampler) - * } - */ - public static FunctionDescriptor wgpuSamplerReference$descriptor() { - return wgpuSamplerReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSamplerReference(WGPUSampler sampler) - * } - */ - public static MethodHandle wgpuSamplerReference$handle() { - return wgpuSamplerReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSamplerReference(WGPUSampler sampler) - * } - */ - public static MemorySegment wgpuSamplerReference$address() { - return wgpuSamplerReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSamplerReference(WGPUSampler sampler) - * } - */ - public static void wgpuSamplerReference(MemorySegment sampler) { - var mh$ = wgpuSamplerReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSamplerReference", sampler); - } - mh$.invokeExact(sampler); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSamplerRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSamplerRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSamplerRelease(WGPUSampler sampler) - * } - */ - public static FunctionDescriptor wgpuSamplerRelease$descriptor() { - return wgpuSamplerRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSamplerRelease(WGPUSampler sampler) - * } - */ - public static MethodHandle wgpuSamplerRelease$handle() { - return wgpuSamplerRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSamplerRelease(WGPUSampler sampler) - * } - */ - public static MemorySegment wgpuSamplerRelease$address() { - return wgpuSamplerRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSamplerRelease(WGPUSampler sampler) - * } - */ - public static void wgpuSamplerRelease(MemorySegment sampler) { - var mh$ = wgpuSamplerRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSamplerRelease", sampler); - } - mh$.invokeExact(sampler); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuShaderModuleGetCompilationInfo { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuShaderModuleGetCompilationInfo"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuShaderModuleGetCompilationInfo(WGPUShaderModule shaderModule, WGPUCompilationInfoCallback callback, void *userdata) - * } - */ - public static FunctionDescriptor wgpuShaderModuleGetCompilationInfo$descriptor() { - return wgpuShaderModuleGetCompilationInfo.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuShaderModuleGetCompilationInfo(WGPUShaderModule shaderModule, WGPUCompilationInfoCallback callback, void *userdata) - * } - */ - public static MethodHandle wgpuShaderModuleGetCompilationInfo$handle() { - return wgpuShaderModuleGetCompilationInfo.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuShaderModuleGetCompilationInfo(WGPUShaderModule shaderModule, WGPUCompilationInfoCallback callback, void *userdata) - * } - */ - public static MemorySegment wgpuShaderModuleGetCompilationInfo$address() { - return wgpuShaderModuleGetCompilationInfo.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuShaderModuleGetCompilationInfo(WGPUShaderModule shaderModule, WGPUCompilationInfoCallback callback, void *userdata) - * } - */ - public static void wgpuShaderModuleGetCompilationInfo(MemorySegment shaderModule, MemorySegment callback, MemorySegment userdata) { - var mh$ = wgpuShaderModuleGetCompilationInfo.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuShaderModuleGetCompilationInfo", shaderModule, callback, userdata); - } - mh$.invokeExact(shaderModule, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuShaderModuleSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuShaderModuleSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuShaderModuleSetLabel(WGPUShaderModule shaderModule, const char *label) - * } - */ - public static FunctionDescriptor wgpuShaderModuleSetLabel$descriptor() { - return wgpuShaderModuleSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuShaderModuleSetLabel(WGPUShaderModule shaderModule, const char *label) - * } - */ - public static MethodHandle wgpuShaderModuleSetLabel$handle() { - return wgpuShaderModuleSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuShaderModuleSetLabel(WGPUShaderModule shaderModule, const char *label) - * } - */ - public static MemorySegment wgpuShaderModuleSetLabel$address() { - return wgpuShaderModuleSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuShaderModuleSetLabel(WGPUShaderModule shaderModule, const char *label) - * } - */ - public static void wgpuShaderModuleSetLabel(MemorySegment shaderModule, MemorySegment label) { - var mh$ = wgpuShaderModuleSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuShaderModuleSetLabel", shaderModule, label); - } - mh$.invokeExact(shaderModule, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuShaderModuleReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuShaderModuleReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuShaderModuleReference(WGPUShaderModule shaderModule) - * } - */ - public static FunctionDescriptor wgpuShaderModuleReference$descriptor() { - return wgpuShaderModuleReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuShaderModuleReference(WGPUShaderModule shaderModule) - * } - */ - public static MethodHandle wgpuShaderModuleReference$handle() { - return wgpuShaderModuleReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuShaderModuleReference(WGPUShaderModule shaderModule) - * } - */ - public static MemorySegment wgpuShaderModuleReference$address() { - return wgpuShaderModuleReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuShaderModuleReference(WGPUShaderModule shaderModule) - * } - */ - public static void wgpuShaderModuleReference(MemorySegment shaderModule) { - var mh$ = wgpuShaderModuleReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuShaderModuleReference", shaderModule); - } - mh$.invokeExact(shaderModule); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuShaderModuleRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuShaderModuleRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuShaderModuleRelease(WGPUShaderModule shaderModule) - * } - */ - public static FunctionDescriptor wgpuShaderModuleRelease$descriptor() { - return wgpuShaderModuleRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuShaderModuleRelease(WGPUShaderModule shaderModule) - * } - */ - public static MethodHandle wgpuShaderModuleRelease$handle() { - return wgpuShaderModuleRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuShaderModuleRelease(WGPUShaderModule shaderModule) - * } - */ - public static MemorySegment wgpuShaderModuleRelease$address() { - return wgpuShaderModuleRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuShaderModuleRelease(WGPUShaderModule shaderModule) - * } - */ - public static void wgpuShaderModuleRelease(MemorySegment shaderModule) { - var mh$ = wgpuShaderModuleRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuShaderModuleRelease", shaderModule); - } - mh$.invokeExact(shaderModule); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSurfaceConfigure { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSurfaceConfigure"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSurfaceConfigure(WGPUSurface surface, const WGPUSurfaceConfiguration *config) - * } - */ - public static FunctionDescriptor wgpuSurfaceConfigure$descriptor() { - return wgpuSurfaceConfigure.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSurfaceConfigure(WGPUSurface surface, const WGPUSurfaceConfiguration *config) - * } - */ - public static MethodHandle wgpuSurfaceConfigure$handle() { - return wgpuSurfaceConfigure.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSurfaceConfigure(WGPUSurface surface, const WGPUSurfaceConfiguration *config) - * } - */ - public static MemorySegment wgpuSurfaceConfigure$address() { - return wgpuSurfaceConfigure.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSurfaceConfigure(WGPUSurface surface, const WGPUSurfaceConfiguration *config) - * } - */ - public static void wgpuSurfaceConfigure(MemorySegment surface, MemorySegment config) { - var mh$ = wgpuSurfaceConfigure.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSurfaceConfigure", surface, config); - } - mh$.invokeExact(surface, config); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSurfaceGetCapabilities { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSurfaceGetCapabilities"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSurfaceGetCapabilities(WGPUSurface surface, WGPUAdapter adapter, WGPUSurfaceCapabilities *capabilities) - * } - */ - public static FunctionDescriptor wgpuSurfaceGetCapabilities$descriptor() { - return wgpuSurfaceGetCapabilities.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSurfaceGetCapabilities(WGPUSurface surface, WGPUAdapter adapter, WGPUSurfaceCapabilities *capabilities) - * } - */ - public static MethodHandle wgpuSurfaceGetCapabilities$handle() { - return wgpuSurfaceGetCapabilities.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSurfaceGetCapabilities(WGPUSurface surface, WGPUAdapter adapter, WGPUSurfaceCapabilities *capabilities) - * } - */ - public static MemorySegment wgpuSurfaceGetCapabilities$address() { - return wgpuSurfaceGetCapabilities.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSurfaceGetCapabilities(WGPUSurface surface, WGPUAdapter adapter, WGPUSurfaceCapabilities *capabilities) - * } - */ - public static void wgpuSurfaceGetCapabilities(MemorySegment surface, MemorySegment adapter, MemorySegment capabilities) { - var mh$ = wgpuSurfaceGetCapabilities.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSurfaceGetCapabilities", surface, adapter, capabilities); - } - mh$.invokeExact(surface, adapter, capabilities); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSurfaceGetCurrentTexture { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSurfaceGetCurrentTexture"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSurfaceGetCurrentTexture(WGPUSurface surface, WGPUSurfaceTexture *surfaceTexture) - * } - */ - public static FunctionDescriptor wgpuSurfaceGetCurrentTexture$descriptor() { - return wgpuSurfaceGetCurrentTexture.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSurfaceGetCurrentTexture(WGPUSurface surface, WGPUSurfaceTexture *surfaceTexture) - * } - */ - public static MethodHandle wgpuSurfaceGetCurrentTexture$handle() { - return wgpuSurfaceGetCurrentTexture.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSurfaceGetCurrentTexture(WGPUSurface surface, WGPUSurfaceTexture *surfaceTexture) - * } - */ - public static MemorySegment wgpuSurfaceGetCurrentTexture$address() { - return wgpuSurfaceGetCurrentTexture.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSurfaceGetCurrentTexture(WGPUSurface surface, WGPUSurfaceTexture *surfaceTexture) - * } - */ - public static void wgpuSurfaceGetCurrentTexture(MemorySegment surface, MemorySegment surfaceTexture) { - var mh$ = wgpuSurfaceGetCurrentTexture.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSurfaceGetCurrentTexture", surface, surfaceTexture); - } - mh$.invokeExact(surface, surfaceTexture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSurfaceGetPreferredFormat { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSurfaceGetPreferredFormat"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUTextureFormat wgpuSurfaceGetPreferredFormat(WGPUSurface surface, WGPUAdapter adapter) - * } - */ - public static FunctionDescriptor wgpuSurfaceGetPreferredFormat$descriptor() { - return wgpuSurfaceGetPreferredFormat.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUTextureFormat wgpuSurfaceGetPreferredFormat(WGPUSurface surface, WGPUAdapter adapter) - * } - */ - public static MethodHandle wgpuSurfaceGetPreferredFormat$handle() { - return wgpuSurfaceGetPreferredFormat.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUTextureFormat wgpuSurfaceGetPreferredFormat(WGPUSurface surface, WGPUAdapter adapter) - * } - */ - public static MemorySegment wgpuSurfaceGetPreferredFormat$address() { - return wgpuSurfaceGetPreferredFormat.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUTextureFormat wgpuSurfaceGetPreferredFormat(WGPUSurface surface, WGPUAdapter adapter) - * } - */ - public static int wgpuSurfaceGetPreferredFormat(MemorySegment surface, MemorySegment adapter) { - var mh$ = wgpuSurfaceGetPreferredFormat.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSurfaceGetPreferredFormat", surface, adapter); - } - return (int)mh$.invokeExact(surface, adapter); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSurfacePresent { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSurfacePresent"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSurfacePresent(WGPUSurface surface) - * } - */ - public static FunctionDescriptor wgpuSurfacePresent$descriptor() { - return wgpuSurfacePresent.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSurfacePresent(WGPUSurface surface) - * } - */ - public static MethodHandle wgpuSurfacePresent$handle() { - return wgpuSurfacePresent.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSurfacePresent(WGPUSurface surface) - * } - */ - public static MemorySegment wgpuSurfacePresent$address() { - return wgpuSurfacePresent.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSurfacePresent(WGPUSurface surface) - * } - */ - public static void wgpuSurfacePresent(MemorySegment surface) { - var mh$ = wgpuSurfacePresent.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSurfacePresent", surface); - } - mh$.invokeExact(surface); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSurfaceUnconfigure { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSurfaceUnconfigure"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSurfaceUnconfigure(WGPUSurface surface) - * } - */ - public static FunctionDescriptor wgpuSurfaceUnconfigure$descriptor() { - return wgpuSurfaceUnconfigure.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSurfaceUnconfigure(WGPUSurface surface) - * } - */ - public static MethodHandle wgpuSurfaceUnconfigure$handle() { - return wgpuSurfaceUnconfigure.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSurfaceUnconfigure(WGPUSurface surface) - * } - */ - public static MemorySegment wgpuSurfaceUnconfigure$address() { - return wgpuSurfaceUnconfigure.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSurfaceUnconfigure(WGPUSurface surface) - * } - */ - public static void wgpuSurfaceUnconfigure(MemorySegment surface) { - var mh$ = wgpuSurfaceUnconfigure.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSurfaceUnconfigure", surface); - } - mh$.invokeExact(surface); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSurfaceReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSurfaceReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSurfaceReference(WGPUSurface surface) - * } - */ - public static FunctionDescriptor wgpuSurfaceReference$descriptor() { - return wgpuSurfaceReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSurfaceReference(WGPUSurface surface) - * } - */ - public static MethodHandle wgpuSurfaceReference$handle() { - return wgpuSurfaceReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSurfaceReference(WGPUSurface surface) - * } - */ - public static MemorySegment wgpuSurfaceReference$address() { - return wgpuSurfaceReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSurfaceReference(WGPUSurface surface) - * } - */ - public static void wgpuSurfaceReference(MemorySegment surface) { - var mh$ = wgpuSurfaceReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSurfaceReference", surface); - } - mh$.invokeExact(surface); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSurfaceRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSurfaceRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSurfaceRelease(WGPUSurface surface) - * } - */ - public static FunctionDescriptor wgpuSurfaceRelease$descriptor() { - return wgpuSurfaceRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSurfaceRelease(WGPUSurface surface) - * } - */ - public static MethodHandle wgpuSurfaceRelease$handle() { - return wgpuSurfaceRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSurfaceRelease(WGPUSurface surface) - * } - */ - public static MemorySegment wgpuSurfaceRelease$address() { - return wgpuSurfaceRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSurfaceRelease(WGPUSurface surface) - * } - */ - public static void wgpuSurfaceRelease(MemorySegment surface) { - var mh$ = wgpuSurfaceRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSurfaceRelease", surface); - } - mh$.invokeExact(surface); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSurfaceCapabilitiesFreeMembers { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPUSurfaceCapabilities.layout() - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSurfaceCapabilitiesFreeMembers"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSurfaceCapabilitiesFreeMembers(WGPUSurfaceCapabilities capabilities) - * } - */ - public static FunctionDescriptor wgpuSurfaceCapabilitiesFreeMembers$descriptor() { - return wgpuSurfaceCapabilitiesFreeMembers.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSurfaceCapabilitiesFreeMembers(WGPUSurfaceCapabilities capabilities) - * } - */ - public static MethodHandle wgpuSurfaceCapabilitiesFreeMembers$handle() { - return wgpuSurfaceCapabilitiesFreeMembers.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSurfaceCapabilitiesFreeMembers(WGPUSurfaceCapabilities capabilities) - * } - */ - public static MemorySegment wgpuSurfaceCapabilitiesFreeMembers$address() { - return wgpuSurfaceCapabilitiesFreeMembers.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSurfaceCapabilitiesFreeMembers(WGPUSurfaceCapabilities capabilities) - * } - */ - public static void wgpuSurfaceCapabilitiesFreeMembers(MemorySegment capabilities) { - var mh$ = wgpuSurfaceCapabilitiesFreeMembers.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSurfaceCapabilitiesFreeMembers", capabilities); - } - mh$.invokeExact(capabilities); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureCreateView { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureCreateView"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUTextureView wgpuTextureCreateView(WGPUTexture texture, const WGPUTextureViewDescriptor *descriptor) - * } - */ - public static FunctionDescriptor wgpuTextureCreateView$descriptor() { - return wgpuTextureCreateView.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUTextureView wgpuTextureCreateView(WGPUTexture texture, const WGPUTextureViewDescriptor *descriptor) - * } - */ - public static MethodHandle wgpuTextureCreateView$handle() { - return wgpuTextureCreateView.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUTextureView wgpuTextureCreateView(WGPUTexture texture, const WGPUTextureViewDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuTextureCreateView$address() { - return wgpuTextureCreateView.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUTextureView wgpuTextureCreateView(WGPUTexture texture, const WGPUTextureViewDescriptor *descriptor) - * } - */ - public static MemorySegment wgpuTextureCreateView(MemorySegment texture, MemorySegment descriptor) { - var mh$ = wgpuTextureCreateView.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureCreateView", texture, descriptor); - } - return (MemorySegment)mh$.invokeExact(texture, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureDestroy { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureDestroy"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuTextureDestroy(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureDestroy$descriptor() { - return wgpuTextureDestroy.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuTextureDestroy(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureDestroy$handle() { - return wgpuTextureDestroy.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuTextureDestroy(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureDestroy$address() { - return wgpuTextureDestroy.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuTextureDestroy(WGPUTexture texture) - * } - */ - public static void wgpuTextureDestroy(MemorySegment texture) { - var mh$ = wgpuTextureDestroy.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureDestroy", texture); - } - mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureGetDepthOrArrayLayers { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureGetDepthOrArrayLayers"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetDepthOrArrayLayers(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureGetDepthOrArrayLayers$descriptor() { - return wgpuTextureGetDepthOrArrayLayers.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetDepthOrArrayLayers(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureGetDepthOrArrayLayers$handle() { - return wgpuTextureGetDepthOrArrayLayers.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetDepthOrArrayLayers(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureGetDepthOrArrayLayers$address() { - return wgpuTextureGetDepthOrArrayLayers.ADDR; - } - - /** - * {@snippet lang=c : - * uint32_t wgpuTextureGetDepthOrArrayLayers(WGPUTexture texture) - * } - */ - public static int wgpuTextureGetDepthOrArrayLayers(MemorySegment texture) { - var mh$ = wgpuTextureGetDepthOrArrayLayers.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureGetDepthOrArrayLayers", texture); - } - return (int)mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureGetDimension { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureGetDimension"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUTextureDimension wgpuTextureGetDimension(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureGetDimension$descriptor() { - return wgpuTextureGetDimension.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUTextureDimension wgpuTextureGetDimension(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureGetDimension$handle() { - return wgpuTextureGetDimension.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUTextureDimension wgpuTextureGetDimension(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureGetDimension$address() { - return wgpuTextureGetDimension.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUTextureDimension wgpuTextureGetDimension(WGPUTexture texture) - * } - */ - public static int wgpuTextureGetDimension(MemorySegment texture) { - var mh$ = wgpuTextureGetDimension.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureGetDimension", texture); - } - return (int)mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureGetFormat { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureGetFormat"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUTextureFormat wgpuTextureGetFormat(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureGetFormat$descriptor() { - return wgpuTextureGetFormat.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUTextureFormat wgpuTextureGetFormat(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureGetFormat$handle() { - return wgpuTextureGetFormat.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUTextureFormat wgpuTextureGetFormat(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureGetFormat$address() { - return wgpuTextureGetFormat.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUTextureFormat wgpuTextureGetFormat(WGPUTexture texture) - * } - */ - public static int wgpuTextureGetFormat(MemorySegment texture) { - var mh$ = wgpuTextureGetFormat.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureGetFormat", texture); - } - return (int)mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureGetHeight { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureGetHeight"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetHeight(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureGetHeight$descriptor() { - return wgpuTextureGetHeight.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetHeight(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureGetHeight$handle() { - return wgpuTextureGetHeight.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetHeight(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureGetHeight$address() { - return wgpuTextureGetHeight.ADDR; - } - - /** - * {@snippet lang=c : - * uint32_t wgpuTextureGetHeight(WGPUTexture texture) - * } - */ - public static int wgpuTextureGetHeight(MemorySegment texture) { - var mh$ = wgpuTextureGetHeight.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureGetHeight", texture); - } - return (int)mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureGetMipLevelCount { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureGetMipLevelCount"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetMipLevelCount(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureGetMipLevelCount$descriptor() { - return wgpuTextureGetMipLevelCount.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetMipLevelCount(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureGetMipLevelCount$handle() { - return wgpuTextureGetMipLevelCount.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetMipLevelCount(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureGetMipLevelCount$address() { - return wgpuTextureGetMipLevelCount.ADDR; - } - - /** - * {@snippet lang=c : - * uint32_t wgpuTextureGetMipLevelCount(WGPUTexture texture) - * } - */ - public static int wgpuTextureGetMipLevelCount(MemorySegment texture) { - var mh$ = wgpuTextureGetMipLevelCount.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureGetMipLevelCount", texture); - } - return (int)mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureGetSampleCount { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureGetSampleCount"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetSampleCount(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureGetSampleCount$descriptor() { - return wgpuTextureGetSampleCount.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetSampleCount(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureGetSampleCount$handle() { - return wgpuTextureGetSampleCount.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetSampleCount(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureGetSampleCount$address() { - return wgpuTextureGetSampleCount.ADDR; - } - - /** - * {@snippet lang=c : - * uint32_t wgpuTextureGetSampleCount(WGPUTexture texture) - * } - */ - public static int wgpuTextureGetSampleCount(MemorySegment texture) { - var mh$ = wgpuTextureGetSampleCount.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureGetSampleCount", texture); - } - return (int)mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureGetUsage { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureGetUsage"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUTextureUsageFlags wgpuTextureGetUsage(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureGetUsage$descriptor() { - return wgpuTextureGetUsage.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUTextureUsageFlags wgpuTextureGetUsage(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureGetUsage$handle() { - return wgpuTextureGetUsage.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUTextureUsageFlags wgpuTextureGetUsage(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureGetUsage$address() { - return wgpuTextureGetUsage.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUTextureUsageFlags wgpuTextureGetUsage(WGPUTexture texture) - * } - */ - public static int wgpuTextureGetUsage(MemorySegment texture) { - var mh$ = wgpuTextureGetUsage.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureGetUsage", texture); - } - return (int)mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureGetWidth { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureGetWidth"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetWidth(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureGetWidth$descriptor() { - return wgpuTextureGetWidth.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetWidth(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureGetWidth$handle() { - return wgpuTextureGetWidth.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * uint32_t wgpuTextureGetWidth(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureGetWidth$address() { - return wgpuTextureGetWidth.ADDR; - } - - /** - * {@snippet lang=c : - * uint32_t wgpuTextureGetWidth(WGPUTexture texture) - * } - */ - public static int wgpuTextureGetWidth(MemorySegment texture) { - var mh$ = wgpuTextureGetWidth.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureGetWidth", texture); - } - return (int)mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuTextureSetLabel(WGPUTexture texture, const char *label) - * } - */ - public static FunctionDescriptor wgpuTextureSetLabel$descriptor() { - return wgpuTextureSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuTextureSetLabel(WGPUTexture texture, const char *label) - * } - */ - public static MethodHandle wgpuTextureSetLabel$handle() { - return wgpuTextureSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuTextureSetLabel(WGPUTexture texture, const char *label) - * } - */ - public static MemorySegment wgpuTextureSetLabel$address() { - return wgpuTextureSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuTextureSetLabel(WGPUTexture texture, const char *label) - * } - */ - public static void wgpuTextureSetLabel(MemorySegment texture, MemorySegment label) { - var mh$ = wgpuTextureSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureSetLabel", texture, label); - } - mh$.invokeExact(texture, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuTextureReference(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureReference$descriptor() { - return wgpuTextureReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuTextureReference(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureReference$handle() { - return wgpuTextureReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuTextureReference(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureReference$address() { - return wgpuTextureReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuTextureReference(WGPUTexture texture) - * } - */ - public static void wgpuTextureReference(MemorySegment texture) { - var mh$ = wgpuTextureReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureReference", texture); - } - mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuTextureRelease(WGPUTexture texture) - * } - */ - public static FunctionDescriptor wgpuTextureRelease$descriptor() { - return wgpuTextureRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuTextureRelease(WGPUTexture texture) - * } - */ - public static MethodHandle wgpuTextureRelease$handle() { - return wgpuTextureRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuTextureRelease(WGPUTexture texture) - * } - */ - public static MemorySegment wgpuTextureRelease$address() { - return wgpuTextureRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuTextureRelease(WGPUTexture texture) - * } - */ - public static void wgpuTextureRelease(MemorySegment texture) { - var mh$ = wgpuTextureRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureRelease", texture); - } - mh$.invokeExact(texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureViewSetLabel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureViewSetLabel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuTextureViewSetLabel(WGPUTextureView textureView, const char *label) - * } - */ - public static FunctionDescriptor wgpuTextureViewSetLabel$descriptor() { - return wgpuTextureViewSetLabel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuTextureViewSetLabel(WGPUTextureView textureView, const char *label) - * } - */ - public static MethodHandle wgpuTextureViewSetLabel$handle() { - return wgpuTextureViewSetLabel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuTextureViewSetLabel(WGPUTextureView textureView, const char *label) - * } - */ - public static MemorySegment wgpuTextureViewSetLabel$address() { - return wgpuTextureViewSetLabel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuTextureViewSetLabel(WGPUTextureView textureView, const char *label) - * } - */ - public static void wgpuTextureViewSetLabel(MemorySegment textureView, MemorySegment label) { - var mh$ = wgpuTextureViewSetLabel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureViewSetLabel", textureView, label); - } - mh$.invokeExact(textureView, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureViewReference { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureViewReference"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuTextureViewReference(WGPUTextureView textureView) - * } - */ - public static FunctionDescriptor wgpuTextureViewReference$descriptor() { - return wgpuTextureViewReference.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuTextureViewReference(WGPUTextureView textureView) - * } - */ - public static MethodHandle wgpuTextureViewReference$handle() { - return wgpuTextureViewReference.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuTextureViewReference(WGPUTextureView textureView) - * } - */ - public static MemorySegment wgpuTextureViewReference$address() { - return wgpuTextureViewReference.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuTextureViewReference(WGPUTextureView textureView) - * } - */ - public static void wgpuTextureViewReference(MemorySegment textureView) { - var mh$ = wgpuTextureViewReference.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureViewReference", textureView); - } - mh$.invokeExact(textureView); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuTextureViewRelease { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuTextureViewRelease"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuTextureViewRelease(WGPUTextureView textureView) - * } - */ - public static FunctionDescriptor wgpuTextureViewRelease$descriptor() { - return wgpuTextureViewRelease.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuTextureViewRelease(WGPUTextureView textureView) - * } - */ - public static MethodHandle wgpuTextureViewRelease$handle() { - return wgpuTextureViewRelease.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuTextureViewRelease(WGPUTextureView textureView) - * } - */ - public static MemorySegment wgpuTextureViewRelease$address() { - return wgpuTextureViewRelease.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuTextureViewRelease(WGPUTextureView textureView) - * } - */ - public static void wgpuTextureViewRelease(MemorySegment textureView) { - var mh$ = wgpuTextureViewRelease.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuTextureViewRelease", textureView); - } - mh$.invokeExact(textureView); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - private static final int WGPUSType_DeviceExtras = (int)196609L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUSType_DeviceExtras = 196609 - * } - */ - public static int WGPUSType_DeviceExtras() { - return WGPUSType_DeviceExtras; - } - private static final int WGPUSType_RequiredLimitsExtras = (int)196610L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUSType_RequiredLimitsExtras = 196610 - * } - */ - public static int WGPUSType_RequiredLimitsExtras() { - return WGPUSType_RequiredLimitsExtras; - } - private static final int WGPUSType_PipelineLayoutExtras = (int)196611L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUSType_PipelineLayoutExtras = 196611 - * } - */ - public static int WGPUSType_PipelineLayoutExtras() { - return WGPUSType_PipelineLayoutExtras; - } - private static final int WGPUSType_ShaderModuleGLSLDescriptor = (int)196612L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUSType_ShaderModuleGLSLDescriptor = 196612 - * } - */ - public static int WGPUSType_ShaderModuleGLSLDescriptor() { - return WGPUSType_ShaderModuleGLSLDescriptor; - } - private static final int WGPUSType_SupportedLimitsExtras = (int)196613L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUSType_SupportedLimitsExtras = 196613 - * } - */ - public static int WGPUSType_SupportedLimitsExtras() { - return WGPUSType_SupportedLimitsExtras; - } - private static final int WGPUSType_InstanceExtras = (int)196614L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUSType_InstanceExtras = 196614 - * } - */ - public static int WGPUSType_InstanceExtras() { - return WGPUSType_InstanceExtras; - } - private static final int WGPUSType_BindGroupEntryExtras = (int)196615L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUSType_BindGroupEntryExtras = 196615 - * } - */ - public static int WGPUSType_BindGroupEntryExtras() { - return WGPUSType_BindGroupEntryExtras; - } - private static final int WGPUSType_BindGroupLayoutEntryExtras = (int)196616L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUSType_BindGroupLayoutEntryExtras = 196616 - * } - */ - public static int WGPUSType_BindGroupLayoutEntryExtras() { - return WGPUSType_BindGroupLayoutEntryExtras; - } - private static final int WGPUSType_QuerySetDescriptorExtras = (int)196617L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUSType_QuerySetDescriptorExtras = 196617 - * } - */ - public static int WGPUSType_QuerySetDescriptorExtras() { - return WGPUSType_QuerySetDescriptorExtras; - } - private static final int WGPUSType_SurfaceConfigurationExtras = (int)196618L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUSType_SurfaceConfigurationExtras = 196618 - * } - */ - public static int WGPUSType_SurfaceConfigurationExtras() { - return WGPUSType_SurfaceConfigurationExtras; - } - private static final int WGPUNativeSType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUNativeSType.WGPUNativeSType_Force32 = 2147483647 - * } - */ - public static int WGPUNativeSType_Force32() { - return WGPUNativeSType_Force32; - } - private static final int WGPUNativeFeature_PushConstants = (int)196609L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_PushConstants = 196609 - * } - */ - public static int WGPUNativeFeature_PushConstants() { - return WGPUNativeFeature_PushConstants; - } - private static final int WGPUNativeFeature_TextureAdapterSpecificFormatFeatures = (int)196610L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_TextureAdapterSpecificFormatFeatures = 196610 - * } - */ - public static int WGPUNativeFeature_TextureAdapterSpecificFormatFeatures() { - return WGPUNativeFeature_TextureAdapterSpecificFormatFeatures; - } - private static final int WGPUNativeFeature_MultiDrawIndirect = (int)196611L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_MultiDrawIndirect = 196611 - * } - */ - public static int WGPUNativeFeature_MultiDrawIndirect() { - return WGPUNativeFeature_MultiDrawIndirect; - } - private static final int WGPUNativeFeature_MultiDrawIndirectCount = (int)196612L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_MultiDrawIndirectCount = 196612 - * } - */ - public static int WGPUNativeFeature_MultiDrawIndirectCount() { - return WGPUNativeFeature_MultiDrawIndirectCount; - } - private static final int WGPUNativeFeature_VertexWritableStorage = (int)196613L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_VertexWritableStorage = 196613 - * } - */ - public static int WGPUNativeFeature_VertexWritableStorage() { - return WGPUNativeFeature_VertexWritableStorage; - } - private static final int WGPUNativeFeature_TextureBindingArray = (int)196614L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_TextureBindingArray = 196614 - * } - */ - public static int WGPUNativeFeature_TextureBindingArray() { - return WGPUNativeFeature_TextureBindingArray; - } - private static final int WGPUNativeFeature_SampledTextureAndStorageBufferArrayNonUniformIndexing = (int)196615L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_SampledTextureAndStorageBufferArrayNonUniformIndexing = 196615 - * } - */ - public static int WGPUNativeFeature_SampledTextureAndStorageBufferArrayNonUniformIndexing() { - return WGPUNativeFeature_SampledTextureAndStorageBufferArrayNonUniformIndexing; - } - private static final int WGPUNativeFeature_PipelineStatisticsQuery = (int)196616L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_PipelineStatisticsQuery = 196616 - * } - */ - public static int WGPUNativeFeature_PipelineStatisticsQuery() { - return WGPUNativeFeature_PipelineStatisticsQuery; - } - private static final int WGPUNativeFeature_StorageResourceBindingArray = (int)196617L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_StorageResourceBindingArray = 196617 - * } - */ - public static int WGPUNativeFeature_StorageResourceBindingArray() { - return WGPUNativeFeature_StorageResourceBindingArray; - } - private static final int WGPUNativeFeature_PartiallyBoundBindingArray = (int)196618L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_PartiallyBoundBindingArray = 196618 - * } - */ - public static int WGPUNativeFeature_PartiallyBoundBindingArray() { - return WGPUNativeFeature_PartiallyBoundBindingArray; - } - private static final int WGPUNativeFeature_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUNativeFeature.WGPUNativeFeature_Force32 = 2147483647 - * } - */ - public static int WGPUNativeFeature_Force32() { - return WGPUNativeFeature_Force32; - } - private static final int WGPULogLevel_Off = (int)0L; - /** - * {@snippet lang=c : - * enum WGPULogLevel.WGPULogLevel_Off = 0 - * } - */ - public static int WGPULogLevel_Off() { - return WGPULogLevel_Off; - } - private static final int WGPULogLevel_Error = (int)1L; - /** - * {@snippet lang=c : - * enum WGPULogLevel.WGPULogLevel_Error = 1 - * } - */ - public static int WGPULogLevel_Error() { - return WGPULogLevel_Error; - } - private static final int WGPULogLevel_Warn = (int)2L; - /** - * {@snippet lang=c : - * enum WGPULogLevel.WGPULogLevel_Warn = 2 - * } - */ - public static int WGPULogLevel_Warn() { - return WGPULogLevel_Warn; - } - private static final int WGPULogLevel_Info = (int)3L; - /** - * {@snippet lang=c : - * enum WGPULogLevel.WGPULogLevel_Info = 3 - * } - */ - public static int WGPULogLevel_Info() { - return WGPULogLevel_Info; - } - private static final int WGPULogLevel_Debug = (int)4L; - /** - * {@snippet lang=c : - * enum WGPULogLevel.WGPULogLevel_Debug = 4 - * } - */ - public static int WGPULogLevel_Debug() { - return WGPULogLevel_Debug; - } - private static final int WGPULogLevel_Trace = (int)5L; - /** - * {@snippet lang=c : - * enum WGPULogLevel.WGPULogLevel_Trace = 5 - * } - */ - public static int WGPULogLevel_Trace() { - return WGPULogLevel_Trace; - } - private static final int WGPULogLevel_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPULogLevel.WGPULogLevel_Force32 = 2147483647 - * } - */ - public static int WGPULogLevel_Force32() { - return WGPULogLevel_Force32; - } - private static final int WGPUInstanceBackend_All = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUInstanceBackend.WGPUInstanceBackend_All = 0 - * } - */ - public static int WGPUInstanceBackend_All() { - return WGPUInstanceBackend_All; - } - private static final int WGPUInstanceBackend_Vulkan = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUInstanceBackend.WGPUInstanceBackend_Vulkan = 1 - * } - */ - public static int WGPUInstanceBackend_Vulkan() { - return WGPUInstanceBackend_Vulkan; - } - private static final int WGPUInstanceBackend_GL = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUInstanceBackend.WGPUInstanceBackend_GL = 2 - * } - */ - public static int WGPUInstanceBackend_GL() { - return WGPUInstanceBackend_GL; - } - private static final int WGPUInstanceBackend_Metal = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUInstanceBackend.WGPUInstanceBackend_Metal = 4 - * } - */ - public static int WGPUInstanceBackend_Metal() { - return WGPUInstanceBackend_Metal; - } - private static final int WGPUInstanceBackend_DX12 = (int)8L; - /** - * {@snippet lang=c : - * enum WGPUInstanceBackend.WGPUInstanceBackend_DX12 = 8 - * } - */ - public static int WGPUInstanceBackend_DX12() { - return WGPUInstanceBackend_DX12; - } - private static final int WGPUInstanceBackend_DX11 = (int)16L; - /** - * {@snippet lang=c : - * enum WGPUInstanceBackend.WGPUInstanceBackend_DX11 = 16 - * } - */ - public static int WGPUInstanceBackend_DX11() { - return WGPUInstanceBackend_DX11; - } - private static final int WGPUInstanceBackend_BrowserWebGPU = (int)32L; - /** - * {@snippet lang=c : - * enum WGPUInstanceBackend.WGPUInstanceBackend_BrowserWebGPU = 32 - * } - */ - public static int WGPUInstanceBackend_BrowserWebGPU() { - return WGPUInstanceBackend_BrowserWebGPU; - } - private static final int WGPUInstanceBackend_Primary = (int)45L; - /** - * {@snippet lang=c : - * enum WGPUInstanceBackend.WGPUInstanceBackend_Primary = 45 - * } - */ - public static int WGPUInstanceBackend_Primary() { - return WGPUInstanceBackend_Primary; - } - private static final int WGPUInstanceBackend_Secondary = (int)18L; - /** - * {@snippet lang=c : - * enum WGPUInstanceBackend.WGPUInstanceBackend_Secondary = 18 - * } - */ - public static int WGPUInstanceBackend_Secondary() { - return WGPUInstanceBackend_Secondary; - } - private static final int WGPUInstanceBackend_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUInstanceBackend.WGPUInstanceBackend_Force32 = 2147483647 - * } - */ - public static int WGPUInstanceBackend_Force32() { - return WGPUInstanceBackend_Force32; - } - /** - * {@snippet lang=c : - * typedef WGPUFlags WGPUInstanceBackendFlags - * } - */ - public static final OfInt WGPUInstanceBackendFlags = WGPU.C_INT; - private static final int WGPUInstanceFlag_Default = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUInstanceFlag.WGPUInstanceFlag_Default = 0 - * } - */ - public static int WGPUInstanceFlag_Default() { - return WGPUInstanceFlag_Default; - } - private static final int WGPUInstanceFlag_Debug = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUInstanceFlag.WGPUInstanceFlag_Debug = 1 - * } - */ - public static int WGPUInstanceFlag_Debug() { - return WGPUInstanceFlag_Debug; - } - private static final int WGPUInstanceFlag_Validation = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUInstanceFlag.WGPUInstanceFlag_Validation = 2 - * } - */ - public static int WGPUInstanceFlag_Validation() { - return WGPUInstanceFlag_Validation; - } - private static final int WGPUInstanceFlag_DiscardHalLabels = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUInstanceFlag.WGPUInstanceFlag_DiscardHalLabels = 4 - * } - */ - public static int WGPUInstanceFlag_DiscardHalLabels() { - return WGPUInstanceFlag_DiscardHalLabels; - } - private static final int WGPUInstanceFlag_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUInstanceFlag.WGPUInstanceFlag_Force32 = 2147483647 - * } - */ - public static int WGPUInstanceFlag_Force32() { - return WGPUInstanceFlag_Force32; - } - /** - * {@snippet lang=c : - * typedef WGPUFlags WGPUInstanceFlags - * } - */ - public static final OfInt WGPUInstanceFlags = WGPU.C_INT; - private static final int WGPUDx12Compiler_Undefined = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUDx12Compiler.WGPUDx12Compiler_Undefined = 0 - * } - */ - public static int WGPUDx12Compiler_Undefined() { - return WGPUDx12Compiler_Undefined; - } - private static final int WGPUDx12Compiler_Fxc = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUDx12Compiler.WGPUDx12Compiler_Fxc = 1 - * } - */ - public static int WGPUDx12Compiler_Fxc() { - return WGPUDx12Compiler_Fxc; - } - private static final int WGPUDx12Compiler_Dxc = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUDx12Compiler.WGPUDx12Compiler_Dxc = 2 - * } - */ - public static int WGPUDx12Compiler_Dxc() { - return WGPUDx12Compiler_Dxc; - } - private static final int WGPUDx12Compiler_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUDx12Compiler.WGPUDx12Compiler_Force32 = 2147483647 - * } - */ - public static int WGPUDx12Compiler_Force32() { - return WGPUDx12Compiler_Force32; - } - private static final int WGPUGles3MinorVersion_Automatic = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUGles3MinorVersion.WGPUGles3MinorVersion_Automatic = 0 - * } - */ - public static int WGPUGles3MinorVersion_Automatic() { - return WGPUGles3MinorVersion_Automatic; - } - private static final int WGPUGles3MinorVersion_Version0 = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUGles3MinorVersion.WGPUGles3MinorVersion_Version0 = 1 - * } - */ - public static int WGPUGles3MinorVersion_Version0() { - return WGPUGles3MinorVersion_Version0; - } - private static final int WGPUGles3MinorVersion_Version1 = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUGles3MinorVersion.WGPUGles3MinorVersion_Version1 = 2 - * } - */ - public static int WGPUGles3MinorVersion_Version1() { - return WGPUGles3MinorVersion_Version1; - } - private static final int WGPUGles3MinorVersion_Version2 = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUGles3MinorVersion.WGPUGles3MinorVersion_Version2 = 3 - * } - */ - public static int WGPUGles3MinorVersion_Version2() { - return WGPUGles3MinorVersion_Version2; - } - private static final int WGPUGles3MinorVersion_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUGles3MinorVersion.WGPUGles3MinorVersion_Force32 = 2147483647 - * } - */ - public static int WGPUGles3MinorVersion_Force32() { - return WGPUGles3MinorVersion_Force32; - } - private static final int WGPUPipelineStatisticName_VertexShaderInvocations = (int)0L; - /** - * {@snippet lang=c : - * enum WGPUPipelineStatisticName.WGPUPipelineStatisticName_VertexShaderInvocations = 0 - * } - */ - public static int WGPUPipelineStatisticName_VertexShaderInvocations() { - return WGPUPipelineStatisticName_VertexShaderInvocations; - } - private static final int WGPUPipelineStatisticName_ClipperInvocations = (int)1L; - /** - * {@snippet lang=c : - * enum WGPUPipelineStatisticName.WGPUPipelineStatisticName_ClipperInvocations = 1 - * } - */ - public static int WGPUPipelineStatisticName_ClipperInvocations() { - return WGPUPipelineStatisticName_ClipperInvocations; - } - private static final int WGPUPipelineStatisticName_ClipperPrimitivesOut = (int)2L; - /** - * {@snippet lang=c : - * enum WGPUPipelineStatisticName.WGPUPipelineStatisticName_ClipperPrimitivesOut = 2 - * } - */ - public static int WGPUPipelineStatisticName_ClipperPrimitivesOut() { - return WGPUPipelineStatisticName_ClipperPrimitivesOut; - } - private static final int WGPUPipelineStatisticName_FragmentShaderInvocations = (int)3L; - /** - * {@snippet lang=c : - * enum WGPUPipelineStatisticName.WGPUPipelineStatisticName_FragmentShaderInvocations = 3 - * } - */ - public static int WGPUPipelineStatisticName_FragmentShaderInvocations() { - return WGPUPipelineStatisticName_FragmentShaderInvocations; - } - private static final int WGPUPipelineStatisticName_ComputeShaderInvocations = (int)4L; - /** - * {@snippet lang=c : - * enum WGPUPipelineStatisticName.WGPUPipelineStatisticName_ComputeShaderInvocations = 4 - * } - */ - public static int WGPUPipelineStatisticName_ComputeShaderInvocations() { - return WGPUPipelineStatisticName_ComputeShaderInvocations; - } - private static final int WGPUPipelineStatisticName_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUPipelineStatisticName.WGPUPipelineStatisticName_Force32 = 2147483647 - * } - */ - public static int WGPUPipelineStatisticName_Force32() { - return WGPUPipelineStatisticName_Force32; - } - private static final int WGPUNativeQueryType_PipelineStatistics = (int)196608L; - /** - * {@snippet lang=c : - * enum WGPUNativeQueryType.WGPUNativeQueryType_PipelineStatistics = 196608 - * } - */ - public static int WGPUNativeQueryType_PipelineStatistics() { - return WGPUNativeQueryType_PipelineStatistics; - } - private static final int WGPUNativeQueryType_Force32 = (int)2147483647L; - /** - * {@snippet lang=c : - * enum WGPUNativeQueryType.WGPUNativeQueryType_Force32 = 2147483647 - * } - */ - public static int WGPUNativeQueryType_Force32() { - return WGPUNativeQueryType_Force32; - } - /** - * {@snippet lang=c : - * typedef uint64_t WGPUSubmissionIndex - * } - */ - public static final OfLong WGPUSubmissionIndex = WGPU.C_LONG_LONG; - - private static class wgpuGenerateReport { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuGenerateReport"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuGenerateReport(WGPUInstance instance, WGPUGlobalReport *report) - * } - */ - public static FunctionDescriptor wgpuGenerateReport$descriptor() { - return wgpuGenerateReport.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuGenerateReport(WGPUInstance instance, WGPUGlobalReport *report) - * } - */ - public static MethodHandle wgpuGenerateReport$handle() { - return wgpuGenerateReport.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuGenerateReport(WGPUInstance instance, WGPUGlobalReport *report) - * } - */ - public static MemorySegment wgpuGenerateReport$address() { - return wgpuGenerateReport.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuGenerateReport(WGPUInstance instance, WGPUGlobalReport *report) - * } - */ - public static void wgpuGenerateReport(MemorySegment instance, MemorySegment report) { - var mh$ = wgpuGenerateReport.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuGenerateReport", instance, report); - } - mh$.invokeExact(instance, report); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuInstanceEnumerateAdapters { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuInstanceEnumerateAdapters"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * size_t wgpuInstanceEnumerateAdapters(WGPUInstance instance, const WGPUInstanceEnumerateAdapterOptions *options, WGPUAdapter *adapters) - * } - */ - public static FunctionDescriptor wgpuInstanceEnumerateAdapters$descriptor() { - return wgpuInstanceEnumerateAdapters.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * size_t wgpuInstanceEnumerateAdapters(WGPUInstance instance, const WGPUInstanceEnumerateAdapterOptions *options, WGPUAdapter *adapters) - * } - */ - public static MethodHandle wgpuInstanceEnumerateAdapters$handle() { - return wgpuInstanceEnumerateAdapters.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * size_t wgpuInstanceEnumerateAdapters(WGPUInstance instance, const WGPUInstanceEnumerateAdapterOptions *options, WGPUAdapter *adapters) - * } - */ - public static MemorySegment wgpuInstanceEnumerateAdapters$address() { - return wgpuInstanceEnumerateAdapters.ADDR; - } - - /** - * {@snippet lang=c : - * size_t wgpuInstanceEnumerateAdapters(WGPUInstance instance, const WGPUInstanceEnumerateAdapterOptions *options, WGPUAdapter *adapters) - * } - */ - public static long wgpuInstanceEnumerateAdapters(MemorySegment instance, MemorySegment options, MemorySegment adapters) { - var mh$ = wgpuInstanceEnumerateAdapters.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuInstanceEnumerateAdapters", instance, options, adapters); - } - return (long)mh$.invokeExact(instance, options, adapters); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuQueueSubmitForIndex { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuQueueSubmitForIndex"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUSubmissionIndex wgpuQueueSubmitForIndex(WGPUQueue queue, size_t commandCount, const WGPUCommandBuffer *commands) - * } - */ - public static FunctionDescriptor wgpuQueueSubmitForIndex$descriptor() { - return wgpuQueueSubmitForIndex.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUSubmissionIndex wgpuQueueSubmitForIndex(WGPUQueue queue, size_t commandCount, const WGPUCommandBuffer *commands) - * } - */ - public static MethodHandle wgpuQueueSubmitForIndex$handle() { - return wgpuQueueSubmitForIndex.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUSubmissionIndex wgpuQueueSubmitForIndex(WGPUQueue queue, size_t commandCount, const WGPUCommandBuffer *commands) - * } - */ - public static MemorySegment wgpuQueueSubmitForIndex$address() { - return wgpuQueueSubmitForIndex.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUSubmissionIndex wgpuQueueSubmitForIndex(WGPUQueue queue, size_t commandCount, const WGPUCommandBuffer *commands) - * } - */ - public static long wgpuQueueSubmitForIndex(MemorySegment queue, long commandCount, MemorySegment commands) { - var mh$ = wgpuQueueSubmitForIndex.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuQueueSubmitForIndex", queue, commandCount, commands); - } - return (long)mh$.invokeExact(queue, commandCount, commands); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuDevicePoll { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuDevicePoll"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * WGPUBool wgpuDevicePoll(WGPUDevice device, WGPUBool wait, const WGPUWrappedSubmissionIndex *wrappedSubmissionIndex) - * } - */ - public static FunctionDescriptor wgpuDevicePoll$descriptor() { - return wgpuDevicePoll.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * WGPUBool wgpuDevicePoll(WGPUDevice device, WGPUBool wait, const WGPUWrappedSubmissionIndex *wrappedSubmissionIndex) - * } - */ - public static MethodHandle wgpuDevicePoll$handle() { - return wgpuDevicePoll.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * WGPUBool wgpuDevicePoll(WGPUDevice device, WGPUBool wait, const WGPUWrappedSubmissionIndex *wrappedSubmissionIndex) - * } - */ - public static MemorySegment wgpuDevicePoll$address() { - return wgpuDevicePoll.ADDR; - } - - /** - * {@snippet lang=c : - * WGPUBool wgpuDevicePoll(WGPUDevice device, WGPUBool wait, const WGPUWrappedSubmissionIndex *wrappedSubmissionIndex) - * } - */ - public static int wgpuDevicePoll(MemorySegment device, int wait, MemorySegment wrappedSubmissionIndex) { - var mh$ = wgpuDevicePoll.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuDevicePoll", device, wait, wrappedSubmissionIndex); - } - return (int)mh$.invokeExact(device, wait, wrappedSubmissionIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSetLogCallback { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSetLogCallback"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSetLogCallback(WGPULogCallback callback, void *userdata) - * } - */ - public static FunctionDescriptor wgpuSetLogCallback$descriptor() { - return wgpuSetLogCallback.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSetLogCallback(WGPULogCallback callback, void *userdata) - * } - */ - public static MethodHandle wgpuSetLogCallback$handle() { - return wgpuSetLogCallback.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSetLogCallback(WGPULogCallback callback, void *userdata) - * } - */ - public static MemorySegment wgpuSetLogCallback$address() { - return wgpuSetLogCallback.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSetLogCallback(WGPULogCallback callback, void *userdata) - * } - */ - public static void wgpuSetLogCallback(MemorySegment callback, MemorySegment userdata) { - var mh$ = wgpuSetLogCallback.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSetLogCallback", callback, userdata); - } - mh$.invokeExact(callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuSetLogLevel { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuSetLogLevel"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuSetLogLevel(WGPULogLevel level) - * } - */ - public static FunctionDescriptor wgpuSetLogLevel$descriptor() { - return wgpuSetLogLevel.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuSetLogLevel(WGPULogLevel level) - * } - */ - public static MethodHandle wgpuSetLogLevel$handle() { - return wgpuSetLogLevel.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuSetLogLevel(WGPULogLevel level) - * } - */ - public static MemorySegment wgpuSetLogLevel$address() { - return wgpuSetLogLevel.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuSetLogLevel(WGPULogLevel level) - * } - */ - public static void wgpuSetLogLevel(int level) { - var mh$ = wgpuSetLogLevel.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuSetLogLevel", level); - } - mh$.invokeExact(level); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuGetVersion { - public static final FunctionDescriptor DESC = FunctionDescriptor.of( - WGPU.C_INT ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuGetVersion"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * uint32_t wgpuGetVersion() - * } - */ - public static FunctionDescriptor wgpuGetVersion$descriptor() { - return wgpuGetVersion.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * uint32_t wgpuGetVersion() - * } - */ - public static MethodHandle wgpuGetVersion$handle() { - return wgpuGetVersion.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * uint32_t wgpuGetVersion() - * } - */ - public static MemorySegment wgpuGetVersion$address() { - return wgpuGetVersion.ADDR; - } - - /** - * {@snippet lang=c : - * uint32_t wgpuGetVersion() - * } - */ - public static int wgpuGetVersion() { - var mh$ = wgpuGetVersion.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuGetVersion"); - } - return (int)mh$.invokeExact(); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderSetPushConstants { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderSetPushConstants"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetPushConstants(WGPURenderPassEncoder encoder, WGPUShaderStageFlags stages, uint32_t offset, uint32_t sizeBytes, const void *data) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderSetPushConstants$descriptor() { - return wgpuRenderPassEncoderSetPushConstants.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetPushConstants(WGPURenderPassEncoder encoder, WGPUShaderStageFlags stages, uint32_t offset, uint32_t sizeBytes, const void *data) - * } - */ - public static MethodHandle wgpuRenderPassEncoderSetPushConstants$handle() { - return wgpuRenderPassEncoderSetPushConstants.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetPushConstants(WGPURenderPassEncoder encoder, WGPUShaderStageFlags stages, uint32_t offset, uint32_t sizeBytes, const void *data) - * } - */ - public static MemorySegment wgpuRenderPassEncoderSetPushConstants$address() { - return wgpuRenderPassEncoderSetPushConstants.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderSetPushConstants(WGPURenderPassEncoder encoder, WGPUShaderStageFlags stages, uint32_t offset, uint32_t sizeBytes, const void *data) - * } - */ - public static void wgpuRenderPassEncoderSetPushConstants(MemorySegment encoder, int stages, int offset, int sizeBytes, MemorySegment data) { - var mh$ = wgpuRenderPassEncoderSetPushConstants.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderSetPushConstants", encoder, stages, offset, sizeBytes, data); - } - mh$.invokeExact(encoder, stages, offset, sizeBytes, data); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderMultiDrawIndirect { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderMultiDrawIndirect"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndirect(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, uint32_t count) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderMultiDrawIndirect$descriptor() { - return wgpuRenderPassEncoderMultiDrawIndirect.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndirect(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, uint32_t count) - * } - */ - public static MethodHandle wgpuRenderPassEncoderMultiDrawIndirect$handle() { - return wgpuRenderPassEncoderMultiDrawIndirect.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndirect(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, uint32_t count) - * } - */ - public static MemorySegment wgpuRenderPassEncoderMultiDrawIndirect$address() { - return wgpuRenderPassEncoderMultiDrawIndirect.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndirect(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, uint32_t count) - * } - */ - public static void wgpuRenderPassEncoderMultiDrawIndirect(MemorySegment encoder, MemorySegment buffer, long offset, int count) { - var mh$ = wgpuRenderPassEncoderMultiDrawIndirect.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderMultiDrawIndirect", encoder, buffer, offset, count); - } - mh$.invokeExact(encoder, buffer, offset, count); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderMultiDrawIndexedIndirect { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderMultiDrawIndexedIndirect"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndexedIndirect(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, uint32_t count) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderMultiDrawIndexedIndirect$descriptor() { - return wgpuRenderPassEncoderMultiDrawIndexedIndirect.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndexedIndirect(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, uint32_t count) - * } - */ - public static MethodHandle wgpuRenderPassEncoderMultiDrawIndexedIndirect$handle() { - return wgpuRenderPassEncoderMultiDrawIndexedIndirect.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndexedIndirect(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, uint32_t count) - * } - */ - public static MemorySegment wgpuRenderPassEncoderMultiDrawIndexedIndirect$address() { - return wgpuRenderPassEncoderMultiDrawIndexedIndirect.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndexedIndirect(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, uint32_t count) - * } - */ - public static void wgpuRenderPassEncoderMultiDrawIndexedIndirect(MemorySegment encoder, MemorySegment buffer, long offset, int count) { - var mh$ = wgpuRenderPassEncoderMultiDrawIndexedIndirect.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderMultiDrawIndexedIndirect", encoder, buffer, offset, count); - } - mh$.invokeExact(encoder, buffer, offset, count); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderMultiDrawIndirectCount { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderMultiDrawIndirectCount"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndirectCount(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, WGPUBuffer count_buffer, uint64_t count_buffer_offset, uint32_t max_count) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderMultiDrawIndirectCount$descriptor() { - return wgpuRenderPassEncoderMultiDrawIndirectCount.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndirectCount(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, WGPUBuffer count_buffer, uint64_t count_buffer_offset, uint32_t max_count) - * } - */ - public static MethodHandle wgpuRenderPassEncoderMultiDrawIndirectCount$handle() { - return wgpuRenderPassEncoderMultiDrawIndirectCount.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndirectCount(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, WGPUBuffer count_buffer, uint64_t count_buffer_offset, uint32_t max_count) - * } - */ - public static MemorySegment wgpuRenderPassEncoderMultiDrawIndirectCount$address() { - return wgpuRenderPassEncoderMultiDrawIndirectCount.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndirectCount(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, WGPUBuffer count_buffer, uint64_t count_buffer_offset, uint32_t max_count) - * } - */ - public static void wgpuRenderPassEncoderMultiDrawIndirectCount(MemorySegment encoder, MemorySegment buffer, long offset, MemorySegment count_buffer, long count_buffer_offset, int max_count) { - var mh$ = wgpuRenderPassEncoderMultiDrawIndirectCount.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderMultiDrawIndirectCount", encoder, buffer, offset, count_buffer, count_buffer_offset, max_count); - } - mh$.invokeExact(encoder, buffer, offset, count_buffer, count_buffer_offset, max_count); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderMultiDrawIndexedIndirectCount { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderMultiDrawIndexedIndirectCount"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndexedIndirectCount(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, WGPUBuffer count_buffer, uint64_t count_buffer_offset, uint32_t max_count) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderMultiDrawIndexedIndirectCount$descriptor() { - return wgpuRenderPassEncoderMultiDrawIndexedIndirectCount.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndexedIndirectCount(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, WGPUBuffer count_buffer, uint64_t count_buffer_offset, uint32_t max_count) - * } - */ - public static MethodHandle wgpuRenderPassEncoderMultiDrawIndexedIndirectCount$handle() { - return wgpuRenderPassEncoderMultiDrawIndexedIndirectCount.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndexedIndirectCount(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, WGPUBuffer count_buffer, uint64_t count_buffer_offset, uint32_t max_count) - * } - */ - public static MemorySegment wgpuRenderPassEncoderMultiDrawIndexedIndirectCount$address() { - return wgpuRenderPassEncoderMultiDrawIndexedIndirectCount.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderMultiDrawIndexedIndirectCount(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, WGPUBuffer count_buffer, uint64_t count_buffer_offset, uint32_t max_count) - * } - */ - public static void wgpuRenderPassEncoderMultiDrawIndexedIndirectCount(MemorySegment encoder, MemorySegment buffer, long offset, MemorySegment count_buffer, long count_buffer_offset, int max_count) { - var mh$ = wgpuRenderPassEncoderMultiDrawIndexedIndirectCount.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderMultiDrawIndexedIndirectCount", encoder, buffer, offset, count_buffer, count_buffer_offset, max_count); - } - mh$.invokeExact(encoder, buffer, offset, count_buffer, count_buffer_offset, max_count); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderBeginPipelineStatisticsQuery { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderBeginPipelineStatisticsQuery"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderBeginPipelineStatisticsQuery(WGPUComputePassEncoder computePassEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderBeginPipelineStatisticsQuery$descriptor() { - return wgpuComputePassEncoderBeginPipelineStatisticsQuery.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderBeginPipelineStatisticsQuery(WGPUComputePassEncoder computePassEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static MethodHandle wgpuComputePassEncoderBeginPipelineStatisticsQuery$handle() { - return wgpuComputePassEncoderBeginPipelineStatisticsQuery.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderBeginPipelineStatisticsQuery(WGPUComputePassEncoder computePassEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static MemorySegment wgpuComputePassEncoderBeginPipelineStatisticsQuery$address() { - return wgpuComputePassEncoderBeginPipelineStatisticsQuery.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderBeginPipelineStatisticsQuery(WGPUComputePassEncoder computePassEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static void wgpuComputePassEncoderBeginPipelineStatisticsQuery(MemorySegment computePassEncoder, MemorySegment querySet, int queryIndex) { - var mh$ = wgpuComputePassEncoderBeginPipelineStatisticsQuery.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderBeginPipelineStatisticsQuery", computePassEncoder, querySet, queryIndex); - } - mh$.invokeExact(computePassEncoder, querySet, queryIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuComputePassEncoderEndPipelineStatisticsQuery { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuComputePassEncoderEndPipelineStatisticsQuery"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuComputePassEncoderEndPipelineStatisticsQuery(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static FunctionDescriptor wgpuComputePassEncoderEndPipelineStatisticsQuery$descriptor() { - return wgpuComputePassEncoderEndPipelineStatisticsQuery.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuComputePassEncoderEndPipelineStatisticsQuery(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static MethodHandle wgpuComputePassEncoderEndPipelineStatisticsQuery$handle() { - return wgpuComputePassEncoderEndPipelineStatisticsQuery.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuComputePassEncoderEndPipelineStatisticsQuery(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static MemorySegment wgpuComputePassEncoderEndPipelineStatisticsQuery$address() { - return wgpuComputePassEncoderEndPipelineStatisticsQuery.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuComputePassEncoderEndPipelineStatisticsQuery(WGPUComputePassEncoder computePassEncoder) - * } - */ - public static void wgpuComputePassEncoderEndPipelineStatisticsQuery(MemorySegment computePassEncoder) { - var mh$ = wgpuComputePassEncoderEndPipelineStatisticsQuery.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuComputePassEncoderEndPipelineStatisticsQuery", computePassEncoder); - } - mh$.invokeExact(computePassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderBeginPipelineStatisticsQuery { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderBeginPipelineStatisticsQuery"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderBeginPipelineStatisticsQuery(WGPURenderPassEncoder renderPassEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderBeginPipelineStatisticsQuery$descriptor() { - return wgpuRenderPassEncoderBeginPipelineStatisticsQuery.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderBeginPipelineStatisticsQuery(WGPURenderPassEncoder renderPassEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static MethodHandle wgpuRenderPassEncoderBeginPipelineStatisticsQuery$handle() { - return wgpuRenderPassEncoderBeginPipelineStatisticsQuery.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderBeginPipelineStatisticsQuery(WGPURenderPassEncoder renderPassEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static MemorySegment wgpuRenderPassEncoderBeginPipelineStatisticsQuery$address() { - return wgpuRenderPassEncoderBeginPipelineStatisticsQuery.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderBeginPipelineStatisticsQuery(WGPURenderPassEncoder renderPassEncoder, WGPUQuerySet querySet, uint32_t queryIndex) - * } - */ - public static void wgpuRenderPassEncoderBeginPipelineStatisticsQuery(MemorySegment renderPassEncoder, MemorySegment querySet, int queryIndex) { - var mh$ = wgpuRenderPassEncoderBeginPipelineStatisticsQuery.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderBeginPipelineStatisticsQuery", renderPassEncoder, querySet, queryIndex); - } - mh$.invokeExact(renderPassEncoder, querySet, queryIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - - private static class wgpuRenderPassEncoderEndPipelineStatisticsQuery { - public static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - public static final MemorySegment ADDR = WGPU.findOrThrow("wgpuRenderPassEncoderEndPipelineStatisticsQuery"); - - public static final MethodHandle HANDLE = Linker.nativeLinker().downcallHandle(ADDR, DESC); - } - - /** - * Function descriptor for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderEndPipelineStatisticsQuery(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static FunctionDescriptor wgpuRenderPassEncoderEndPipelineStatisticsQuery$descriptor() { - return wgpuRenderPassEncoderEndPipelineStatisticsQuery.DESC; - } - - /** - * Downcall method handle for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderEndPipelineStatisticsQuery(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MethodHandle wgpuRenderPassEncoderEndPipelineStatisticsQuery$handle() { - return wgpuRenderPassEncoderEndPipelineStatisticsQuery.HANDLE; - } - - /** - * Address for: - * {@snippet lang=c : - * void wgpuRenderPassEncoderEndPipelineStatisticsQuery(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static MemorySegment wgpuRenderPassEncoderEndPipelineStatisticsQuery$address() { - return wgpuRenderPassEncoderEndPipelineStatisticsQuery.ADDR; - } - - /** - * {@snippet lang=c : - * void wgpuRenderPassEncoderEndPipelineStatisticsQuery(WGPURenderPassEncoder renderPassEncoder) - * } - */ - public static void wgpuRenderPassEncoderEndPipelineStatisticsQuery(MemorySegment renderPassEncoder) { - var mh$ = wgpuRenderPassEncoderEndPipelineStatisticsQuery.HANDLE; - try { - if (TRACE_DOWNCALLS) { - traceDowncall("wgpuRenderPassEncoderEndPipelineStatisticsQuery", renderPassEncoder); - } - mh$.invokeExact(renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } - private static final int _VCRUNTIME_DISABLED_WARNINGS = (int)4514L; - /** - * {@snippet lang=c : - * #define _VCRUNTIME_DISABLED_WARNINGS 4514 - * } - */ - public static int _VCRUNTIME_DISABLED_WARNINGS() { - return _VCRUNTIME_DISABLED_WARNINGS; - } - private static final MemorySegment NULL = MemorySegment.ofAddress(0L); - /** - * {@snippet lang=c : - * #define NULL (void*) 0 - * } - */ - public static MemorySegment NULL() { - return NULL; - } - private static final int INT8_MIN = (int)-128L; - /** - * {@snippet lang=c : - * #define INT8_MIN -128 - * } - */ - public static int INT8_MIN() { - return INT8_MIN; - } - private static final int INT16_MIN = (int)-32768L; - /** - * {@snippet lang=c : - * #define INT16_MIN -32768 - * } - */ - public static int INT16_MIN() { - return INT16_MIN; - } - private static final int INT32_MIN = (int)-2147483648L; - /** - * {@snippet lang=c : - * #define INT32_MIN -2147483648 - * } - */ - public static int INT32_MIN() { - return INT32_MIN; - } - private static final long INT64_MIN = -9223372036854775808L; - /** - * {@snippet lang=c : - * #define INT64_MIN -9223372036854775808 - * } - */ - public static long INT64_MIN() { - return INT64_MIN; - } - private static final byte INT8_MAX = (byte)127L; - /** - * {@snippet lang=c : - * #define INT8_MAX 127 - * } - */ - public static byte INT8_MAX() { - return INT8_MAX; - } - private static final short INT16_MAX = (short)32767L; - /** - * {@snippet lang=c : - * #define INT16_MAX 32767 - * } - */ - public static short INT16_MAX() { - return INT16_MAX; - } - private static final int INT32_MAX = (int)2147483647L; - /** - * {@snippet lang=c : - * #define INT32_MAX 2147483647 - * } - */ - public static int INT32_MAX() { - return INT32_MAX; - } - private static final long INT64_MAX = 9223372036854775807L; - /** - * {@snippet lang=c : - * #define INT64_MAX 9223372036854775807 - * } - */ - public static long INT64_MAX() { - return INT64_MAX; - } - private static final byte UINT8_MAX = (byte)255L; - /** - * {@snippet lang=c : - * #define UINT8_MAX 255 - * } - */ - public static byte UINT8_MAX() { - return UINT8_MAX; - } - private static final short UINT16_MAX = (short)65535L; - /** - * {@snippet lang=c : - * #define UINT16_MAX 65535 - * } - */ - public static short UINT16_MAX() { - return UINT16_MAX; - } - private static final int UINT32_MAX = (int)4294967295L; - /** - * {@snippet lang=c : - * #define UINT32_MAX 4294967295 - * } - */ - public static int UINT32_MAX() { - return UINT32_MAX; - } - private static final long UINT64_MAX = -1L; - /** - * {@snippet lang=c : - * #define UINT64_MAX -1 - * } - */ - public static long UINT64_MAX() { - return UINT64_MAX; - } - private static final int INT_LEAST8_MIN = (int)-128L; - /** - * {@snippet lang=c : - * #define INT_LEAST8_MIN -128 - * } - */ - public static int INT_LEAST8_MIN() { - return INT_LEAST8_MIN; - } - private static final int INT_LEAST16_MIN = (int)-32768L; - /** - * {@snippet lang=c : - * #define INT_LEAST16_MIN -32768 - * } - */ - public static int INT_LEAST16_MIN() { - return INT_LEAST16_MIN; - } - private static final int INT_LEAST32_MIN = (int)-2147483648L; - /** - * {@snippet lang=c : - * #define INT_LEAST32_MIN -2147483648 - * } - */ - public static int INT_LEAST32_MIN() { - return INT_LEAST32_MIN; - } - private static final long INT_LEAST64_MIN = -9223372036854775808L; - /** - * {@snippet lang=c : - * #define INT_LEAST64_MIN -9223372036854775808 - * } - */ - public static long INT_LEAST64_MIN() { - return INT_LEAST64_MIN; - } - private static final byte INT_LEAST8_MAX = (byte)127L; - /** - * {@snippet lang=c : - * #define INT_LEAST8_MAX 127 - * } - */ - public static byte INT_LEAST8_MAX() { - return INT_LEAST8_MAX; - } - private static final short INT_LEAST16_MAX = (short)32767L; - /** - * {@snippet lang=c : - * #define INT_LEAST16_MAX 32767 - * } - */ - public static short INT_LEAST16_MAX() { - return INT_LEAST16_MAX; - } - private static final int INT_LEAST32_MAX = (int)2147483647L; - /** - * {@snippet lang=c : - * #define INT_LEAST32_MAX 2147483647 - * } - */ - public static int INT_LEAST32_MAX() { - return INT_LEAST32_MAX; - } - private static final long INT_LEAST64_MAX = 9223372036854775807L; - /** - * {@snippet lang=c : - * #define INT_LEAST64_MAX 9223372036854775807 - * } - */ - public static long INT_LEAST64_MAX() { - return INT_LEAST64_MAX; - } - private static final byte UINT_LEAST8_MAX = (byte)255L; - /** - * {@snippet lang=c : - * #define UINT_LEAST8_MAX 255 - * } - */ - public static byte UINT_LEAST8_MAX() { - return UINT_LEAST8_MAX; - } - private static final short UINT_LEAST16_MAX = (short)65535L; - /** - * {@snippet lang=c : - * #define UINT_LEAST16_MAX 65535 - * } - */ - public static short UINT_LEAST16_MAX() { - return UINT_LEAST16_MAX; - } - private static final int UINT_LEAST32_MAX = (int)4294967295L; - /** - * {@snippet lang=c : - * #define UINT_LEAST32_MAX 4294967295 - * } - */ - public static int UINT_LEAST32_MAX() { - return UINT_LEAST32_MAX; - } - private static final long UINT_LEAST64_MAX = -1L; - /** - * {@snippet lang=c : - * #define UINT_LEAST64_MAX -1 - * } - */ - public static long UINT_LEAST64_MAX() { - return UINT_LEAST64_MAX; - } - private static final int INT_FAST8_MIN = (int)-128L; - /** - * {@snippet lang=c : - * #define INT_FAST8_MIN -128 - * } - */ - public static int INT_FAST8_MIN() { - return INT_FAST8_MIN; - } - private static final int INT_FAST16_MIN = (int)-2147483648L; - /** - * {@snippet lang=c : - * #define INT_FAST16_MIN -2147483648 - * } - */ - public static int INT_FAST16_MIN() { - return INT_FAST16_MIN; - } - private static final int INT_FAST32_MIN = (int)-2147483648L; - /** - * {@snippet lang=c : - * #define INT_FAST32_MIN -2147483648 - * } - */ - public static int INT_FAST32_MIN() { - return INT_FAST32_MIN; - } - private static final long INT_FAST64_MIN = -9223372036854775808L; - /** - * {@snippet lang=c : - * #define INT_FAST64_MIN -9223372036854775808 - * } - */ - public static long INT_FAST64_MIN() { - return INT_FAST64_MIN; - } - private static final byte INT_FAST8_MAX = (byte)127L; - /** - * {@snippet lang=c : - * #define INT_FAST8_MAX 127 - * } - */ - public static byte INT_FAST8_MAX() { - return INT_FAST8_MAX; - } - private static final int INT_FAST16_MAX = (int)2147483647L; - /** - * {@snippet lang=c : - * #define INT_FAST16_MAX 2147483647 - * } - */ - public static int INT_FAST16_MAX() { - return INT_FAST16_MAX; - } - private static final int INT_FAST32_MAX = (int)2147483647L; - /** - * {@snippet lang=c : - * #define INT_FAST32_MAX 2147483647 - * } - */ - public static int INT_FAST32_MAX() { - return INT_FAST32_MAX; - } - private static final long INT_FAST64_MAX = 9223372036854775807L; - /** - * {@snippet lang=c : - * #define INT_FAST64_MAX 9223372036854775807 - * } - */ - public static long INT_FAST64_MAX() { - return INT_FAST64_MAX; - } - private static final byte UINT_FAST8_MAX = (byte)255L; - /** - * {@snippet lang=c : - * #define UINT_FAST8_MAX 255 - * } - */ - public static byte UINT_FAST8_MAX() { - return UINT_FAST8_MAX; - } - private static final int UINT_FAST16_MAX = (int)4294967295L; - /** - * {@snippet lang=c : - * #define UINT_FAST16_MAX 4294967295 - * } - */ - public static int UINT_FAST16_MAX() { - return UINT_FAST16_MAX; - } - private static final int UINT_FAST32_MAX = (int)4294967295L; - /** - * {@snippet lang=c : - * #define UINT_FAST32_MAX 4294967295 - * } - */ - public static int UINT_FAST32_MAX() { - return UINT_FAST32_MAX; - } - private static final long UINT_FAST64_MAX = -1L; - /** - * {@snippet lang=c : - * #define UINT_FAST64_MAX -1 - * } - */ - public static long UINT_FAST64_MAX() { - return UINT_FAST64_MAX; - } - private static final long INTPTR_MIN = -9223372036854775808L; - /** - * {@snippet lang=c : - * #define INTPTR_MIN -9223372036854775808 - * } - */ - public static long INTPTR_MIN() { - return INTPTR_MIN; - } - private static final long INTPTR_MAX = 9223372036854775807L; - /** - * {@snippet lang=c : - * #define INTPTR_MAX 9223372036854775807 - * } - */ - public static long INTPTR_MAX() { - return INTPTR_MAX; - } - private static final long UINTPTR_MAX = -1L; - /** - * {@snippet lang=c : - * #define UINTPTR_MAX -1 - * } - */ - public static long UINTPTR_MAX() { - return UINTPTR_MAX; - } - private static final long INTMAX_MIN = -9223372036854775808L; - /** - * {@snippet lang=c : - * #define INTMAX_MIN -9223372036854775808 - * } - */ - public static long INTMAX_MIN() { - return INTMAX_MIN; - } - private static final long INTMAX_MAX = 9223372036854775807L; - /** - * {@snippet lang=c : - * #define INTMAX_MAX 9223372036854775807 - * } - */ - public static long INTMAX_MAX() { - return INTMAX_MAX; - } - private static final long UINTMAX_MAX = -1L; - /** - * {@snippet lang=c : - * #define UINTMAX_MAX -1 - * } - */ - public static long UINTMAX_MAX() { - return UINTMAX_MAX; - } - private static final long PTRDIFF_MIN = -9223372036854775808L; - /** - * {@snippet lang=c : - * #define PTRDIFF_MIN -9223372036854775808 - * } - */ - public static long PTRDIFF_MIN() { - return PTRDIFF_MIN; - } - private static final long PTRDIFF_MAX = 9223372036854775807L; - /** - * {@snippet lang=c : - * #define PTRDIFF_MAX 9223372036854775807 - * } - */ - public static long PTRDIFF_MAX() { - return PTRDIFF_MAX; - } - private static final long SIZE_MAX = -1L; - /** - * {@snippet lang=c : - * #define SIZE_MAX -1 - * } - */ - public static long SIZE_MAX() { - return SIZE_MAX; - } - private static final int SIG_ATOMIC_MIN = (int)-2147483648L; - /** - * {@snippet lang=c : - * #define SIG_ATOMIC_MIN -2147483648 - * } - */ - public static int SIG_ATOMIC_MIN() { - return SIG_ATOMIC_MIN; - } - private static final int SIG_ATOMIC_MAX = (int)2147483647L; - /** - * {@snippet lang=c : - * #define SIG_ATOMIC_MAX 2147483647 - * } - */ - public static int SIG_ATOMIC_MAX() { - return SIG_ATOMIC_MAX; - } - private static final int WGPU_ARRAY_LAYER_COUNT_UNDEFINED = (int)4294967295L; - /** - * {@snippet lang=c : - * #define WGPU_ARRAY_LAYER_COUNT_UNDEFINED 4294967295 - * } - */ - public static int WGPU_ARRAY_LAYER_COUNT_UNDEFINED() { - return WGPU_ARRAY_LAYER_COUNT_UNDEFINED; - } - private static final int WGPU_COPY_STRIDE_UNDEFINED = (int)4294967295L; - /** - * {@snippet lang=c : - * #define WGPU_COPY_STRIDE_UNDEFINED 4294967295 - * } - */ - public static int WGPU_COPY_STRIDE_UNDEFINED() { - return WGPU_COPY_STRIDE_UNDEFINED; - } - private static final int WGPU_LIMIT_U32_UNDEFINED = (int)4294967295L; - /** - * {@snippet lang=c : - * #define WGPU_LIMIT_U32_UNDEFINED 4294967295 - * } - */ - public static int WGPU_LIMIT_U32_UNDEFINED() { - return WGPU_LIMIT_U32_UNDEFINED; - } - private static final long WGPU_LIMIT_U64_UNDEFINED = -1L; - /** - * {@snippet lang=c : - * #define WGPU_LIMIT_U64_UNDEFINED -1 - * } - */ - public static long WGPU_LIMIT_U64_UNDEFINED() { - return WGPU_LIMIT_U64_UNDEFINED; - } - private static final int WGPU_MIP_LEVEL_COUNT_UNDEFINED = (int)4294967295L; - /** - * {@snippet lang=c : - * #define WGPU_MIP_LEVEL_COUNT_UNDEFINED 4294967295 - * } - */ - public static int WGPU_MIP_LEVEL_COUNT_UNDEFINED() { - return WGPU_MIP_LEVEL_COUNT_UNDEFINED; - } - private static final int WGPU_QUERY_SET_INDEX_UNDEFINED = (int)4294967295L; - /** - * {@snippet lang=c : - * #define WGPU_QUERY_SET_INDEX_UNDEFINED 4294967295 - * } - */ - public static int WGPU_QUERY_SET_INDEX_UNDEFINED() { - return WGPU_QUERY_SET_INDEX_UNDEFINED; - } - private static final long WGPU_WHOLE_MAP_SIZE = -1L; - private static final long WGPU_WHOLE_SIZE = -1L; -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUAdapterProperties.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUAdapterProperties.java deleted file mode 100644 index 1926e21fe..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUAdapterProperties.java +++ /dev/null @@ -1,497 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUAdapterProperties { - * WGPUChainedStructOut *nextInChain; - * uint32_t vendorID; - * const char *vendorName; - * const char *architecture; - * uint32_t deviceID; - * const char *name; - * const char *driverDescription; - * WGPUAdapterType adapterType; - * WGPUBackendType backendType; - * } - * } - */ -public class WGPUAdapterProperties { - - WGPUAdapterProperties() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("vendorID"), - MemoryLayout.paddingLayout(4), - WGPU.C_POINTER.withName("vendorName"), - WGPU.C_POINTER.withName("architecture"), - WGPU.C_INT.withName("deviceID"), - MemoryLayout.paddingLayout(4), - WGPU.C_POINTER.withName("name"), - WGPU.C_POINTER.withName("driverDescription"), - WGPU.C_INT.withName("adapterType"), - WGPU.C_INT.withName("backendType") - ).withName("WGPUAdapterProperties"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt vendorID$LAYOUT = (OfInt)$LAYOUT.select(groupElement("vendorID")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t vendorID - * } - */ - public static final OfInt vendorID$layout() { - return vendorID$LAYOUT; - } - - private static final long vendorID$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t vendorID - * } - */ - public static final long vendorID$offset() { - return vendorID$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t vendorID - * } - */ - public static int vendorID(MemorySegment struct) { - return struct.get(vendorID$LAYOUT, vendorID$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t vendorID - * } - */ - public static void vendorID(MemorySegment struct, int fieldValue) { - struct.set(vendorID$LAYOUT, vendorID$OFFSET, fieldValue); - } - - private static final AddressLayout vendorName$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("vendorName")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *vendorName - * } - */ - public static final AddressLayout vendorName$layout() { - return vendorName$LAYOUT; - } - - private static final long vendorName$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *vendorName - * } - */ - public static final long vendorName$offset() { - return vendorName$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *vendorName - * } - */ - public static MemorySegment vendorName(MemorySegment struct) { - return struct.get(vendorName$LAYOUT, vendorName$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *vendorName - * } - */ - public static void vendorName(MemorySegment struct, MemorySegment fieldValue) { - struct.set(vendorName$LAYOUT, vendorName$OFFSET, fieldValue); - } - - private static final AddressLayout architecture$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("architecture")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *architecture - * } - */ - public static final AddressLayout architecture$layout() { - return architecture$LAYOUT; - } - - private static final long architecture$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *architecture - * } - */ - public static final long architecture$offset() { - return architecture$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *architecture - * } - */ - public static MemorySegment architecture(MemorySegment struct) { - return struct.get(architecture$LAYOUT, architecture$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *architecture - * } - */ - public static void architecture(MemorySegment struct, MemorySegment fieldValue) { - struct.set(architecture$LAYOUT, architecture$OFFSET, fieldValue); - } - - private static final OfInt deviceID$LAYOUT = (OfInt)$LAYOUT.select(groupElement("deviceID")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t deviceID - * } - */ - public static final OfInt deviceID$layout() { - return deviceID$LAYOUT; - } - - private static final long deviceID$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t deviceID - * } - */ - public static final long deviceID$offset() { - return deviceID$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t deviceID - * } - */ - public static int deviceID(MemorySegment struct) { - return struct.get(deviceID$LAYOUT, deviceID$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t deviceID - * } - */ - public static void deviceID(MemorySegment struct, int fieldValue) { - struct.set(deviceID$LAYOUT, deviceID$OFFSET, fieldValue); - } - - private static final AddressLayout name$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("name")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *name - * } - */ - public static final AddressLayout name$layout() { - return name$LAYOUT; - } - - private static final long name$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *name - * } - */ - public static final long name$offset() { - return name$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *name - * } - */ - public static MemorySegment name(MemorySegment struct) { - return struct.get(name$LAYOUT, name$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *name - * } - */ - public static void name(MemorySegment struct, MemorySegment fieldValue) { - struct.set(name$LAYOUT, name$OFFSET, fieldValue); - } - - private static final AddressLayout driverDescription$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("driverDescription")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *driverDescription - * } - */ - public static final AddressLayout driverDescription$layout() { - return driverDescription$LAYOUT; - } - - private static final long driverDescription$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *driverDescription - * } - */ - public static final long driverDescription$offset() { - return driverDescription$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *driverDescription - * } - */ - public static MemorySegment driverDescription(MemorySegment struct) { - return struct.get(driverDescription$LAYOUT, driverDescription$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *driverDescription - * } - */ - public static void driverDescription(MemorySegment struct, MemorySegment fieldValue) { - struct.set(driverDescription$LAYOUT, driverDescription$OFFSET, fieldValue); - } - - private static final OfInt adapterType$LAYOUT = (OfInt)$LAYOUT.select(groupElement("adapterType")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUAdapterType adapterType - * } - */ - public static final OfInt adapterType$layout() { - return adapterType$LAYOUT; - } - - private static final long adapterType$OFFSET = 56; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUAdapterType adapterType - * } - */ - public static final long adapterType$offset() { - return adapterType$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUAdapterType adapterType - * } - */ - public static int adapterType(MemorySegment struct) { - return struct.get(adapterType$LAYOUT, adapterType$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUAdapterType adapterType - * } - */ - public static void adapterType(MemorySegment struct, int fieldValue) { - struct.set(adapterType$LAYOUT, adapterType$OFFSET, fieldValue); - } - - private static final OfInt backendType$LAYOUT = (OfInt)$LAYOUT.select(groupElement("backendType")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static final OfInt backendType$layout() { - return backendType$LAYOUT; - } - - private static final long backendType$OFFSET = 60; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static final long backendType$offset() { - return backendType$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static int backendType(MemorySegment struct) { - return struct.get(backendType$LAYOUT, backendType$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static void backendType(MemorySegment struct, int fieldValue) { - struct.set(backendType$LAYOUT, backendType$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupDescriptor.java deleted file mode 100644 index d3cc4a718..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupDescriptor.java +++ /dev/null @@ -1,311 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUBindGroupDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * WGPUBindGroupLayout layout; - * size_t entryCount; - * const WGPUBindGroupEntry *entries; - * } - * } - */ -public class WGPUBindGroupDescriptor { - - WGPUBindGroupDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_POINTER.withName("layout"), - WGPU.C_LONG_LONG.withName("entryCount"), - WGPU.C_POINTER.withName("entries") - ).withName("WGPUBindGroupDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final AddressLayout layout$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("layout")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBindGroupLayout layout - * } - */ - public static final AddressLayout layout$layout() { - return layout$LAYOUT; - } - - private static final long layout$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBindGroupLayout layout - * } - */ - public static final long layout$offset() { - return layout$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBindGroupLayout layout - * } - */ - public static MemorySegment layout(MemorySegment struct) { - return struct.get(layout$LAYOUT, layout$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBindGroupLayout layout - * } - */ - public static void layout(MemorySegment struct, MemorySegment fieldValue) { - struct.set(layout$LAYOUT, layout$OFFSET, fieldValue); - } - - private static final OfLong entryCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("entryCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t entryCount - * } - */ - public static final OfLong entryCount$layout() { - return entryCount$LAYOUT; - } - - private static final long entryCount$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t entryCount - * } - */ - public static final long entryCount$offset() { - return entryCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t entryCount - * } - */ - public static long entryCount(MemorySegment struct) { - return struct.get(entryCount$LAYOUT, entryCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t entryCount - * } - */ - public static void entryCount(MemorySegment struct, long fieldValue) { - struct.set(entryCount$LAYOUT, entryCount$OFFSET, fieldValue); - } - - private static final AddressLayout entries$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("entries")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUBindGroupEntry *entries - * } - */ - public static final AddressLayout entries$layout() { - return entries$LAYOUT; - } - - private static final long entries$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUBindGroupEntry *entries - * } - */ - public static final long entries$offset() { - return entries$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUBindGroupEntry *entries - * } - */ - public static MemorySegment entries(MemorySegment struct) { - return struct.get(entries$LAYOUT, entries$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUBindGroupEntry *entries - * } - */ - public static void entries(MemorySegment struct, MemorySegment fieldValue) { - struct.set(entries$LAYOUT, entries$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupEntry.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupEntry.java deleted file mode 100644 index 463dbbf85..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupEntry.java +++ /dev/null @@ -1,404 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUBindGroupEntry { - * const WGPUChainedStruct *nextInChain; - * uint32_t binding; - * WGPUBuffer buffer; - * uint64_t offset; - * uint64_t size; - * WGPUSampler sampler; - * WGPUTextureView textureView; - * } - * } - */ -public class WGPUBindGroupEntry { - - WGPUBindGroupEntry() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("binding"), - MemoryLayout.paddingLayout(4), - WGPU.C_POINTER.withName("buffer"), - WGPU.C_LONG_LONG.withName("offset"), - WGPU.C_LONG_LONG.withName("size"), - WGPU.C_POINTER.withName("sampler"), - WGPU.C_POINTER.withName("textureView") - ).withName("WGPUBindGroupEntry"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt binding$LAYOUT = (OfInt)$LAYOUT.select(groupElement("binding")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t binding - * } - */ - public static final OfInt binding$layout() { - return binding$LAYOUT; - } - - private static final long binding$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t binding - * } - */ - public static final long binding$offset() { - return binding$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t binding - * } - */ - public static int binding(MemorySegment struct) { - return struct.get(binding$LAYOUT, binding$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t binding - * } - */ - public static void binding(MemorySegment struct, int fieldValue) { - struct.set(binding$LAYOUT, binding$OFFSET, fieldValue); - } - - private static final AddressLayout buffer$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("buffer")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBuffer buffer - * } - */ - public static final AddressLayout buffer$layout() { - return buffer$LAYOUT; - } - - private static final long buffer$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBuffer buffer - * } - */ - public static final long buffer$offset() { - return buffer$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBuffer buffer - * } - */ - public static MemorySegment buffer(MemorySegment struct) { - return struct.get(buffer$LAYOUT, buffer$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBuffer buffer - * } - */ - public static void buffer(MemorySegment struct, MemorySegment fieldValue) { - struct.set(buffer$LAYOUT, buffer$OFFSET, fieldValue); - } - - private static final OfLong offset$LAYOUT = (OfLong)$LAYOUT.select(groupElement("offset")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static final OfLong offset$layout() { - return offset$LAYOUT; - } - - private static final long offset$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static final long offset$offset() { - return offset$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static long offset(MemorySegment struct) { - return struct.get(offset$LAYOUT, offset$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static void offset(MemorySegment struct, long fieldValue) { - struct.set(offset$LAYOUT, offset$OFFSET, fieldValue); - } - - private static final OfLong size$LAYOUT = (OfLong)$LAYOUT.select(groupElement("size")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t size - * } - */ - public static final OfLong size$layout() { - return size$LAYOUT; - } - - private static final long size$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t size - * } - */ - public static final long size$offset() { - return size$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t size - * } - */ - public static long size(MemorySegment struct) { - return struct.get(size$LAYOUT, size$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t size - * } - */ - public static void size(MemorySegment struct, long fieldValue) { - struct.set(size$LAYOUT, size$OFFSET, fieldValue); - } - - private static final AddressLayout sampler$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("sampler")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUSampler sampler - * } - */ - public static final AddressLayout sampler$layout() { - return sampler$LAYOUT; - } - - private static final long sampler$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUSampler sampler - * } - */ - public static final long sampler$offset() { - return sampler$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUSampler sampler - * } - */ - public static MemorySegment sampler(MemorySegment struct) { - return struct.get(sampler$LAYOUT, sampler$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUSampler sampler - * } - */ - public static void sampler(MemorySegment struct, MemorySegment fieldValue) { - struct.set(sampler$LAYOUT, sampler$OFFSET, fieldValue); - } - - private static final AddressLayout textureView$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("textureView")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureView textureView - * } - */ - public static final AddressLayout textureView$layout() { - return textureView$LAYOUT; - } - - private static final long textureView$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureView textureView - * } - */ - public static final long textureView$offset() { - return textureView$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureView textureView - * } - */ - public static MemorySegment textureView(MemorySegment struct) { - return struct.get(textureView$LAYOUT, textureView$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureView textureView - * } - */ - public static void textureView(MemorySegment struct, MemorySegment fieldValue) { - struct.set(textureView$LAYOUT, textureView$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupEntryExtras.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupEntryExtras.java deleted file mode 100644 index 55567b375..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupEntryExtras.java +++ /dev/null @@ -1,403 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUBindGroupEntryExtras { - * WGPUChainedStruct chain; - * const WGPUBuffer *buffers; - * size_t bufferCount; - * const WGPUSampler *samplers; - * size_t samplerCount; - * const WGPUTextureView *textureViews; - * size_t textureViewCount; - * } - * } - */ -public class WGPUBindGroupEntryExtras { - - WGPUBindGroupEntryExtras() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("buffers"), - WGPU.C_LONG_LONG.withName("bufferCount"), - WGPU.C_POINTER.withName("samplers"), - WGPU.C_LONG_LONG.withName("samplerCount"), - WGPU.C_POINTER.withName("textureViews"), - WGPU.C_LONG_LONG.withName("textureViewCount") - ).withName("WGPUBindGroupEntryExtras"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout buffers$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("buffers")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUBuffer *buffers - * } - */ - public static final AddressLayout buffers$layout() { - return buffers$LAYOUT; - } - - private static final long buffers$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUBuffer *buffers - * } - */ - public static final long buffers$offset() { - return buffers$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUBuffer *buffers - * } - */ - public static MemorySegment buffers(MemorySegment struct) { - return struct.get(buffers$LAYOUT, buffers$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUBuffer *buffers - * } - */ - public static void buffers(MemorySegment struct, MemorySegment fieldValue) { - struct.set(buffers$LAYOUT, buffers$OFFSET, fieldValue); - } - - private static final OfLong bufferCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("bufferCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t bufferCount - * } - */ - public static final OfLong bufferCount$layout() { - return bufferCount$LAYOUT; - } - - private static final long bufferCount$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t bufferCount - * } - */ - public static final long bufferCount$offset() { - return bufferCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t bufferCount - * } - */ - public static long bufferCount(MemorySegment struct) { - return struct.get(bufferCount$LAYOUT, bufferCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t bufferCount - * } - */ - public static void bufferCount(MemorySegment struct, long fieldValue) { - struct.set(bufferCount$LAYOUT, bufferCount$OFFSET, fieldValue); - } - - private static final AddressLayout samplers$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("samplers")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUSampler *samplers - * } - */ - public static final AddressLayout samplers$layout() { - return samplers$LAYOUT; - } - - private static final long samplers$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUSampler *samplers - * } - */ - public static final long samplers$offset() { - return samplers$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUSampler *samplers - * } - */ - public static MemorySegment samplers(MemorySegment struct) { - return struct.get(samplers$LAYOUT, samplers$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUSampler *samplers - * } - */ - public static void samplers(MemorySegment struct, MemorySegment fieldValue) { - struct.set(samplers$LAYOUT, samplers$OFFSET, fieldValue); - } - - private static final OfLong samplerCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("samplerCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t samplerCount - * } - */ - public static final OfLong samplerCount$layout() { - return samplerCount$LAYOUT; - } - - private static final long samplerCount$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t samplerCount - * } - */ - public static final long samplerCount$offset() { - return samplerCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t samplerCount - * } - */ - public static long samplerCount(MemorySegment struct) { - return struct.get(samplerCount$LAYOUT, samplerCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t samplerCount - * } - */ - public static void samplerCount(MemorySegment struct, long fieldValue) { - struct.set(samplerCount$LAYOUT, samplerCount$OFFSET, fieldValue); - } - - private static final AddressLayout textureViews$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("textureViews")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUTextureView *textureViews - * } - */ - public static final AddressLayout textureViews$layout() { - return textureViews$LAYOUT; - } - - private static final long textureViews$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUTextureView *textureViews - * } - */ - public static final long textureViews$offset() { - return textureViews$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUTextureView *textureViews - * } - */ - public static MemorySegment textureViews(MemorySegment struct) { - return struct.get(textureViews$LAYOUT, textureViews$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUTextureView *textureViews - * } - */ - public static void textureViews(MemorySegment struct, MemorySegment fieldValue) { - struct.set(textureViews$LAYOUT, textureViews$OFFSET, fieldValue); - } - - private static final OfLong textureViewCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("textureViewCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t textureViewCount - * } - */ - public static final OfLong textureViewCount$layout() { - return textureViewCount$LAYOUT; - } - - private static final long textureViewCount$OFFSET = 56; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t textureViewCount - * } - */ - public static final long textureViewCount$offset() { - return textureViewCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t textureViewCount - * } - */ - public static long textureViewCount(MemorySegment struct) { - return struct.get(textureViewCount$LAYOUT, textureViewCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t textureViewCount - * } - */ - public static void textureViewCount(MemorySegment struct, long fieldValue) { - struct.set(textureViewCount$LAYOUT, textureViewCount$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutDescriptor.java deleted file mode 100644 index 6c3b4905c..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutDescriptor.java +++ /dev/null @@ -1,265 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUBindGroupLayoutDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * size_t entryCount; - * const WGPUBindGroupLayoutEntry *entries; - * } - * } - */ -public class WGPUBindGroupLayoutDescriptor { - - WGPUBindGroupLayoutDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_LONG_LONG.withName("entryCount"), - WGPU.C_POINTER.withName("entries") - ).withName("WGPUBindGroupLayoutDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfLong entryCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("entryCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t entryCount - * } - */ - public static final OfLong entryCount$layout() { - return entryCount$LAYOUT; - } - - private static final long entryCount$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t entryCount - * } - */ - public static final long entryCount$offset() { - return entryCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t entryCount - * } - */ - public static long entryCount(MemorySegment struct) { - return struct.get(entryCount$LAYOUT, entryCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t entryCount - * } - */ - public static void entryCount(MemorySegment struct, long fieldValue) { - struct.set(entryCount$LAYOUT, entryCount$OFFSET, fieldValue); - } - - private static final AddressLayout entries$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("entries")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUBindGroupLayoutEntry *entries - * } - */ - public static final AddressLayout entries$layout() { - return entries$LAYOUT; - } - - private static final long entries$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUBindGroupLayoutEntry *entries - * } - */ - public static final long entries$offset() { - return entries$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUBindGroupLayoutEntry *entries - * } - */ - public static MemorySegment entries(MemorySegment struct) { - return struct.get(entries$LAYOUT, entries$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUBindGroupLayoutEntry *entries - * } - */ - public static void entries(MemorySegment struct, MemorySegment fieldValue) { - struct.set(entries$LAYOUT, entries$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutEntry.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutEntry.java deleted file mode 100644 index 173a020a1..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutEntry.java +++ /dev/null @@ -1,403 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUBindGroupLayoutEntry { - * const WGPUChainedStruct *nextInChain; - * uint32_t binding; - * WGPUShaderStageFlags visibility; - * WGPUBufferBindingLayout buffer; - * WGPUSamplerBindingLayout sampler; - * WGPUTextureBindingLayout texture; - * WGPUStorageTextureBindingLayout storageTexture; - * } - * } - */ -public class WGPUBindGroupLayoutEntry { - - WGPUBindGroupLayoutEntry() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("binding"), - WGPU.C_INT.withName("visibility"), - WGPUBufferBindingLayout.layout().withName("buffer"), - WGPUSamplerBindingLayout.layout().withName("sampler"), - WGPUTextureBindingLayout.layout().withName("texture"), - WGPUStorageTextureBindingLayout.layout().withName("storageTexture") - ).withName("WGPUBindGroupLayoutEntry"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt binding$LAYOUT = (OfInt)$LAYOUT.select(groupElement("binding")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t binding - * } - */ - public static final OfInt binding$layout() { - return binding$LAYOUT; - } - - private static final long binding$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t binding - * } - */ - public static final long binding$offset() { - return binding$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t binding - * } - */ - public static int binding(MemorySegment struct) { - return struct.get(binding$LAYOUT, binding$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t binding - * } - */ - public static void binding(MemorySegment struct, int fieldValue) { - struct.set(binding$LAYOUT, binding$OFFSET, fieldValue); - } - - private static final OfInt visibility$LAYOUT = (OfInt)$LAYOUT.select(groupElement("visibility")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUShaderStageFlags visibility - * } - */ - public static final OfInt visibility$layout() { - return visibility$LAYOUT; - } - - private static final long visibility$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUShaderStageFlags visibility - * } - */ - public static final long visibility$offset() { - return visibility$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUShaderStageFlags visibility - * } - */ - public static int visibility(MemorySegment struct) { - return struct.get(visibility$LAYOUT, visibility$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUShaderStageFlags visibility - * } - */ - public static void visibility(MemorySegment struct, int fieldValue) { - struct.set(visibility$LAYOUT, visibility$OFFSET, fieldValue); - } - - private static final GroupLayout buffer$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("buffer")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBufferBindingLayout buffer - * } - */ - public static final GroupLayout buffer$layout() { - return buffer$LAYOUT; - } - - private static final long buffer$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBufferBindingLayout buffer - * } - */ - public static final long buffer$offset() { - return buffer$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBufferBindingLayout buffer - * } - */ - public static MemorySegment buffer(MemorySegment struct) { - return struct.asSlice(buffer$OFFSET, buffer$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBufferBindingLayout buffer - * } - */ - public static void buffer(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, buffer$OFFSET, buffer$LAYOUT.byteSize()); - } - - private static final GroupLayout sampler$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("sampler")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUSamplerBindingLayout sampler - * } - */ - public static final GroupLayout sampler$layout() { - return sampler$LAYOUT; - } - - private static final long sampler$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUSamplerBindingLayout sampler - * } - */ - public static final long sampler$offset() { - return sampler$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUSamplerBindingLayout sampler - * } - */ - public static MemorySegment sampler(MemorySegment struct) { - return struct.asSlice(sampler$OFFSET, sampler$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUSamplerBindingLayout sampler - * } - */ - public static void sampler(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, sampler$OFFSET, sampler$LAYOUT.byteSize()); - } - - private static final GroupLayout texture$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("texture")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureBindingLayout texture - * } - */ - public static final GroupLayout texture$layout() { - return texture$LAYOUT; - } - - private static final long texture$OFFSET = 56; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureBindingLayout texture - * } - */ - public static final long texture$offset() { - return texture$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureBindingLayout texture - * } - */ - public static MemorySegment texture(MemorySegment struct) { - return struct.asSlice(texture$OFFSET, texture$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureBindingLayout texture - * } - */ - public static void texture(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, texture$OFFSET, texture$LAYOUT.byteSize()); - } - - private static final GroupLayout storageTexture$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("storageTexture")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUStorageTextureBindingLayout storageTexture - * } - */ - public static final GroupLayout storageTexture$layout() { - return storageTexture$LAYOUT; - } - - private static final long storageTexture$OFFSET = 80; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUStorageTextureBindingLayout storageTexture - * } - */ - public static final long storageTexture$offset() { - return storageTexture$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUStorageTextureBindingLayout storageTexture - * } - */ - public static MemorySegment storageTexture(MemorySegment struct) { - return struct.asSlice(storageTexture$OFFSET, storageTexture$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUStorageTextureBindingLayout storageTexture - * } - */ - public static void storageTexture(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, storageTexture$OFFSET, storageTexture$LAYOUT.byteSize()); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutEntryExtras.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutEntryExtras.java deleted file mode 100644 index e95ae4a04..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBindGroupLayoutEntryExtras.java +++ /dev/null @@ -1,174 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUBindGroupLayoutEntryExtras { - * WGPUChainedStruct chain; - * uint32_t count; - * } - * } - */ -public class WGPUBindGroupLayoutEntryExtras { - - WGPUBindGroupLayoutEntryExtras() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_INT.withName("count"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUBindGroupLayoutEntryExtras"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final OfInt count$LAYOUT = (OfInt)$LAYOUT.select(groupElement("count")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static final OfInt count$layout() { - return count$LAYOUT; - } - - private static final long count$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static final long count$offset() { - return count$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static int count(MemorySegment struct) { - return struct.get(count$LAYOUT, count$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static void count(MemorySegment struct, int fieldValue) { - struct.set(count$LAYOUT, count$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBlendComponent.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBlendComponent.java deleted file mode 100644 index 2ff8f682e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBlendComponent.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUBlendComponent { - * WGPUBlendOperation operation; - * WGPUBlendFactor srcFactor; - * WGPUBlendFactor dstFactor; - * } - * } - */ -public class WGPUBlendComponent { - - WGPUBlendComponent() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_INT.withName("operation"), - WGPU.C_INT.withName("srcFactor"), - WGPU.C_INT.withName("dstFactor") - ).withName("WGPUBlendComponent"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfInt operation$LAYOUT = (OfInt)$LAYOUT.select(groupElement("operation")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBlendOperation operation - * } - */ - public static final OfInt operation$layout() { - return operation$LAYOUT; - } - - private static final long operation$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBlendOperation operation - * } - */ - public static final long operation$offset() { - return operation$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBlendOperation operation - * } - */ - public static int operation(MemorySegment struct) { - return struct.get(operation$LAYOUT, operation$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBlendOperation operation - * } - */ - public static void operation(MemorySegment struct, int fieldValue) { - struct.set(operation$LAYOUT, operation$OFFSET, fieldValue); - } - - private static final OfInt srcFactor$LAYOUT = (OfInt)$LAYOUT.select(groupElement("srcFactor")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBlendFactor srcFactor - * } - */ - public static final OfInt srcFactor$layout() { - return srcFactor$LAYOUT; - } - - private static final long srcFactor$OFFSET = 4; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBlendFactor srcFactor - * } - */ - public static final long srcFactor$offset() { - return srcFactor$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBlendFactor srcFactor - * } - */ - public static int srcFactor(MemorySegment struct) { - return struct.get(srcFactor$LAYOUT, srcFactor$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBlendFactor srcFactor - * } - */ - public static void srcFactor(MemorySegment struct, int fieldValue) { - struct.set(srcFactor$LAYOUT, srcFactor$OFFSET, fieldValue); - } - - private static final OfInt dstFactor$LAYOUT = (OfInt)$LAYOUT.select(groupElement("dstFactor")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBlendFactor dstFactor - * } - */ - public static final OfInt dstFactor$layout() { - return dstFactor$LAYOUT; - } - - private static final long dstFactor$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBlendFactor dstFactor - * } - */ - public static final long dstFactor$offset() { - return dstFactor$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBlendFactor dstFactor - * } - */ - public static int dstFactor(MemorySegment struct) { - return struct.get(dstFactor$LAYOUT, dstFactor$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBlendFactor dstFactor - * } - */ - public static void dstFactor(MemorySegment struct, int fieldValue) { - struct.set(dstFactor$LAYOUT, dstFactor$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBlendState.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBlendState.java deleted file mode 100644 index 0d31e11f9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBlendState.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUBlendState { - * WGPUBlendComponent color; - * WGPUBlendComponent alpha; - * } - * } - */ -public class WGPUBlendState { - - WGPUBlendState() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUBlendComponent.layout().withName("color"), - WGPUBlendComponent.layout().withName("alpha") - ).withName("WGPUBlendState"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout color$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("color")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBlendComponent color - * } - */ - public static final GroupLayout color$layout() { - return color$LAYOUT; - } - - private static final long color$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBlendComponent color - * } - */ - public static final long color$offset() { - return color$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBlendComponent color - * } - */ - public static MemorySegment color(MemorySegment struct) { - return struct.asSlice(color$OFFSET, color$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBlendComponent color - * } - */ - public static void color(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, color$OFFSET, color$LAYOUT.byteSize()); - } - - private static final GroupLayout alpha$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("alpha")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBlendComponent alpha - * } - */ - public static final GroupLayout alpha$layout() { - return alpha$LAYOUT; - } - - private static final long alpha$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBlendComponent alpha - * } - */ - public static final long alpha$offset() { - return alpha$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBlendComponent alpha - * } - */ - public static MemorySegment alpha(MemorySegment struct) { - return struct.asSlice(alpha$OFFSET, alpha$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBlendComponent alpha - * } - */ - public static void alpha(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, alpha$OFFSET, alpha$LAYOUT.byteSize()); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferBindingLayout.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferBindingLayout.java deleted file mode 100644 index 244539723..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferBindingLayout.java +++ /dev/null @@ -1,265 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUBufferBindingLayout { - * const WGPUChainedStruct *nextInChain; - * WGPUBufferBindingType type; - * WGPUBool hasDynamicOffset; - * uint64_t minBindingSize; - * } - * } - */ -public class WGPUBufferBindingLayout { - - WGPUBufferBindingLayout() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("type"), - WGPU.C_INT.withName("hasDynamicOffset"), - WGPU.C_LONG_LONG.withName("minBindingSize") - ).withName("WGPUBufferBindingLayout"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt type$LAYOUT = (OfInt)$LAYOUT.select(groupElement("type")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBufferBindingType type - * } - */ - public static final OfInt type$layout() { - return type$LAYOUT; - } - - private static final long type$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBufferBindingType type - * } - */ - public static final long type$offset() { - return type$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBufferBindingType type - * } - */ - public static int type(MemorySegment struct) { - return struct.get(type$LAYOUT, type$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBufferBindingType type - * } - */ - public static void type(MemorySegment struct, int fieldValue) { - struct.set(type$LAYOUT, type$OFFSET, fieldValue); - } - - private static final OfInt hasDynamicOffset$LAYOUT = (OfInt)$LAYOUT.select(groupElement("hasDynamicOffset")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool hasDynamicOffset - * } - */ - public static final OfInt hasDynamicOffset$layout() { - return hasDynamicOffset$LAYOUT; - } - - private static final long hasDynamicOffset$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool hasDynamicOffset - * } - */ - public static final long hasDynamicOffset$offset() { - return hasDynamicOffset$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool hasDynamicOffset - * } - */ - public static int hasDynamicOffset(MemorySegment struct) { - return struct.get(hasDynamicOffset$LAYOUT, hasDynamicOffset$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool hasDynamicOffset - * } - */ - public static void hasDynamicOffset(MemorySegment struct, int fieldValue) { - struct.set(hasDynamicOffset$LAYOUT, hasDynamicOffset$OFFSET, fieldValue); - } - - private static final OfLong minBindingSize$LAYOUT = (OfLong)$LAYOUT.select(groupElement("minBindingSize")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t minBindingSize - * } - */ - public static final OfLong minBindingSize$layout() { - return minBindingSize$LAYOUT; - } - - private static final long minBindingSize$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t minBindingSize - * } - */ - public static final long minBindingSize$offset() { - return minBindingSize$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t minBindingSize - * } - */ - public static long minBindingSize(MemorySegment struct) { - return struct.get(minBindingSize$LAYOUT, minBindingSize$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t minBindingSize - * } - */ - public static void minBindingSize(MemorySegment struct, long fieldValue) { - struct.set(minBindingSize$LAYOUT, minBindingSize$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferDescriptor.java deleted file mode 100644 index 7f3e6ce02..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferDescriptor.java +++ /dev/null @@ -1,313 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUBufferDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * WGPUBufferUsageFlags usage; - * uint64_t size; - * WGPUBool mappedAtCreation; - * } - * } - */ -public class WGPUBufferDescriptor { - - WGPUBufferDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_INT.withName("usage"), - MemoryLayout.paddingLayout(4), - WGPU.C_LONG_LONG.withName("size"), - WGPU.C_INT.withName("mappedAtCreation"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUBufferDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfInt usage$LAYOUT = (OfInt)$LAYOUT.select(groupElement("usage")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBufferUsageFlags usage - * } - */ - public static final OfInt usage$layout() { - return usage$LAYOUT; - } - - private static final long usage$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBufferUsageFlags usage - * } - */ - public static final long usage$offset() { - return usage$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBufferUsageFlags usage - * } - */ - public static int usage(MemorySegment struct) { - return struct.get(usage$LAYOUT, usage$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBufferUsageFlags usage - * } - */ - public static void usage(MemorySegment struct, int fieldValue) { - struct.set(usage$LAYOUT, usage$OFFSET, fieldValue); - } - - private static final OfLong size$LAYOUT = (OfLong)$LAYOUT.select(groupElement("size")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t size - * } - */ - public static final OfLong size$layout() { - return size$LAYOUT; - } - - private static final long size$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t size - * } - */ - public static final long size$offset() { - return size$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t size - * } - */ - public static long size(MemorySegment struct) { - return struct.get(size$LAYOUT, size$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t size - * } - */ - public static void size(MemorySegment struct, long fieldValue) { - struct.set(size$LAYOUT, size$OFFSET, fieldValue); - } - - private static final OfInt mappedAtCreation$LAYOUT = (OfInt)$LAYOUT.select(groupElement("mappedAtCreation")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool mappedAtCreation - * } - */ - public static final OfInt mappedAtCreation$layout() { - return mappedAtCreation$LAYOUT; - } - - private static final long mappedAtCreation$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool mappedAtCreation - * } - */ - public static final long mappedAtCreation$offset() { - return mappedAtCreation$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool mappedAtCreation - * } - */ - public static int mappedAtCreation(MemorySegment struct) { - return struct.get(mappedAtCreation$LAYOUT, mappedAtCreation$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool mappedAtCreation - * } - */ - public static void mappedAtCreation(MemorySegment struct, int fieldValue) { - struct.set(mappedAtCreation$LAYOUT, mappedAtCreation$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferMapCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferMapCallback.java deleted file mode 100644 index 03e2d349e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUBufferMapCallback.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUBufferMapCallback)(WGPUBufferMapAsyncStatus, void *) - * } - */ -public class WGPUBufferMapCallback { - - WGPUBufferMapCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(int status, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUBufferMapCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUBufferMapCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,int status, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, status, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUChainedStruct.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUChainedStruct.java deleted file mode 100644 index f6a768cd0..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUChainedStruct.java +++ /dev/null @@ -1,174 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUChainedStruct { - * const struct WGPUChainedStruct *next; - * WGPUSType sType; - * } - * } - */ -public class WGPUChainedStruct { - - WGPUChainedStruct() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("next"), - WGPU.C_INT.withName("sType"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUChainedStruct"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout next$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("next")); - - /** - * Layout for field: - * {@snippet lang=c : - * const struct WGPUChainedStruct *next - * } - */ - public static final AddressLayout next$layout() { - return next$LAYOUT; - } - - private static final long next$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const struct WGPUChainedStruct *next - * } - */ - public static final long next$offset() { - return next$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const struct WGPUChainedStruct *next - * } - */ - public static MemorySegment next(MemorySegment struct) { - return struct.get(next$LAYOUT, next$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const struct WGPUChainedStruct *next - * } - */ - public static void next(MemorySegment struct, MemorySegment fieldValue) { - struct.set(next$LAYOUT, next$OFFSET, fieldValue); - } - - private static final OfInt sType$LAYOUT = (OfInt)$LAYOUT.select(groupElement("sType")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUSType sType - * } - */ - public static final OfInt sType$layout() { - return sType$LAYOUT; - } - - private static final long sType$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUSType sType - * } - */ - public static final long sType$offset() { - return sType$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUSType sType - * } - */ - public static int sType(MemorySegment struct) { - return struct.get(sType$LAYOUT, sType$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUSType sType - * } - */ - public static void sType(MemorySegment struct, int fieldValue) { - struct.set(sType$LAYOUT, sType$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUChainedStructOut.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUChainedStructOut.java deleted file mode 100644 index e69aa8e88..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUChainedStructOut.java +++ /dev/null @@ -1,174 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUChainedStructOut { - * struct WGPUChainedStructOut *next; - * WGPUSType sType; - * } - * } - */ -public class WGPUChainedStructOut { - - WGPUChainedStructOut() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("next"), - WGPU.C_INT.withName("sType"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUChainedStructOut"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout next$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("next")); - - /** - * Layout for field: - * {@snippet lang=c : - * struct WGPUChainedStructOut *next - * } - */ - public static final AddressLayout next$layout() { - return next$LAYOUT; - } - - private static final long next$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * struct WGPUChainedStructOut *next - * } - */ - public static final long next$offset() { - return next$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * struct WGPUChainedStructOut *next - * } - */ - public static MemorySegment next(MemorySegment struct) { - return struct.get(next$LAYOUT, next$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * struct WGPUChainedStructOut *next - * } - */ - public static void next(MemorySegment struct, MemorySegment fieldValue) { - struct.set(next$LAYOUT, next$OFFSET, fieldValue); - } - - private static final OfInt sType$LAYOUT = (OfInt)$LAYOUT.select(groupElement("sType")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUSType sType - * } - */ - public static final OfInt sType$layout() { - return sType$LAYOUT; - } - - private static final long sType$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUSType sType - * } - */ - public static final long sType$offset() { - return sType$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUSType sType - * } - */ - public static int sType(MemorySegment struct) { - return struct.get(sType$LAYOUT, sType$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUSType sType - * } - */ - public static void sType(MemorySegment struct, int fieldValue) { - struct.set(sType$LAYOUT, sType$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUColor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUColor.java deleted file mode 100644 index a37f615a7..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUColor.java +++ /dev/null @@ -1,265 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUColor { - * double r; - * double g; - * double b; - * double a; - * } - * } - */ -public class WGPUColor { - - WGPUColor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_DOUBLE.withName("r"), - WGPU.C_DOUBLE.withName("g"), - WGPU.C_DOUBLE.withName("b"), - WGPU.C_DOUBLE.withName("a") - ).withName("WGPUColor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfDouble r$LAYOUT = (OfDouble)$LAYOUT.select(groupElement("r")); - - /** - * Layout for field: - * {@snippet lang=c : - * double r - * } - */ - public static final OfDouble r$layout() { - return r$LAYOUT; - } - - private static final long r$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * double r - * } - */ - public static final long r$offset() { - return r$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * double r - * } - */ - public static double r(MemorySegment struct) { - return struct.get(r$LAYOUT, r$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * double r - * } - */ - public static void r(MemorySegment struct, double fieldValue) { - struct.set(r$LAYOUT, r$OFFSET, fieldValue); - } - - private static final OfDouble g$LAYOUT = (OfDouble)$LAYOUT.select(groupElement("g")); - - /** - * Layout for field: - * {@snippet lang=c : - * double g - * } - */ - public static final OfDouble g$layout() { - return g$LAYOUT; - } - - private static final long g$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * double g - * } - */ - public static final long g$offset() { - return g$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * double g - * } - */ - public static double g(MemorySegment struct) { - return struct.get(g$LAYOUT, g$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * double g - * } - */ - public static void g(MemorySegment struct, double fieldValue) { - struct.set(g$LAYOUT, g$OFFSET, fieldValue); - } - - private static final OfDouble b$LAYOUT = (OfDouble)$LAYOUT.select(groupElement("b")); - - /** - * Layout for field: - * {@snippet lang=c : - * double b - * } - */ - public static final OfDouble b$layout() { - return b$LAYOUT; - } - - private static final long b$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * double b - * } - */ - public static final long b$offset() { - return b$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * double b - * } - */ - public static double b(MemorySegment struct) { - return struct.get(b$LAYOUT, b$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * double b - * } - */ - public static void b(MemorySegment struct, double fieldValue) { - struct.set(b$LAYOUT, b$OFFSET, fieldValue); - } - - private static final OfDouble a$LAYOUT = (OfDouble)$LAYOUT.select(groupElement("a")); - - /** - * Layout for field: - * {@snippet lang=c : - * double a - * } - */ - public static final OfDouble a$layout() { - return a$LAYOUT; - } - - private static final long a$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * double a - * } - */ - public static final long a$offset() { - return a$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * double a - * } - */ - public static double a(MemorySegment struct) { - return struct.get(a$LAYOUT, a$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * double a - * } - */ - public static void a(MemorySegment struct, double fieldValue) { - struct.set(a$LAYOUT, a$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUColorTargetState.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUColorTargetState.java deleted file mode 100644 index 76fdbe7ca..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUColorTargetState.java +++ /dev/null @@ -1,267 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUColorTargetState { - * const WGPUChainedStruct *nextInChain; - * WGPUTextureFormat format; - * const WGPUBlendState *blend; - * WGPUColorWriteMaskFlags writeMask; - * } - * } - */ -public class WGPUColorTargetState { - - WGPUColorTargetState() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("format"), - MemoryLayout.paddingLayout(4), - WGPU.C_POINTER.withName("blend"), - WGPU.C_INT.withName("writeMask"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUColorTargetState"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt format$LAYOUT = (OfInt)$LAYOUT.select(groupElement("format")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final OfInt format$layout() { - return format$LAYOUT; - } - - private static final long format$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final long format$offset() { - return format$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static int format(MemorySegment struct) { - return struct.get(format$LAYOUT, format$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static void format(MemorySegment struct, int fieldValue) { - struct.set(format$LAYOUT, format$OFFSET, fieldValue); - } - - private static final AddressLayout blend$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("blend")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUBlendState *blend - * } - */ - public static final AddressLayout blend$layout() { - return blend$LAYOUT; - } - - private static final long blend$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUBlendState *blend - * } - */ - public static final long blend$offset() { - return blend$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUBlendState *blend - * } - */ - public static MemorySegment blend(MemorySegment struct) { - return struct.get(blend$LAYOUT, blend$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUBlendState *blend - * } - */ - public static void blend(MemorySegment struct, MemorySegment fieldValue) { - struct.set(blend$LAYOUT, blend$OFFSET, fieldValue); - } - - private static final OfInt writeMask$LAYOUT = (OfInt)$LAYOUT.select(groupElement("writeMask")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUColorWriteMaskFlags writeMask - * } - */ - public static final OfInt writeMask$layout() { - return writeMask$LAYOUT; - } - - private static final long writeMask$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUColorWriteMaskFlags writeMask - * } - */ - public static final long writeMask$offset() { - return writeMask$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUColorWriteMaskFlags writeMask - * } - */ - public static int writeMask(MemorySegment struct) { - return struct.get(writeMask$LAYOUT, writeMask$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUColorWriteMaskFlags writeMask - * } - */ - public static void writeMask(MemorySegment struct, int fieldValue) { - struct.set(writeMask$LAYOUT, writeMask$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCommandBufferDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCommandBufferDescriptor.java deleted file mode 100644 index 61d312981..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCommandBufferDescriptor.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUCommandBufferDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * } - * } - */ -public class WGPUCommandBufferDescriptor { - - WGPUCommandBufferDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label") - ).withName("WGPUCommandBufferDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCommandEncoderDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCommandEncoderDescriptor.java deleted file mode 100644 index 1fb5caa55..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCommandEncoderDescriptor.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUCommandEncoderDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * } - * } - */ -public class WGPUCommandEncoderDescriptor { - - WGPUCommandEncoderDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label") - ).withName("WGPUCommandEncoderDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationInfo.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationInfo.java deleted file mode 100644 index 10c80fc9e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationInfo.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUCompilationInfo { - * const WGPUChainedStruct *nextInChain; - * size_t messageCount; - * const WGPUCompilationMessage *messages; - * } - * } - */ -public class WGPUCompilationInfo { - - WGPUCompilationInfo() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_LONG_LONG.withName("messageCount"), - WGPU.C_POINTER.withName("messages") - ).withName("WGPUCompilationInfo"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfLong messageCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("messageCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t messageCount - * } - */ - public static final OfLong messageCount$layout() { - return messageCount$LAYOUT; - } - - private static final long messageCount$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t messageCount - * } - */ - public static final long messageCount$offset() { - return messageCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t messageCount - * } - */ - public static long messageCount(MemorySegment struct) { - return struct.get(messageCount$LAYOUT, messageCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t messageCount - * } - */ - public static void messageCount(MemorySegment struct, long fieldValue) { - struct.set(messageCount$LAYOUT, messageCount$OFFSET, fieldValue); - } - - private static final AddressLayout messages$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("messages")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUCompilationMessage *messages - * } - */ - public static final AddressLayout messages$layout() { - return messages$LAYOUT; - } - - private static final long messages$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUCompilationMessage *messages - * } - */ - public static final long messages$offset() { - return messages$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUCompilationMessage *messages - * } - */ - public static MemorySegment messages(MemorySegment struct) { - return struct.get(messages$LAYOUT, messages$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUCompilationMessage *messages - * } - */ - public static void messages(MemorySegment struct, MemorySegment fieldValue) { - struct.set(messages$LAYOUT, messages$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationInfoCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationInfoCallback.java deleted file mode 100644 index 4e611ddbe..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationInfoCallback.java +++ /dev/null @@ -1,73 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUCompilationInfoCallback)(WGPUCompilationInfoRequestStatus, const struct WGPUCompilationInfo { - * const WGPUChainedStruct *nextInChain; - * size_t messageCount; - * const WGPUCompilationMessage *messages; - * } *, void *) - * } - */ -public class WGPUCompilationInfoCallback { - - WGPUCompilationInfoCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(int status, MemorySegment compilationInfo, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUCompilationInfoCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUCompilationInfoCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,int status, MemorySegment compilationInfo, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, status, compilationInfo, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationMessage.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationMessage.java deleted file mode 100644 index 505ab8eea..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCompilationMessage.java +++ /dev/null @@ -1,542 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUCompilationMessage { - * const WGPUChainedStruct *nextInChain; - * const char *message; - * WGPUCompilationMessageType type; - * uint64_t lineNum; - * uint64_t linePos; - * uint64_t offset; - * uint64_t length; - * uint64_t utf16LinePos; - * uint64_t utf16Offset; - * uint64_t utf16Length; - * } - * } - */ -public class WGPUCompilationMessage { - - WGPUCompilationMessage() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("message"), - WGPU.C_INT.withName("type"), - MemoryLayout.paddingLayout(4), - WGPU.C_LONG_LONG.withName("lineNum"), - WGPU.C_LONG_LONG.withName("linePos"), - WGPU.C_LONG_LONG.withName("offset"), - WGPU.C_LONG_LONG.withName("length"), - WGPU.C_LONG_LONG.withName("utf16LinePos"), - WGPU.C_LONG_LONG.withName("utf16Offset"), - WGPU.C_LONG_LONG.withName("utf16Length") - ).withName("WGPUCompilationMessage"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout message$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("message")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *message - * } - */ - public static final AddressLayout message$layout() { - return message$LAYOUT; - } - - private static final long message$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *message - * } - */ - public static final long message$offset() { - return message$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *message - * } - */ - public static MemorySegment message(MemorySegment struct) { - return struct.get(message$LAYOUT, message$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *message - * } - */ - public static void message(MemorySegment struct, MemorySegment fieldValue) { - struct.set(message$LAYOUT, message$OFFSET, fieldValue); - } - - private static final OfInt type$LAYOUT = (OfInt)$LAYOUT.select(groupElement("type")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUCompilationMessageType type - * } - */ - public static final OfInt type$layout() { - return type$LAYOUT; - } - - private static final long type$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUCompilationMessageType type - * } - */ - public static final long type$offset() { - return type$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUCompilationMessageType type - * } - */ - public static int type(MemorySegment struct) { - return struct.get(type$LAYOUT, type$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUCompilationMessageType type - * } - */ - public static void type(MemorySegment struct, int fieldValue) { - struct.set(type$LAYOUT, type$OFFSET, fieldValue); - } - - private static final OfLong lineNum$LAYOUT = (OfLong)$LAYOUT.select(groupElement("lineNum")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t lineNum - * } - */ - public static final OfLong lineNum$layout() { - return lineNum$LAYOUT; - } - - private static final long lineNum$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t lineNum - * } - */ - public static final long lineNum$offset() { - return lineNum$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t lineNum - * } - */ - public static long lineNum(MemorySegment struct) { - return struct.get(lineNum$LAYOUT, lineNum$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t lineNum - * } - */ - public static void lineNum(MemorySegment struct, long fieldValue) { - struct.set(lineNum$LAYOUT, lineNum$OFFSET, fieldValue); - } - - private static final OfLong linePos$LAYOUT = (OfLong)$LAYOUT.select(groupElement("linePos")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t linePos - * } - */ - public static final OfLong linePos$layout() { - return linePos$LAYOUT; - } - - private static final long linePos$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t linePos - * } - */ - public static final long linePos$offset() { - return linePos$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t linePos - * } - */ - public static long linePos(MemorySegment struct) { - return struct.get(linePos$LAYOUT, linePos$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t linePos - * } - */ - public static void linePos(MemorySegment struct, long fieldValue) { - struct.set(linePos$LAYOUT, linePos$OFFSET, fieldValue); - } - - private static final OfLong offset$LAYOUT = (OfLong)$LAYOUT.select(groupElement("offset")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static final OfLong offset$layout() { - return offset$LAYOUT; - } - - private static final long offset$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static final long offset$offset() { - return offset$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static long offset(MemorySegment struct) { - return struct.get(offset$LAYOUT, offset$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static void offset(MemorySegment struct, long fieldValue) { - struct.set(offset$LAYOUT, offset$OFFSET, fieldValue); - } - - private static final OfLong length$LAYOUT = (OfLong)$LAYOUT.select(groupElement("length")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t length - * } - */ - public static final OfLong length$layout() { - return length$LAYOUT; - } - - private static final long length$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t length - * } - */ - public static final long length$offset() { - return length$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t length - * } - */ - public static long length(MemorySegment struct) { - return struct.get(length$LAYOUT, length$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t length - * } - */ - public static void length(MemorySegment struct, long fieldValue) { - struct.set(length$LAYOUT, length$OFFSET, fieldValue); - } - - private static final OfLong utf16LinePos$LAYOUT = (OfLong)$LAYOUT.select(groupElement("utf16LinePos")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t utf16LinePos - * } - */ - public static final OfLong utf16LinePos$layout() { - return utf16LinePos$LAYOUT; - } - - private static final long utf16LinePos$OFFSET = 56; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t utf16LinePos - * } - */ - public static final long utf16LinePos$offset() { - return utf16LinePos$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t utf16LinePos - * } - */ - public static long utf16LinePos(MemorySegment struct) { - return struct.get(utf16LinePos$LAYOUT, utf16LinePos$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t utf16LinePos - * } - */ - public static void utf16LinePos(MemorySegment struct, long fieldValue) { - struct.set(utf16LinePos$LAYOUT, utf16LinePos$OFFSET, fieldValue); - } - - private static final OfLong utf16Offset$LAYOUT = (OfLong)$LAYOUT.select(groupElement("utf16Offset")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t utf16Offset - * } - */ - public static final OfLong utf16Offset$layout() { - return utf16Offset$LAYOUT; - } - - private static final long utf16Offset$OFFSET = 64; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t utf16Offset - * } - */ - public static final long utf16Offset$offset() { - return utf16Offset$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t utf16Offset - * } - */ - public static long utf16Offset(MemorySegment struct) { - return struct.get(utf16Offset$LAYOUT, utf16Offset$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t utf16Offset - * } - */ - public static void utf16Offset(MemorySegment struct, long fieldValue) { - struct.set(utf16Offset$LAYOUT, utf16Offset$OFFSET, fieldValue); - } - - private static final OfLong utf16Length$LAYOUT = (OfLong)$LAYOUT.select(groupElement("utf16Length")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t utf16Length - * } - */ - public static final OfLong utf16Length$layout() { - return utf16Length$LAYOUT; - } - - private static final long utf16Length$OFFSET = 72; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t utf16Length - * } - */ - public static final long utf16Length$offset() { - return utf16Length$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t utf16Length - * } - */ - public static long utf16Length(MemorySegment struct) { - return struct.get(utf16Length$LAYOUT, utf16Length$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t utf16Length - * } - */ - public static void utf16Length(MemorySegment struct, long fieldValue) { - struct.set(utf16Length$LAYOUT, utf16Length$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePassDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePassDescriptor.java deleted file mode 100644 index c382357ac..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePassDescriptor.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUComputePassDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * const WGPUComputePassTimestampWrites *timestampWrites; - * } - * } - */ -public class WGPUComputePassDescriptor { - - WGPUComputePassDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_POINTER.withName("timestampWrites") - ).withName("WGPUComputePassDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final AddressLayout timestampWrites$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("timestampWrites")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUComputePassTimestampWrites *timestampWrites - * } - */ - public static final AddressLayout timestampWrites$layout() { - return timestampWrites$LAYOUT; - } - - private static final long timestampWrites$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUComputePassTimestampWrites *timestampWrites - * } - */ - public static final long timestampWrites$offset() { - return timestampWrites$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUComputePassTimestampWrites *timestampWrites - * } - */ - public static MemorySegment timestampWrites(MemorySegment struct) { - return struct.get(timestampWrites$LAYOUT, timestampWrites$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUComputePassTimestampWrites *timestampWrites - * } - */ - public static void timestampWrites(MemorySegment struct, MemorySegment fieldValue) { - struct.set(timestampWrites$LAYOUT, timestampWrites$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePassTimestampWrites.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePassTimestampWrites.java deleted file mode 100644 index f2bec4b13..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePassTimestampWrites.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUComputePassTimestampWrites { - * WGPUQuerySet querySet; - * uint32_t beginningOfPassWriteIndex; - * uint32_t endOfPassWriteIndex; - * } - * } - */ -public class WGPUComputePassTimestampWrites { - - WGPUComputePassTimestampWrites() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("querySet"), - WGPU.C_INT.withName("beginningOfPassWriteIndex"), - WGPU.C_INT.withName("endOfPassWriteIndex") - ).withName("WGPUComputePassTimestampWrites"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout querySet$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("querySet")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUQuerySet querySet - * } - */ - public static final AddressLayout querySet$layout() { - return querySet$LAYOUT; - } - - private static final long querySet$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUQuerySet querySet - * } - */ - public static final long querySet$offset() { - return querySet$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUQuerySet querySet - * } - */ - public static MemorySegment querySet(MemorySegment struct) { - return struct.get(querySet$LAYOUT, querySet$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUQuerySet querySet - * } - */ - public static void querySet(MemorySegment struct, MemorySegment fieldValue) { - struct.set(querySet$LAYOUT, querySet$OFFSET, fieldValue); - } - - private static final OfInt beginningOfPassWriteIndex$LAYOUT = (OfInt)$LAYOUT.select(groupElement("beginningOfPassWriteIndex")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t beginningOfPassWriteIndex - * } - */ - public static final OfInt beginningOfPassWriteIndex$layout() { - return beginningOfPassWriteIndex$LAYOUT; - } - - private static final long beginningOfPassWriteIndex$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t beginningOfPassWriteIndex - * } - */ - public static final long beginningOfPassWriteIndex$offset() { - return beginningOfPassWriteIndex$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t beginningOfPassWriteIndex - * } - */ - public static int beginningOfPassWriteIndex(MemorySegment struct) { - return struct.get(beginningOfPassWriteIndex$LAYOUT, beginningOfPassWriteIndex$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t beginningOfPassWriteIndex - * } - */ - public static void beginningOfPassWriteIndex(MemorySegment struct, int fieldValue) { - struct.set(beginningOfPassWriteIndex$LAYOUT, beginningOfPassWriteIndex$OFFSET, fieldValue); - } - - private static final OfInt endOfPassWriteIndex$LAYOUT = (OfInt)$LAYOUT.select(groupElement("endOfPassWriteIndex")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t endOfPassWriteIndex - * } - */ - public static final OfInt endOfPassWriteIndex$layout() { - return endOfPassWriteIndex$LAYOUT; - } - - private static final long endOfPassWriteIndex$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t endOfPassWriteIndex - * } - */ - public static final long endOfPassWriteIndex$offset() { - return endOfPassWriteIndex$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t endOfPassWriteIndex - * } - */ - public static int endOfPassWriteIndex(MemorySegment struct) { - return struct.get(endOfPassWriteIndex$LAYOUT, endOfPassWriteIndex$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t endOfPassWriteIndex - * } - */ - public static void endOfPassWriteIndex(MemorySegment struct, int fieldValue) { - struct.set(endOfPassWriteIndex$LAYOUT, endOfPassWriteIndex$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePipelineDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePipelineDescriptor.java deleted file mode 100644 index 93fe10cc1..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUComputePipelineDescriptor.java +++ /dev/null @@ -1,265 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUComputePipelineDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * WGPUPipelineLayout layout; - * WGPUProgrammableStageDescriptor compute; - * } - * } - */ -public class WGPUComputePipelineDescriptor { - - WGPUComputePipelineDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_POINTER.withName("layout"), - WGPUProgrammableStageDescriptor.layout().withName("compute") - ).withName("WGPUComputePipelineDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final AddressLayout layout$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("layout")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static final AddressLayout layout$layout() { - return layout$LAYOUT; - } - - private static final long layout$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static final long layout$offset() { - return layout$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static MemorySegment layout(MemorySegment struct) { - return struct.get(layout$LAYOUT, layout$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static void layout(MemorySegment struct, MemorySegment fieldValue) { - struct.set(layout$LAYOUT, layout$OFFSET, fieldValue); - } - - private static final GroupLayout compute$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("compute")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUProgrammableStageDescriptor compute - * } - */ - public static final GroupLayout compute$layout() { - return compute$LAYOUT; - } - - private static final long compute$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUProgrammableStageDescriptor compute - * } - */ - public static final long compute$offset() { - return compute$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUProgrammableStageDescriptor compute - * } - */ - public static MemorySegment compute(MemorySegment struct) { - return struct.asSlice(compute$OFFSET, compute$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUProgrammableStageDescriptor compute - * } - */ - public static void compute(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, compute$OFFSET, compute$LAYOUT.byteSize()); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUConstantEntry.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUConstantEntry.java deleted file mode 100644 index 8b549c56b..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUConstantEntry.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUConstantEntry { - * const WGPUChainedStruct *nextInChain; - * const char *key; - * double value; - * } - * } - */ -public class WGPUConstantEntry { - - WGPUConstantEntry() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("key"), - WGPU.C_DOUBLE.withName("value") - ).withName("WGPUConstantEntry"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout key$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("key")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *key - * } - */ - public static final AddressLayout key$layout() { - return key$LAYOUT; - } - - private static final long key$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *key - * } - */ - public static final long key$offset() { - return key$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *key - * } - */ - public static MemorySegment key(MemorySegment struct) { - return struct.get(key$LAYOUT, key$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *key - * } - */ - public static void key(MemorySegment struct, MemorySegment fieldValue) { - struct.set(key$LAYOUT, key$OFFSET, fieldValue); - } - - private static final OfDouble value$LAYOUT = (OfDouble)$LAYOUT.select(groupElement("value")); - - /** - * Layout for field: - * {@snippet lang=c : - * double value - * } - */ - public static final OfDouble value$layout() { - return value$LAYOUT; - } - - private static final long value$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * double value - * } - */ - public static final long value$offset() { - return value$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * double value - * } - */ - public static double value(MemorySegment struct) { - return struct.get(value$LAYOUT, value$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * double value - * } - */ - public static void value(MemorySegment struct, double fieldValue) { - struct.set(value$LAYOUT, value$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCreateComputePipelineAsyncCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCreateComputePipelineAsyncCallback.java deleted file mode 100644 index 7f300d676..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCreateComputePipelineAsyncCallback.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUCreateComputePipelineAsyncCallback)(WGPUCreatePipelineAsyncStatus, WGPUComputePipeline, const char *, void *) - * } - */ -public class WGPUCreateComputePipelineAsyncCallback { - - WGPUCreateComputePipelineAsyncCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(int status, MemorySegment pipeline, MemorySegment message, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUCreateComputePipelineAsyncCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUCreateComputePipelineAsyncCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,int status, MemorySegment pipeline, MemorySegment message, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, status, pipeline, message, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCreateRenderPipelineAsyncCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCreateRenderPipelineAsyncCallback.java deleted file mode 100644 index 4788dc5fd..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUCreateRenderPipelineAsyncCallback.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUCreateRenderPipelineAsyncCallback)(WGPUCreatePipelineAsyncStatus, WGPURenderPipeline, const char *, void *) - * } - */ -public class WGPUCreateRenderPipelineAsyncCallback { - - WGPUCreateRenderPipelineAsyncCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(int status, MemorySegment pipeline, MemorySegment message, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUCreateRenderPipelineAsyncCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUCreateRenderPipelineAsyncCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,int status, MemorySegment pipeline, MemorySegment message, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, status, pipeline, message, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDepthStencilState.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDepthStencilState.java deleted file mode 100644 index e34f7184c..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDepthStencilState.java +++ /dev/null @@ -1,587 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUDepthStencilState { - * const WGPUChainedStruct *nextInChain; - * WGPUTextureFormat format; - * WGPUBool depthWriteEnabled; - * WGPUCompareFunction depthCompare; - * WGPUStencilFaceState stencilFront; - * WGPUStencilFaceState stencilBack; - * uint32_t stencilReadMask; - * uint32_t stencilWriteMask; - * int32_t depthBias; - * float depthBiasSlopeScale; - * float depthBiasClamp; - * } - * } - */ -public class WGPUDepthStencilState { - - WGPUDepthStencilState() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("format"), - WGPU.C_INT.withName("depthWriteEnabled"), - WGPU.C_INT.withName("depthCompare"), - WGPUStencilFaceState.layout().withName("stencilFront"), - WGPUStencilFaceState.layout().withName("stencilBack"), - WGPU.C_INT.withName("stencilReadMask"), - WGPU.C_INT.withName("stencilWriteMask"), - WGPU.C_INT.withName("depthBias"), - WGPU.C_FLOAT.withName("depthBiasSlopeScale"), - WGPU.C_FLOAT.withName("depthBiasClamp") - ).withName("WGPUDepthStencilState"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt format$LAYOUT = (OfInt)$LAYOUT.select(groupElement("format")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final OfInt format$layout() { - return format$LAYOUT; - } - - private static final long format$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final long format$offset() { - return format$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static int format(MemorySegment struct) { - return struct.get(format$LAYOUT, format$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static void format(MemorySegment struct, int fieldValue) { - struct.set(format$LAYOUT, format$OFFSET, fieldValue); - } - - private static final OfInt depthWriteEnabled$LAYOUT = (OfInt)$LAYOUT.select(groupElement("depthWriteEnabled")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool depthWriteEnabled - * } - */ - public static final OfInt depthWriteEnabled$layout() { - return depthWriteEnabled$LAYOUT; - } - - private static final long depthWriteEnabled$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool depthWriteEnabled - * } - */ - public static final long depthWriteEnabled$offset() { - return depthWriteEnabled$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool depthWriteEnabled - * } - */ - public static int depthWriteEnabled(MemorySegment struct) { - return struct.get(depthWriteEnabled$LAYOUT, depthWriteEnabled$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool depthWriteEnabled - * } - */ - public static void depthWriteEnabled(MemorySegment struct, int fieldValue) { - struct.set(depthWriteEnabled$LAYOUT, depthWriteEnabled$OFFSET, fieldValue); - } - - private static final OfInt depthCompare$LAYOUT = (OfInt)$LAYOUT.select(groupElement("depthCompare")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUCompareFunction depthCompare - * } - */ - public static final OfInt depthCompare$layout() { - return depthCompare$LAYOUT; - } - - private static final long depthCompare$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUCompareFunction depthCompare - * } - */ - public static final long depthCompare$offset() { - return depthCompare$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUCompareFunction depthCompare - * } - */ - public static int depthCompare(MemorySegment struct) { - return struct.get(depthCompare$LAYOUT, depthCompare$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUCompareFunction depthCompare - * } - */ - public static void depthCompare(MemorySegment struct, int fieldValue) { - struct.set(depthCompare$LAYOUT, depthCompare$OFFSET, fieldValue); - } - - private static final GroupLayout stencilFront$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("stencilFront")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUStencilFaceState stencilFront - * } - */ - public static final GroupLayout stencilFront$layout() { - return stencilFront$LAYOUT; - } - - private static final long stencilFront$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUStencilFaceState stencilFront - * } - */ - public static final long stencilFront$offset() { - return stencilFront$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUStencilFaceState stencilFront - * } - */ - public static MemorySegment stencilFront(MemorySegment struct) { - return struct.asSlice(stencilFront$OFFSET, stencilFront$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUStencilFaceState stencilFront - * } - */ - public static void stencilFront(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, stencilFront$OFFSET, stencilFront$LAYOUT.byteSize()); - } - - private static final GroupLayout stencilBack$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("stencilBack")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUStencilFaceState stencilBack - * } - */ - public static final GroupLayout stencilBack$layout() { - return stencilBack$LAYOUT; - } - - private static final long stencilBack$OFFSET = 36; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUStencilFaceState stencilBack - * } - */ - public static final long stencilBack$offset() { - return stencilBack$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUStencilFaceState stencilBack - * } - */ - public static MemorySegment stencilBack(MemorySegment struct) { - return struct.asSlice(stencilBack$OFFSET, stencilBack$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUStencilFaceState stencilBack - * } - */ - public static void stencilBack(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, stencilBack$OFFSET, stencilBack$LAYOUT.byteSize()); - } - - private static final OfInt stencilReadMask$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stencilReadMask")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t stencilReadMask - * } - */ - public static final OfInt stencilReadMask$layout() { - return stencilReadMask$LAYOUT; - } - - private static final long stencilReadMask$OFFSET = 52; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t stencilReadMask - * } - */ - public static final long stencilReadMask$offset() { - return stencilReadMask$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t stencilReadMask - * } - */ - public static int stencilReadMask(MemorySegment struct) { - return struct.get(stencilReadMask$LAYOUT, stencilReadMask$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t stencilReadMask - * } - */ - public static void stencilReadMask(MemorySegment struct, int fieldValue) { - struct.set(stencilReadMask$LAYOUT, stencilReadMask$OFFSET, fieldValue); - } - - private static final OfInt stencilWriteMask$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stencilWriteMask")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t stencilWriteMask - * } - */ - public static final OfInt stencilWriteMask$layout() { - return stencilWriteMask$LAYOUT; - } - - private static final long stencilWriteMask$OFFSET = 56; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t stencilWriteMask - * } - */ - public static final long stencilWriteMask$offset() { - return stencilWriteMask$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t stencilWriteMask - * } - */ - public static int stencilWriteMask(MemorySegment struct) { - return struct.get(stencilWriteMask$LAYOUT, stencilWriteMask$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t stencilWriteMask - * } - */ - public static void stencilWriteMask(MemorySegment struct, int fieldValue) { - struct.set(stencilWriteMask$LAYOUT, stencilWriteMask$OFFSET, fieldValue); - } - - private static final OfInt depthBias$LAYOUT = (OfInt)$LAYOUT.select(groupElement("depthBias")); - - /** - * Layout for field: - * {@snippet lang=c : - * int32_t depthBias - * } - */ - public static final OfInt depthBias$layout() { - return depthBias$LAYOUT; - } - - private static final long depthBias$OFFSET = 60; - - /** - * Offset for field: - * {@snippet lang=c : - * int32_t depthBias - * } - */ - public static final long depthBias$offset() { - return depthBias$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * int32_t depthBias - * } - */ - public static int depthBias(MemorySegment struct) { - return struct.get(depthBias$LAYOUT, depthBias$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * int32_t depthBias - * } - */ - public static void depthBias(MemorySegment struct, int fieldValue) { - struct.set(depthBias$LAYOUT, depthBias$OFFSET, fieldValue); - } - - private static final OfFloat depthBiasSlopeScale$LAYOUT = (OfFloat)$LAYOUT.select(groupElement("depthBiasSlopeScale")); - - /** - * Layout for field: - * {@snippet lang=c : - * float depthBiasSlopeScale - * } - */ - public static final OfFloat depthBiasSlopeScale$layout() { - return depthBiasSlopeScale$LAYOUT; - } - - private static final long depthBiasSlopeScale$OFFSET = 64; - - /** - * Offset for field: - * {@snippet lang=c : - * float depthBiasSlopeScale - * } - */ - public static final long depthBiasSlopeScale$offset() { - return depthBiasSlopeScale$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * float depthBiasSlopeScale - * } - */ - public static float depthBiasSlopeScale(MemorySegment struct) { - return struct.get(depthBiasSlopeScale$LAYOUT, depthBiasSlopeScale$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * float depthBiasSlopeScale - * } - */ - public static void depthBiasSlopeScale(MemorySegment struct, float fieldValue) { - struct.set(depthBiasSlopeScale$LAYOUT, depthBiasSlopeScale$OFFSET, fieldValue); - } - - private static final OfFloat depthBiasClamp$LAYOUT = (OfFloat)$LAYOUT.select(groupElement("depthBiasClamp")); - - /** - * Layout for field: - * {@snippet lang=c : - * float depthBiasClamp - * } - */ - public static final OfFloat depthBiasClamp$layout() { - return depthBiasClamp$LAYOUT; - } - - private static final long depthBiasClamp$OFFSET = 68; - - /** - * Offset for field: - * {@snippet lang=c : - * float depthBiasClamp - * } - */ - public static final long depthBiasClamp$offset() { - return depthBiasClamp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * float depthBiasClamp - * } - */ - public static float depthBiasClamp(MemorySegment struct) { - return struct.get(depthBiasClamp$LAYOUT, depthBiasClamp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * float depthBiasClamp - * } - */ - public static void depthBiasClamp(MemorySegment struct, float fieldValue) { - struct.set(depthBiasClamp$LAYOUT, depthBiasClamp$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceDescriptor.java deleted file mode 100644 index e861748d8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceDescriptor.java +++ /dev/null @@ -1,449 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUDeviceDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * size_t requiredFeatureCount; - * const WGPUFeatureName *requiredFeatures; - * const WGPURequiredLimits *requiredLimits; - * WGPUQueueDescriptor defaultQueue; - * WGPUDeviceLostCallback deviceLostCallback; - * void *deviceLostUserdata; - * } - * } - */ -public class WGPUDeviceDescriptor { - - WGPUDeviceDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_LONG_LONG.withName("requiredFeatureCount"), - WGPU.C_POINTER.withName("requiredFeatures"), - WGPU.C_POINTER.withName("requiredLimits"), - WGPUQueueDescriptor.layout().withName("defaultQueue"), - WGPU.C_POINTER.withName("deviceLostCallback"), - WGPU.C_POINTER.withName("deviceLostUserdata") - ).withName("WGPUDeviceDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfLong requiredFeatureCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("requiredFeatureCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t requiredFeatureCount - * } - */ - public static final OfLong requiredFeatureCount$layout() { - return requiredFeatureCount$LAYOUT; - } - - private static final long requiredFeatureCount$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t requiredFeatureCount - * } - */ - public static final long requiredFeatureCount$offset() { - return requiredFeatureCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t requiredFeatureCount - * } - */ - public static long requiredFeatureCount(MemorySegment struct) { - return struct.get(requiredFeatureCount$LAYOUT, requiredFeatureCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t requiredFeatureCount - * } - */ - public static void requiredFeatureCount(MemorySegment struct, long fieldValue) { - struct.set(requiredFeatureCount$LAYOUT, requiredFeatureCount$OFFSET, fieldValue); - } - - private static final AddressLayout requiredFeatures$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("requiredFeatures")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUFeatureName *requiredFeatures - * } - */ - public static final AddressLayout requiredFeatures$layout() { - return requiredFeatures$LAYOUT; - } - - private static final long requiredFeatures$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUFeatureName *requiredFeatures - * } - */ - public static final long requiredFeatures$offset() { - return requiredFeatures$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUFeatureName *requiredFeatures - * } - */ - public static MemorySegment requiredFeatures(MemorySegment struct) { - return struct.get(requiredFeatures$LAYOUT, requiredFeatures$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUFeatureName *requiredFeatures - * } - */ - public static void requiredFeatures(MemorySegment struct, MemorySegment fieldValue) { - struct.set(requiredFeatures$LAYOUT, requiredFeatures$OFFSET, fieldValue); - } - - private static final AddressLayout requiredLimits$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("requiredLimits")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPURequiredLimits *requiredLimits - * } - */ - public static final AddressLayout requiredLimits$layout() { - return requiredLimits$LAYOUT; - } - - private static final long requiredLimits$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPURequiredLimits *requiredLimits - * } - */ - public static final long requiredLimits$offset() { - return requiredLimits$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPURequiredLimits *requiredLimits - * } - */ - public static MemorySegment requiredLimits(MemorySegment struct) { - return struct.get(requiredLimits$LAYOUT, requiredLimits$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPURequiredLimits *requiredLimits - * } - */ - public static void requiredLimits(MemorySegment struct, MemorySegment fieldValue) { - struct.set(requiredLimits$LAYOUT, requiredLimits$OFFSET, fieldValue); - } - - private static final GroupLayout defaultQueue$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("defaultQueue")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUQueueDescriptor defaultQueue - * } - */ - public static final GroupLayout defaultQueue$layout() { - return defaultQueue$LAYOUT; - } - - private static final long defaultQueue$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUQueueDescriptor defaultQueue - * } - */ - public static final long defaultQueue$offset() { - return defaultQueue$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUQueueDescriptor defaultQueue - * } - */ - public static MemorySegment defaultQueue(MemorySegment struct) { - return struct.asSlice(defaultQueue$OFFSET, defaultQueue$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUQueueDescriptor defaultQueue - * } - */ - public static void defaultQueue(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, defaultQueue$OFFSET, defaultQueue$LAYOUT.byteSize()); - } - - private static final AddressLayout deviceLostCallback$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("deviceLostCallback")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUDeviceLostCallback deviceLostCallback - * } - */ - public static final AddressLayout deviceLostCallback$layout() { - return deviceLostCallback$LAYOUT; - } - - private static final long deviceLostCallback$OFFSET = 56; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUDeviceLostCallback deviceLostCallback - * } - */ - public static final long deviceLostCallback$offset() { - return deviceLostCallback$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUDeviceLostCallback deviceLostCallback - * } - */ - public static MemorySegment deviceLostCallback(MemorySegment struct) { - return struct.get(deviceLostCallback$LAYOUT, deviceLostCallback$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUDeviceLostCallback deviceLostCallback - * } - */ - public static void deviceLostCallback(MemorySegment struct, MemorySegment fieldValue) { - struct.set(deviceLostCallback$LAYOUT, deviceLostCallback$OFFSET, fieldValue); - } - - private static final AddressLayout deviceLostUserdata$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("deviceLostUserdata")); - - /** - * Layout for field: - * {@snippet lang=c : - * void *deviceLostUserdata - * } - */ - public static final AddressLayout deviceLostUserdata$layout() { - return deviceLostUserdata$LAYOUT; - } - - private static final long deviceLostUserdata$OFFSET = 64; - - /** - * Offset for field: - * {@snippet lang=c : - * void *deviceLostUserdata - * } - */ - public static final long deviceLostUserdata$offset() { - return deviceLostUserdata$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * void *deviceLostUserdata - * } - */ - public static MemorySegment deviceLostUserdata(MemorySegment struct) { - return struct.get(deviceLostUserdata$LAYOUT, deviceLostUserdata$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * void *deviceLostUserdata - * } - */ - public static void deviceLostUserdata(MemorySegment struct, MemorySegment fieldValue) { - struct.set(deviceLostUserdata$LAYOUT, deviceLostUserdata$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceExtras.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceExtras.java deleted file mode 100644 index 8842e97d8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceExtras.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUDeviceExtras { - * WGPUChainedStruct chain; - * const char *tracePath; - * } - * } - */ -public class WGPUDeviceExtras { - - WGPUDeviceExtras() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("tracePath") - ).withName("WGPUDeviceExtras"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout tracePath$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("tracePath")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *tracePath - * } - */ - public static final AddressLayout tracePath$layout() { - return tracePath$LAYOUT; - } - - private static final long tracePath$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *tracePath - * } - */ - public static final long tracePath$offset() { - return tracePath$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *tracePath - * } - */ - public static MemorySegment tracePath(MemorySegment struct) { - return struct.get(tracePath$LAYOUT, tracePath$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *tracePath - * } - */ - public static void tracePath(MemorySegment struct, MemorySegment fieldValue) { - struct.set(tracePath$LAYOUT, tracePath$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceLostCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceLostCallback.java deleted file mode 100644 index 043392f13..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUDeviceLostCallback.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUDeviceLostCallback)(WGPUDeviceLostReason, const char *, void *) - * } - */ -public class WGPUDeviceLostCallback { - - WGPUDeviceLostCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(int reason, MemorySegment message, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUDeviceLostCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUDeviceLostCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,int reason, MemorySegment message, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, reason, message, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUErrorCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUErrorCallback.java deleted file mode 100644 index 5396d37d3..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUErrorCallback.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUErrorCallback)(WGPUErrorType, const char *, void *) - * } - */ -public class WGPUErrorCallback { - - WGPUErrorCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(int type, MemorySegment message, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUErrorCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUErrorCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,int type, MemorySegment message, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, type, message, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUExtent3D.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUExtent3D.java deleted file mode 100644 index dfaa4afee..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUExtent3D.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUExtent3D { - * uint32_t width; - * uint32_t height; - * uint32_t depthOrArrayLayers; - * } - * } - */ -public class WGPUExtent3D { - - WGPUExtent3D() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_INT.withName("width"), - WGPU.C_INT.withName("height"), - WGPU.C_INT.withName("depthOrArrayLayers") - ).withName("WGPUExtent3D"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfInt width$LAYOUT = (OfInt)$LAYOUT.select(groupElement("width")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t width - * } - */ - public static final OfInt width$layout() { - return width$LAYOUT; - } - - private static final long width$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t width - * } - */ - public static final long width$offset() { - return width$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t width - * } - */ - public static int width(MemorySegment struct) { - return struct.get(width$LAYOUT, width$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t width - * } - */ - public static void width(MemorySegment struct, int fieldValue) { - struct.set(width$LAYOUT, width$OFFSET, fieldValue); - } - - private static final OfInt height$LAYOUT = (OfInt)$LAYOUT.select(groupElement("height")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t height - * } - */ - public static final OfInt height$layout() { - return height$LAYOUT; - } - - private static final long height$OFFSET = 4; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t height - * } - */ - public static final long height$offset() { - return height$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t height - * } - */ - public static int height(MemorySegment struct) { - return struct.get(height$LAYOUT, height$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t height - * } - */ - public static void height(MemorySegment struct, int fieldValue) { - struct.set(height$LAYOUT, height$OFFSET, fieldValue); - } - - private static final OfInt depthOrArrayLayers$LAYOUT = (OfInt)$LAYOUT.select(groupElement("depthOrArrayLayers")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t depthOrArrayLayers - * } - */ - public static final OfInt depthOrArrayLayers$layout() { - return depthOrArrayLayers$LAYOUT; - } - - private static final long depthOrArrayLayers$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t depthOrArrayLayers - * } - */ - public static final long depthOrArrayLayers$offset() { - return depthOrArrayLayers$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t depthOrArrayLayers - * } - */ - public static int depthOrArrayLayers(MemorySegment struct) { - return struct.get(depthOrArrayLayers$LAYOUT, depthOrArrayLayers$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t depthOrArrayLayers - * } - */ - public static void depthOrArrayLayers(MemorySegment struct, int fieldValue) { - struct.set(depthOrArrayLayers$LAYOUT, depthOrArrayLayers$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUFragmentState.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUFragmentState.java deleted file mode 100644 index bd7e68367..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUFragmentState.java +++ /dev/null @@ -1,403 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUFragmentState { - * const WGPUChainedStruct *nextInChain; - * WGPUShaderModule module; - * const char *entryPoint; - * size_t constantCount; - * const WGPUConstantEntry *constants; - * size_t targetCount; - * const WGPUColorTargetState *targets; - * } - * } - */ -public class WGPUFragmentState { - - WGPUFragmentState() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("module"), - WGPU.C_POINTER.withName("entryPoint"), - WGPU.C_LONG_LONG.withName("constantCount"), - WGPU.C_POINTER.withName("constants"), - WGPU.C_LONG_LONG.withName("targetCount"), - WGPU.C_POINTER.withName("targets") - ).withName("WGPUFragmentState"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout module$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("module")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static final AddressLayout module$layout() { - return module$LAYOUT; - } - - private static final long module$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static final long module$offset() { - return module$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static MemorySegment module(MemorySegment struct) { - return struct.get(module$LAYOUT, module$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static void module(MemorySegment struct, MemorySegment fieldValue) { - struct.set(module$LAYOUT, module$OFFSET, fieldValue); - } - - private static final AddressLayout entryPoint$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("entryPoint")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static final AddressLayout entryPoint$layout() { - return entryPoint$LAYOUT; - } - - private static final long entryPoint$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static final long entryPoint$offset() { - return entryPoint$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static MemorySegment entryPoint(MemorySegment struct) { - return struct.get(entryPoint$LAYOUT, entryPoint$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static void entryPoint(MemorySegment struct, MemorySegment fieldValue) { - struct.set(entryPoint$LAYOUT, entryPoint$OFFSET, fieldValue); - } - - private static final OfLong constantCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("constantCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static final OfLong constantCount$layout() { - return constantCount$LAYOUT; - } - - private static final long constantCount$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static final long constantCount$offset() { - return constantCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static long constantCount(MemorySegment struct) { - return struct.get(constantCount$LAYOUT, constantCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static void constantCount(MemorySegment struct, long fieldValue) { - struct.set(constantCount$LAYOUT, constantCount$OFFSET, fieldValue); - } - - private static final AddressLayout constants$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("constants")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static final AddressLayout constants$layout() { - return constants$LAYOUT; - } - - private static final long constants$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static final long constants$offset() { - return constants$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static MemorySegment constants(MemorySegment struct) { - return struct.get(constants$LAYOUT, constants$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static void constants(MemorySegment struct, MemorySegment fieldValue) { - struct.set(constants$LAYOUT, constants$OFFSET, fieldValue); - } - - private static final OfLong targetCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("targetCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t targetCount - * } - */ - public static final OfLong targetCount$layout() { - return targetCount$LAYOUT; - } - - private static final long targetCount$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t targetCount - * } - */ - public static final long targetCount$offset() { - return targetCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t targetCount - * } - */ - public static long targetCount(MemorySegment struct) { - return struct.get(targetCount$LAYOUT, targetCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t targetCount - * } - */ - public static void targetCount(MemorySegment struct, long fieldValue) { - struct.set(targetCount$LAYOUT, targetCount$OFFSET, fieldValue); - } - - private static final AddressLayout targets$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("targets")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUColorTargetState *targets - * } - */ - public static final AddressLayout targets$layout() { - return targets$LAYOUT; - } - - private static final long targets$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUColorTargetState *targets - * } - */ - public static final long targets$offset() { - return targets$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUColorTargetState *targets - * } - */ - public static MemorySegment targets(MemorySegment struct) { - return struct.get(targets$LAYOUT, targets$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUColorTargetState *targets - * } - */ - public static void targets(MemorySegment struct, MemorySegment fieldValue) { - struct.set(targets$LAYOUT, targets$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUGlobalReport.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUGlobalReport.java deleted file mode 100644 index 0971123a9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUGlobalReport.java +++ /dev/null @@ -1,358 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUGlobalReport { - * WGPURegistryReport surfaces; - * WGPUBackendType backendType; - * WGPUHubReport vulkan; - * WGPUHubReport metal; - * WGPUHubReport dx12; - * WGPUHubReport gl; - * } - * } - */ -public class WGPUGlobalReport { - - WGPUGlobalReport() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPURegistryReport.layout().withName("surfaces"), - WGPU.C_INT.withName("backendType"), - MemoryLayout.paddingLayout(4), - WGPUHubReport.layout().withName("vulkan"), - WGPUHubReport.layout().withName("metal"), - WGPUHubReport.layout().withName("dx12"), - WGPUHubReport.layout().withName("gl") - ).withName("WGPUGlobalReport"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout surfaces$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("surfaces")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport surfaces - * } - */ - public static final GroupLayout surfaces$layout() { - return surfaces$LAYOUT; - } - - private static final long surfaces$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport surfaces - * } - */ - public static final long surfaces$offset() { - return surfaces$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport surfaces - * } - */ - public static MemorySegment surfaces(MemorySegment struct) { - return struct.asSlice(surfaces$OFFSET, surfaces$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport surfaces - * } - */ - public static void surfaces(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, surfaces$OFFSET, surfaces$LAYOUT.byteSize()); - } - - private static final OfInt backendType$LAYOUT = (OfInt)$LAYOUT.select(groupElement("backendType")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static final OfInt backendType$layout() { - return backendType$LAYOUT; - } - - private static final long backendType$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static final long backendType$offset() { - return backendType$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static int backendType(MemorySegment struct) { - return struct.get(backendType$LAYOUT, backendType$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static void backendType(MemorySegment struct, int fieldValue) { - struct.set(backendType$LAYOUT, backendType$OFFSET, fieldValue); - } - - private static final GroupLayout vulkan$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("vulkan")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUHubReport vulkan - * } - */ - public static final GroupLayout vulkan$layout() { - return vulkan$LAYOUT; - } - - private static final long vulkan$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUHubReport vulkan - * } - */ - public static final long vulkan$offset() { - return vulkan$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUHubReport vulkan - * } - */ - public static MemorySegment vulkan(MemorySegment struct) { - return struct.asSlice(vulkan$OFFSET, vulkan$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUHubReport vulkan - * } - */ - public static void vulkan(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, vulkan$OFFSET, vulkan$LAYOUT.byteSize()); - } - - private static final GroupLayout metal$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("metal")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUHubReport metal - * } - */ - public static final GroupLayout metal$layout() { - return metal$LAYOUT; - } - - private static final long metal$OFFSET = 688; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUHubReport metal - * } - */ - public static final long metal$offset() { - return metal$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUHubReport metal - * } - */ - public static MemorySegment metal(MemorySegment struct) { - return struct.asSlice(metal$OFFSET, metal$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUHubReport metal - * } - */ - public static void metal(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, metal$OFFSET, metal$LAYOUT.byteSize()); - } - - private static final GroupLayout dx12$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("dx12")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUHubReport dx12 - * } - */ - public static final GroupLayout dx12$layout() { - return dx12$LAYOUT; - } - - private static final long dx12$OFFSET = 1328; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUHubReport dx12 - * } - */ - public static final long dx12$offset() { - return dx12$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUHubReport dx12 - * } - */ - public static MemorySegment dx12(MemorySegment struct) { - return struct.asSlice(dx12$OFFSET, dx12$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUHubReport dx12 - * } - */ - public static void dx12(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, dx12$OFFSET, dx12$LAYOUT.byteSize()); - } - - private static final GroupLayout gl$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("gl")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUHubReport gl - * } - */ - public static final GroupLayout gl$layout() { - return gl$LAYOUT; - } - - private static final long gl$OFFSET = 1968; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUHubReport gl - * } - */ - public static final long gl$offset() { - return gl$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUHubReport gl - * } - */ - public static MemorySegment gl(MemorySegment struct) { - return struct.asSlice(gl$OFFSET, gl$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUHubReport gl - * } - */ - public static void gl(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, gl$OFFSET, gl$LAYOUT.byteSize()); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUHubReport.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUHubReport.java deleted file mode 100644 index 1c95e4eed..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUHubReport.java +++ /dev/null @@ -1,817 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUHubReport { - * WGPURegistryReport adapters; - * WGPURegistryReport devices; - * WGPURegistryReport queues; - * WGPURegistryReport pipelineLayouts; - * WGPURegistryReport shaderModules; - * WGPURegistryReport bindGroupLayouts; - * WGPURegistryReport bindGroups; - * WGPURegistryReport commandBuffers; - * WGPURegistryReport renderBundles; - * WGPURegistryReport renderPipelines; - * WGPURegistryReport computePipelines; - * WGPURegistryReport querySets; - * WGPURegistryReport buffers; - * WGPURegistryReport textures; - * WGPURegistryReport textureViews; - * WGPURegistryReport samplers; - * } - * } - */ -public class WGPUHubReport { - - WGPUHubReport() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPURegistryReport.layout().withName("adapters"), - WGPURegistryReport.layout().withName("devices"), - WGPURegistryReport.layout().withName("queues"), - WGPURegistryReport.layout().withName("pipelineLayouts"), - WGPURegistryReport.layout().withName("shaderModules"), - WGPURegistryReport.layout().withName("bindGroupLayouts"), - WGPURegistryReport.layout().withName("bindGroups"), - WGPURegistryReport.layout().withName("commandBuffers"), - WGPURegistryReport.layout().withName("renderBundles"), - WGPURegistryReport.layout().withName("renderPipelines"), - WGPURegistryReport.layout().withName("computePipelines"), - WGPURegistryReport.layout().withName("querySets"), - WGPURegistryReport.layout().withName("buffers"), - WGPURegistryReport.layout().withName("textures"), - WGPURegistryReport.layout().withName("textureViews"), - WGPURegistryReport.layout().withName("samplers") - ).withName("WGPUHubReport"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout adapters$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("adapters")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport adapters - * } - */ - public static final GroupLayout adapters$layout() { - return adapters$LAYOUT; - } - - private static final long adapters$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport adapters - * } - */ - public static final long adapters$offset() { - return adapters$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport adapters - * } - */ - public static MemorySegment adapters(MemorySegment struct) { - return struct.asSlice(adapters$OFFSET, adapters$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport adapters - * } - */ - public static void adapters(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, adapters$OFFSET, adapters$LAYOUT.byteSize()); - } - - private static final GroupLayout devices$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("devices")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport devices - * } - */ - public static final GroupLayout devices$layout() { - return devices$LAYOUT; - } - - private static final long devices$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport devices - * } - */ - public static final long devices$offset() { - return devices$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport devices - * } - */ - public static MemorySegment devices(MemorySegment struct) { - return struct.asSlice(devices$OFFSET, devices$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport devices - * } - */ - public static void devices(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, devices$OFFSET, devices$LAYOUT.byteSize()); - } - - private static final GroupLayout queues$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("queues")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport queues - * } - */ - public static final GroupLayout queues$layout() { - return queues$LAYOUT; - } - - private static final long queues$OFFSET = 80; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport queues - * } - */ - public static final long queues$offset() { - return queues$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport queues - * } - */ - public static MemorySegment queues(MemorySegment struct) { - return struct.asSlice(queues$OFFSET, queues$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport queues - * } - */ - public static void queues(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, queues$OFFSET, queues$LAYOUT.byteSize()); - } - - private static final GroupLayout pipelineLayouts$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("pipelineLayouts")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport pipelineLayouts - * } - */ - public static final GroupLayout pipelineLayouts$layout() { - return pipelineLayouts$LAYOUT; - } - - private static final long pipelineLayouts$OFFSET = 120; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport pipelineLayouts - * } - */ - public static final long pipelineLayouts$offset() { - return pipelineLayouts$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport pipelineLayouts - * } - */ - public static MemorySegment pipelineLayouts(MemorySegment struct) { - return struct.asSlice(pipelineLayouts$OFFSET, pipelineLayouts$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport pipelineLayouts - * } - */ - public static void pipelineLayouts(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, pipelineLayouts$OFFSET, pipelineLayouts$LAYOUT.byteSize()); - } - - private static final GroupLayout shaderModules$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("shaderModules")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport shaderModules - * } - */ - public static final GroupLayout shaderModules$layout() { - return shaderModules$LAYOUT; - } - - private static final long shaderModules$OFFSET = 160; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport shaderModules - * } - */ - public static final long shaderModules$offset() { - return shaderModules$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport shaderModules - * } - */ - public static MemorySegment shaderModules(MemorySegment struct) { - return struct.asSlice(shaderModules$OFFSET, shaderModules$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport shaderModules - * } - */ - public static void shaderModules(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, shaderModules$OFFSET, shaderModules$LAYOUT.byteSize()); - } - - private static final GroupLayout bindGroupLayouts$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("bindGroupLayouts")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport bindGroupLayouts - * } - */ - public static final GroupLayout bindGroupLayouts$layout() { - return bindGroupLayouts$LAYOUT; - } - - private static final long bindGroupLayouts$OFFSET = 200; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport bindGroupLayouts - * } - */ - public static final long bindGroupLayouts$offset() { - return bindGroupLayouts$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport bindGroupLayouts - * } - */ - public static MemorySegment bindGroupLayouts(MemorySegment struct) { - return struct.asSlice(bindGroupLayouts$OFFSET, bindGroupLayouts$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport bindGroupLayouts - * } - */ - public static void bindGroupLayouts(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, bindGroupLayouts$OFFSET, bindGroupLayouts$LAYOUT.byteSize()); - } - - private static final GroupLayout bindGroups$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("bindGroups")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport bindGroups - * } - */ - public static final GroupLayout bindGroups$layout() { - return bindGroups$LAYOUT; - } - - private static final long bindGroups$OFFSET = 240; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport bindGroups - * } - */ - public static final long bindGroups$offset() { - return bindGroups$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport bindGroups - * } - */ - public static MemorySegment bindGroups(MemorySegment struct) { - return struct.asSlice(bindGroups$OFFSET, bindGroups$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport bindGroups - * } - */ - public static void bindGroups(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, bindGroups$OFFSET, bindGroups$LAYOUT.byteSize()); - } - - private static final GroupLayout commandBuffers$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("commandBuffers")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport commandBuffers - * } - */ - public static final GroupLayout commandBuffers$layout() { - return commandBuffers$LAYOUT; - } - - private static final long commandBuffers$OFFSET = 280; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport commandBuffers - * } - */ - public static final long commandBuffers$offset() { - return commandBuffers$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport commandBuffers - * } - */ - public static MemorySegment commandBuffers(MemorySegment struct) { - return struct.asSlice(commandBuffers$OFFSET, commandBuffers$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport commandBuffers - * } - */ - public static void commandBuffers(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, commandBuffers$OFFSET, commandBuffers$LAYOUT.byteSize()); - } - - private static final GroupLayout renderBundles$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("renderBundles")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport renderBundles - * } - */ - public static final GroupLayout renderBundles$layout() { - return renderBundles$LAYOUT; - } - - private static final long renderBundles$OFFSET = 320; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport renderBundles - * } - */ - public static final long renderBundles$offset() { - return renderBundles$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport renderBundles - * } - */ - public static MemorySegment renderBundles(MemorySegment struct) { - return struct.asSlice(renderBundles$OFFSET, renderBundles$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport renderBundles - * } - */ - public static void renderBundles(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, renderBundles$OFFSET, renderBundles$LAYOUT.byteSize()); - } - - private static final GroupLayout renderPipelines$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("renderPipelines")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport renderPipelines - * } - */ - public static final GroupLayout renderPipelines$layout() { - return renderPipelines$LAYOUT; - } - - private static final long renderPipelines$OFFSET = 360; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport renderPipelines - * } - */ - public static final long renderPipelines$offset() { - return renderPipelines$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport renderPipelines - * } - */ - public static MemorySegment renderPipelines(MemorySegment struct) { - return struct.asSlice(renderPipelines$OFFSET, renderPipelines$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport renderPipelines - * } - */ - public static void renderPipelines(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, renderPipelines$OFFSET, renderPipelines$LAYOUT.byteSize()); - } - - private static final GroupLayout computePipelines$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("computePipelines")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport computePipelines - * } - */ - public static final GroupLayout computePipelines$layout() { - return computePipelines$LAYOUT; - } - - private static final long computePipelines$OFFSET = 400; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport computePipelines - * } - */ - public static final long computePipelines$offset() { - return computePipelines$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport computePipelines - * } - */ - public static MemorySegment computePipelines(MemorySegment struct) { - return struct.asSlice(computePipelines$OFFSET, computePipelines$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport computePipelines - * } - */ - public static void computePipelines(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, computePipelines$OFFSET, computePipelines$LAYOUT.byteSize()); - } - - private static final GroupLayout querySets$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("querySets")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport querySets - * } - */ - public static final GroupLayout querySets$layout() { - return querySets$LAYOUT; - } - - private static final long querySets$OFFSET = 440; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport querySets - * } - */ - public static final long querySets$offset() { - return querySets$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport querySets - * } - */ - public static MemorySegment querySets(MemorySegment struct) { - return struct.asSlice(querySets$OFFSET, querySets$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport querySets - * } - */ - public static void querySets(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, querySets$OFFSET, querySets$LAYOUT.byteSize()); - } - - private static final GroupLayout buffers$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("buffers")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport buffers - * } - */ - public static final GroupLayout buffers$layout() { - return buffers$LAYOUT; - } - - private static final long buffers$OFFSET = 480; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport buffers - * } - */ - public static final long buffers$offset() { - return buffers$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport buffers - * } - */ - public static MemorySegment buffers(MemorySegment struct) { - return struct.asSlice(buffers$OFFSET, buffers$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport buffers - * } - */ - public static void buffers(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, buffers$OFFSET, buffers$LAYOUT.byteSize()); - } - - private static final GroupLayout textures$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("textures")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport textures - * } - */ - public static final GroupLayout textures$layout() { - return textures$LAYOUT; - } - - private static final long textures$OFFSET = 520; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport textures - * } - */ - public static final long textures$offset() { - return textures$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport textures - * } - */ - public static MemorySegment textures(MemorySegment struct) { - return struct.asSlice(textures$OFFSET, textures$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport textures - * } - */ - public static void textures(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, textures$OFFSET, textures$LAYOUT.byteSize()); - } - - private static final GroupLayout textureViews$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("textureViews")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport textureViews - * } - */ - public static final GroupLayout textureViews$layout() { - return textureViews$LAYOUT; - } - - private static final long textureViews$OFFSET = 560; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport textureViews - * } - */ - public static final long textureViews$offset() { - return textureViews$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport textureViews - * } - */ - public static MemorySegment textureViews(MemorySegment struct) { - return struct.asSlice(textureViews$OFFSET, textureViews$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport textureViews - * } - */ - public static void textureViews(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, textureViews$OFFSET, textureViews$LAYOUT.byteSize()); - } - - private static final GroupLayout samplers$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("samplers")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPURegistryReport samplers - * } - */ - public static final GroupLayout samplers$layout() { - return samplers$LAYOUT; - } - - private static final long samplers$OFFSET = 600; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPURegistryReport samplers - * } - */ - public static final long samplers$offset() { - return samplers$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPURegistryReport samplers - * } - */ - public static MemorySegment samplers(MemorySegment struct) { - return struct.asSlice(samplers$OFFSET, samplers$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPURegistryReport samplers - * } - */ - public static void samplers(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, samplers$OFFSET, samplers$LAYOUT.byteSize()); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUImageCopyBuffer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUImageCopyBuffer.java deleted file mode 100644 index 5c0e9bdec..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUImageCopyBuffer.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUImageCopyBuffer { - * const WGPUChainedStruct *nextInChain; - * WGPUTextureDataLayout layout; - * WGPUBuffer buffer; - * } - * } - */ -public class WGPUImageCopyBuffer { - - WGPUImageCopyBuffer() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPUTextureDataLayout.layout().withName("layout"), - WGPU.C_POINTER.withName("buffer") - ).withName("WGPUImageCopyBuffer"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final GroupLayout layout$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("layout")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureDataLayout layout - * } - */ - public static final GroupLayout layout$layout() { - return layout$LAYOUT; - } - - private static final long layout$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureDataLayout layout - * } - */ - public static final long layout$offset() { - return layout$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureDataLayout layout - * } - */ - public static MemorySegment layout(MemorySegment struct) { - return struct.asSlice(layout$OFFSET, layout$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureDataLayout layout - * } - */ - public static void layout(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, layout$OFFSET, layout$LAYOUT.byteSize()); - } - - private static final AddressLayout buffer$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("buffer")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBuffer buffer - * } - */ - public static final AddressLayout buffer$layout() { - return buffer$LAYOUT; - } - - private static final long buffer$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBuffer buffer - * } - */ - public static final long buffer$offset() { - return buffer$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBuffer buffer - * } - */ - public static MemorySegment buffer(MemorySegment struct) { - return struct.get(buffer$LAYOUT, buffer$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBuffer buffer - * } - */ - public static void buffer(MemorySegment struct, MemorySegment fieldValue) { - struct.set(buffer$LAYOUT, buffer$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUImageCopyTexture.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUImageCopyTexture.java deleted file mode 100644 index 6708dac34..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUImageCopyTexture.java +++ /dev/null @@ -1,312 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUImageCopyTexture { - * const WGPUChainedStruct *nextInChain; - * WGPUTexture texture; - * uint32_t mipLevel; - * WGPUOrigin3D origin; - * WGPUTextureAspect aspect; - * } - * } - */ -public class WGPUImageCopyTexture { - - WGPUImageCopyTexture() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("texture"), - WGPU.C_INT.withName("mipLevel"), - WGPUOrigin3D.layout().withName("origin"), - WGPU.C_INT.withName("aspect"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUImageCopyTexture"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout texture$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("texture")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTexture texture - * } - */ - public static final AddressLayout texture$layout() { - return texture$LAYOUT; - } - - private static final long texture$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTexture texture - * } - */ - public static final long texture$offset() { - return texture$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTexture texture - * } - */ - public static MemorySegment texture(MemorySegment struct) { - return struct.get(texture$LAYOUT, texture$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTexture texture - * } - */ - public static void texture(MemorySegment struct, MemorySegment fieldValue) { - struct.set(texture$LAYOUT, texture$OFFSET, fieldValue); - } - - private static final OfInt mipLevel$LAYOUT = (OfInt)$LAYOUT.select(groupElement("mipLevel")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t mipLevel - * } - */ - public static final OfInt mipLevel$layout() { - return mipLevel$LAYOUT; - } - - private static final long mipLevel$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t mipLevel - * } - */ - public static final long mipLevel$offset() { - return mipLevel$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t mipLevel - * } - */ - public static int mipLevel(MemorySegment struct) { - return struct.get(mipLevel$LAYOUT, mipLevel$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t mipLevel - * } - */ - public static void mipLevel(MemorySegment struct, int fieldValue) { - struct.set(mipLevel$LAYOUT, mipLevel$OFFSET, fieldValue); - } - - private static final GroupLayout origin$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("origin")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUOrigin3D origin - * } - */ - public static final GroupLayout origin$layout() { - return origin$LAYOUT; - } - - private static final long origin$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUOrigin3D origin - * } - */ - public static final long origin$offset() { - return origin$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUOrigin3D origin - * } - */ - public static MemorySegment origin(MemorySegment struct) { - return struct.asSlice(origin$OFFSET, origin$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUOrigin3D origin - * } - */ - public static void origin(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, origin$OFFSET, origin$LAYOUT.byteSize()); - } - - private static final OfInt aspect$LAYOUT = (OfInt)$LAYOUT.select(groupElement("aspect")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureAspect aspect - * } - */ - public static final OfInt aspect$layout() { - return aspect$LAYOUT; - } - - private static final long aspect$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureAspect aspect - * } - */ - public static final long aspect$offset() { - return aspect$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureAspect aspect - * } - */ - public static int aspect(MemorySegment struct) { - return struct.get(aspect$LAYOUT, aspect$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureAspect aspect - * } - */ - public static void aspect(MemorySegment struct, int fieldValue) { - struct.set(aspect$LAYOUT, aspect$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceDescriptor.java deleted file mode 100644 index cc01447f6..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceDescriptor.java +++ /dev/null @@ -1,127 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUInstanceDescriptor { - * const WGPUChainedStruct *nextInChain; - * } - * } - */ -public class WGPUInstanceDescriptor { - - WGPUInstanceDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain") - ).withName("WGPUInstanceDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceEnumerateAdapterOptions.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceEnumerateAdapterOptions.java deleted file mode 100644 index 8371fb612..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceEnumerateAdapterOptions.java +++ /dev/null @@ -1,174 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUInstanceEnumerateAdapterOptions { - * const WGPUChainedStruct *nextInChain; - * WGPUInstanceBackendFlags backends; - * } - * } - */ -public class WGPUInstanceEnumerateAdapterOptions { - - WGPUInstanceEnumerateAdapterOptions() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("backends"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUInstanceEnumerateAdapterOptions"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt backends$LAYOUT = (OfInt)$LAYOUT.select(groupElement("backends")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUInstanceBackendFlags backends - * } - */ - public static final OfInt backends$layout() { - return backends$LAYOUT; - } - - private static final long backends$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUInstanceBackendFlags backends - * } - */ - public static final long backends$offset() { - return backends$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUInstanceBackendFlags backends - * } - */ - public static int backends(MemorySegment struct) { - return struct.get(backends$LAYOUT, backends$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUInstanceBackendFlags backends - * } - */ - public static void backends(MemorySegment struct, int fieldValue) { - struct.set(backends$LAYOUT, backends$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceExtras.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceExtras.java deleted file mode 100644 index b085826c9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUInstanceExtras.java +++ /dev/null @@ -1,403 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUInstanceExtras { - * WGPUChainedStruct chain; - * WGPUInstanceBackendFlags backends; - * WGPUInstanceFlags flags; - * WGPUDx12Compiler dx12ShaderCompiler; - * WGPUGles3MinorVersion gles3MinorVersion; - * const char *dxilPath; - * const char *dxcPath; - * } - * } - */ -public class WGPUInstanceExtras { - - WGPUInstanceExtras() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_INT.withName("backends"), - WGPU.C_INT.withName("flags"), - WGPU.C_INT.withName("dx12ShaderCompiler"), - WGPU.C_INT.withName("gles3MinorVersion"), - WGPU.C_POINTER.withName("dxilPath"), - WGPU.C_POINTER.withName("dxcPath") - ).withName("WGPUInstanceExtras"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final OfInt backends$LAYOUT = (OfInt)$LAYOUT.select(groupElement("backends")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUInstanceBackendFlags backends - * } - */ - public static final OfInt backends$layout() { - return backends$LAYOUT; - } - - private static final long backends$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUInstanceBackendFlags backends - * } - */ - public static final long backends$offset() { - return backends$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUInstanceBackendFlags backends - * } - */ - public static int backends(MemorySegment struct) { - return struct.get(backends$LAYOUT, backends$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUInstanceBackendFlags backends - * } - */ - public static void backends(MemorySegment struct, int fieldValue) { - struct.set(backends$LAYOUT, backends$OFFSET, fieldValue); - } - - private static final OfInt flags$LAYOUT = (OfInt)$LAYOUT.select(groupElement("flags")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUInstanceFlags flags - * } - */ - public static final OfInt flags$layout() { - return flags$LAYOUT; - } - - private static final long flags$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUInstanceFlags flags - * } - */ - public static final long flags$offset() { - return flags$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUInstanceFlags flags - * } - */ - public static int flags(MemorySegment struct) { - return struct.get(flags$LAYOUT, flags$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUInstanceFlags flags - * } - */ - public static void flags(MemorySegment struct, int fieldValue) { - struct.set(flags$LAYOUT, flags$OFFSET, fieldValue); - } - - private static final OfInt dx12ShaderCompiler$LAYOUT = (OfInt)$LAYOUT.select(groupElement("dx12ShaderCompiler")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUDx12Compiler dx12ShaderCompiler - * } - */ - public static final OfInt dx12ShaderCompiler$layout() { - return dx12ShaderCompiler$LAYOUT; - } - - private static final long dx12ShaderCompiler$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUDx12Compiler dx12ShaderCompiler - * } - */ - public static final long dx12ShaderCompiler$offset() { - return dx12ShaderCompiler$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUDx12Compiler dx12ShaderCompiler - * } - */ - public static int dx12ShaderCompiler(MemorySegment struct) { - return struct.get(dx12ShaderCompiler$LAYOUT, dx12ShaderCompiler$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUDx12Compiler dx12ShaderCompiler - * } - */ - public static void dx12ShaderCompiler(MemorySegment struct, int fieldValue) { - struct.set(dx12ShaderCompiler$LAYOUT, dx12ShaderCompiler$OFFSET, fieldValue); - } - - private static final OfInt gles3MinorVersion$LAYOUT = (OfInt)$LAYOUT.select(groupElement("gles3MinorVersion")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUGles3MinorVersion gles3MinorVersion - * } - */ - public static final OfInt gles3MinorVersion$layout() { - return gles3MinorVersion$LAYOUT; - } - - private static final long gles3MinorVersion$OFFSET = 28; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUGles3MinorVersion gles3MinorVersion - * } - */ - public static final long gles3MinorVersion$offset() { - return gles3MinorVersion$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUGles3MinorVersion gles3MinorVersion - * } - */ - public static int gles3MinorVersion(MemorySegment struct) { - return struct.get(gles3MinorVersion$LAYOUT, gles3MinorVersion$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUGles3MinorVersion gles3MinorVersion - * } - */ - public static void gles3MinorVersion(MemorySegment struct, int fieldValue) { - struct.set(gles3MinorVersion$LAYOUT, gles3MinorVersion$OFFSET, fieldValue); - } - - private static final AddressLayout dxilPath$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("dxilPath")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *dxilPath - * } - */ - public static final AddressLayout dxilPath$layout() { - return dxilPath$LAYOUT; - } - - private static final long dxilPath$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *dxilPath - * } - */ - public static final long dxilPath$offset() { - return dxilPath$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *dxilPath - * } - */ - public static MemorySegment dxilPath(MemorySegment struct) { - return struct.get(dxilPath$LAYOUT, dxilPath$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *dxilPath - * } - */ - public static void dxilPath(MemorySegment struct, MemorySegment fieldValue) { - struct.set(dxilPath$LAYOUT, dxilPath$OFFSET, fieldValue); - } - - private static final AddressLayout dxcPath$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("dxcPath")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *dxcPath - * } - */ - public static final AddressLayout dxcPath$layout() { - return dxcPath$LAYOUT; - } - - private static final long dxcPath$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *dxcPath - * } - */ - public static final long dxcPath$offset() { - return dxcPath$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *dxcPath - * } - */ - public static MemorySegment dxcPath(MemorySegment struct) { - return struct.get(dxcPath$LAYOUT, dxcPath$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *dxcPath - * } - */ - public static void dxcPath(MemorySegment struct, MemorySegment fieldValue) { - struct.set(dxcPath$LAYOUT, dxcPath$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPULimits.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPULimits.java deleted file mode 100644 index 02390ea34..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPULimits.java +++ /dev/null @@ -1,1554 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPULimits { - * uint32_t maxTextureDimension1D; - * uint32_t maxTextureDimension2D; - * uint32_t maxTextureDimension3D; - * uint32_t maxTextureArrayLayers; - * uint32_t maxBindGroups; - * uint32_t maxBindGroupsPlusVertexBuffers; - * uint32_t maxBindingsPerBindGroup; - * uint32_t maxDynamicUniformBuffersPerPipelineLayout; - * uint32_t maxDynamicStorageBuffersPerPipelineLayout; - * uint32_t maxSampledTexturesPerShaderStage; - * uint32_t maxSamplersPerShaderStage; - * uint32_t maxStorageBuffersPerShaderStage; - * uint32_t maxStorageTexturesPerShaderStage; - * uint32_t maxUniformBuffersPerShaderStage; - * uint64_t maxUniformBufferBindingSize; - * uint64_t maxStorageBufferBindingSize; - * uint32_t minUniformBufferOffsetAlignment; - * uint32_t minStorageBufferOffsetAlignment; - * uint32_t maxVertexBuffers; - * uint64_t maxBufferSize; - * uint32_t maxVertexAttributes; - * uint32_t maxVertexBufferArrayStride; - * uint32_t maxInterStageShaderComponents; - * uint32_t maxInterStageShaderVariables; - * uint32_t maxColorAttachments; - * uint32_t maxColorAttachmentBytesPerSample; - * uint32_t maxComputeWorkgroupStorageSize; - * uint32_t maxComputeInvocationsPerWorkgroup; - * uint32_t maxComputeWorkgroupSizeX; - * uint32_t maxComputeWorkgroupSizeY; - * uint32_t maxComputeWorkgroupSizeZ; - * uint32_t maxComputeWorkgroupsPerDimension; - * } - * } - */ -public class WGPULimits { - - WGPULimits() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_INT.withName("maxTextureDimension1D"), - WGPU.C_INT.withName("maxTextureDimension2D"), - WGPU.C_INT.withName("maxTextureDimension3D"), - WGPU.C_INT.withName("maxTextureArrayLayers"), - WGPU.C_INT.withName("maxBindGroups"), - WGPU.C_INT.withName("maxBindGroupsPlusVertexBuffers"), - WGPU.C_INT.withName("maxBindingsPerBindGroup"), - WGPU.C_INT.withName("maxDynamicUniformBuffersPerPipelineLayout"), - WGPU.C_INT.withName("maxDynamicStorageBuffersPerPipelineLayout"), - WGPU.C_INT.withName("maxSampledTexturesPerShaderStage"), - WGPU.C_INT.withName("maxSamplersPerShaderStage"), - WGPU.C_INT.withName("maxStorageBuffersPerShaderStage"), - WGPU.C_INT.withName("maxStorageTexturesPerShaderStage"), - WGPU.C_INT.withName("maxUniformBuffersPerShaderStage"), - WGPU.C_LONG_LONG.withName("maxUniformBufferBindingSize"), - WGPU.C_LONG_LONG.withName("maxStorageBufferBindingSize"), - WGPU.C_INT.withName("minUniformBufferOffsetAlignment"), - WGPU.C_INT.withName("minStorageBufferOffsetAlignment"), - WGPU.C_INT.withName("maxVertexBuffers"), - MemoryLayout.paddingLayout(4), - WGPU.C_LONG_LONG.withName("maxBufferSize"), - WGPU.C_INT.withName("maxVertexAttributes"), - WGPU.C_INT.withName("maxVertexBufferArrayStride"), - WGPU.C_INT.withName("maxInterStageShaderComponents"), - WGPU.C_INT.withName("maxInterStageShaderVariables"), - WGPU.C_INT.withName("maxColorAttachments"), - WGPU.C_INT.withName("maxColorAttachmentBytesPerSample"), - WGPU.C_INT.withName("maxComputeWorkgroupStorageSize"), - WGPU.C_INT.withName("maxComputeInvocationsPerWorkgroup"), - WGPU.C_INT.withName("maxComputeWorkgroupSizeX"), - WGPU.C_INT.withName("maxComputeWorkgroupSizeY"), - WGPU.C_INT.withName("maxComputeWorkgroupSizeZ"), - WGPU.C_INT.withName("maxComputeWorkgroupsPerDimension") - ).withName("WGPULimits"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfInt maxTextureDimension1D$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxTextureDimension1D")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension1D - * } - */ - public static final OfInt maxTextureDimension1D$layout() { - return maxTextureDimension1D$LAYOUT; - } - - private static final long maxTextureDimension1D$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension1D - * } - */ - public static final long maxTextureDimension1D$offset() { - return maxTextureDimension1D$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension1D - * } - */ - public static int maxTextureDimension1D(MemorySegment struct) { - return struct.get(maxTextureDimension1D$LAYOUT, maxTextureDimension1D$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension1D - * } - */ - public static void maxTextureDimension1D(MemorySegment struct, int fieldValue) { - struct.set(maxTextureDimension1D$LAYOUT, maxTextureDimension1D$OFFSET, fieldValue); - } - - private static final OfInt maxTextureDimension2D$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxTextureDimension2D")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension2D - * } - */ - public static final OfInt maxTextureDimension2D$layout() { - return maxTextureDimension2D$LAYOUT; - } - - private static final long maxTextureDimension2D$OFFSET = 4; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension2D - * } - */ - public static final long maxTextureDimension2D$offset() { - return maxTextureDimension2D$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension2D - * } - */ - public static int maxTextureDimension2D(MemorySegment struct) { - return struct.get(maxTextureDimension2D$LAYOUT, maxTextureDimension2D$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension2D - * } - */ - public static void maxTextureDimension2D(MemorySegment struct, int fieldValue) { - struct.set(maxTextureDimension2D$LAYOUT, maxTextureDimension2D$OFFSET, fieldValue); - } - - private static final OfInt maxTextureDimension3D$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxTextureDimension3D")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension3D - * } - */ - public static final OfInt maxTextureDimension3D$layout() { - return maxTextureDimension3D$LAYOUT; - } - - private static final long maxTextureDimension3D$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension3D - * } - */ - public static final long maxTextureDimension3D$offset() { - return maxTextureDimension3D$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension3D - * } - */ - public static int maxTextureDimension3D(MemorySegment struct) { - return struct.get(maxTextureDimension3D$LAYOUT, maxTextureDimension3D$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxTextureDimension3D - * } - */ - public static void maxTextureDimension3D(MemorySegment struct, int fieldValue) { - struct.set(maxTextureDimension3D$LAYOUT, maxTextureDimension3D$OFFSET, fieldValue); - } - - private static final OfInt maxTextureArrayLayers$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxTextureArrayLayers")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxTextureArrayLayers - * } - */ - public static final OfInt maxTextureArrayLayers$layout() { - return maxTextureArrayLayers$LAYOUT; - } - - private static final long maxTextureArrayLayers$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxTextureArrayLayers - * } - */ - public static final long maxTextureArrayLayers$offset() { - return maxTextureArrayLayers$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxTextureArrayLayers - * } - */ - public static int maxTextureArrayLayers(MemorySegment struct) { - return struct.get(maxTextureArrayLayers$LAYOUT, maxTextureArrayLayers$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxTextureArrayLayers - * } - */ - public static void maxTextureArrayLayers(MemorySegment struct, int fieldValue) { - struct.set(maxTextureArrayLayers$LAYOUT, maxTextureArrayLayers$OFFSET, fieldValue); - } - - private static final OfInt maxBindGroups$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxBindGroups")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxBindGroups - * } - */ - public static final OfInt maxBindGroups$layout() { - return maxBindGroups$LAYOUT; - } - - private static final long maxBindGroups$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxBindGroups - * } - */ - public static final long maxBindGroups$offset() { - return maxBindGroups$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxBindGroups - * } - */ - public static int maxBindGroups(MemorySegment struct) { - return struct.get(maxBindGroups$LAYOUT, maxBindGroups$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxBindGroups - * } - */ - public static void maxBindGroups(MemorySegment struct, int fieldValue) { - struct.set(maxBindGroups$LAYOUT, maxBindGroups$OFFSET, fieldValue); - } - - private static final OfInt maxBindGroupsPlusVertexBuffers$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxBindGroupsPlusVertexBuffers")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxBindGroupsPlusVertexBuffers - * } - */ - public static final OfInt maxBindGroupsPlusVertexBuffers$layout() { - return maxBindGroupsPlusVertexBuffers$LAYOUT; - } - - private static final long maxBindGroupsPlusVertexBuffers$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxBindGroupsPlusVertexBuffers - * } - */ - public static final long maxBindGroupsPlusVertexBuffers$offset() { - return maxBindGroupsPlusVertexBuffers$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxBindGroupsPlusVertexBuffers - * } - */ - public static int maxBindGroupsPlusVertexBuffers(MemorySegment struct) { - return struct.get(maxBindGroupsPlusVertexBuffers$LAYOUT, maxBindGroupsPlusVertexBuffers$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxBindGroupsPlusVertexBuffers - * } - */ - public static void maxBindGroupsPlusVertexBuffers(MemorySegment struct, int fieldValue) { - struct.set(maxBindGroupsPlusVertexBuffers$LAYOUT, maxBindGroupsPlusVertexBuffers$OFFSET, fieldValue); - } - - private static final OfInt maxBindingsPerBindGroup$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxBindingsPerBindGroup")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxBindingsPerBindGroup - * } - */ - public static final OfInt maxBindingsPerBindGroup$layout() { - return maxBindingsPerBindGroup$LAYOUT; - } - - private static final long maxBindingsPerBindGroup$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxBindingsPerBindGroup - * } - */ - public static final long maxBindingsPerBindGroup$offset() { - return maxBindingsPerBindGroup$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxBindingsPerBindGroup - * } - */ - public static int maxBindingsPerBindGroup(MemorySegment struct) { - return struct.get(maxBindingsPerBindGroup$LAYOUT, maxBindingsPerBindGroup$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxBindingsPerBindGroup - * } - */ - public static void maxBindingsPerBindGroup(MemorySegment struct, int fieldValue) { - struct.set(maxBindingsPerBindGroup$LAYOUT, maxBindingsPerBindGroup$OFFSET, fieldValue); - } - - private static final OfInt maxDynamicUniformBuffersPerPipelineLayout$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxDynamicUniformBuffersPerPipelineLayout")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxDynamicUniformBuffersPerPipelineLayout - * } - */ - public static final OfInt maxDynamicUniformBuffersPerPipelineLayout$layout() { - return maxDynamicUniformBuffersPerPipelineLayout$LAYOUT; - } - - private static final long maxDynamicUniformBuffersPerPipelineLayout$OFFSET = 28; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxDynamicUniformBuffersPerPipelineLayout - * } - */ - public static final long maxDynamicUniformBuffersPerPipelineLayout$offset() { - return maxDynamicUniformBuffersPerPipelineLayout$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxDynamicUniformBuffersPerPipelineLayout - * } - */ - public static int maxDynamicUniformBuffersPerPipelineLayout(MemorySegment struct) { - return struct.get(maxDynamicUniformBuffersPerPipelineLayout$LAYOUT, maxDynamicUniformBuffersPerPipelineLayout$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxDynamicUniformBuffersPerPipelineLayout - * } - */ - public static void maxDynamicUniformBuffersPerPipelineLayout(MemorySegment struct, int fieldValue) { - struct.set(maxDynamicUniformBuffersPerPipelineLayout$LAYOUT, maxDynamicUniformBuffersPerPipelineLayout$OFFSET, fieldValue); - } - - private static final OfInt maxDynamicStorageBuffersPerPipelineLayout$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxDynamicStorageBuffersPerPipelineLayout")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxDynamicStorageBuffersPerPipelineLayout - * } - */ - public static final OfInt maxDynamicStorageBuffersPerPipelineLayout$layout() { - return maxDynamicStorageBuffersPerPipelineLayout$LAYOUT; - } - - private static final long maxDynamicStorageBuffersPerPipelineLayout$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxDynamicStorageBuffersPerPipelineLayout - * } - */ - public static final long maxDynamicStorageBuffersPerPipelineLayout$offset() { - return maxDynamicStorageBuffersPerPipelineLayout$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxDynamicStorageBuffersPerPipelineLayout - * } - */ - public static int maxDynamicStorageBuffersPerPipelineLayout(MemorySegment struct) { - return struct.get(maxDynamicStorageBuffersPerPipelineLayout$LAYOUT, maxDynamicStorageBuffersPerPipelineLayout$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxDynamicStorageBuffersPerPipelineLayout - * } - */ - public static void maxDynamicStorageBuffersPerPipelineLayout(MemorySegment struct, int fieldValue) { - struct.set(maxDynamicStorageBuffersPerPipelineLayout$LAYOUT, maxDynamicStorageBuffersPerPipelineLayout$OFFSET, fieldValue); - } - - private static final OfInt maxSampledTexturesPerShaderStage$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxSampledTexturesPerShaderStage")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxSampledTexturesPerShaderStage - * } - */ - public static final OfInt maxSampledTexturesPerShaderStage$layout() { - return maxSampledTexturesPerShaderStage$LAYOUT; - } - - private static final long maxSampledTexturesPerShaderStage$OFFSET = 36; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxSampledTexturesPerShaderStage - * } - */ - public static final long maxSampledTexturesPerShaderStage$offset() { - return maxSampledTexturesPerShaderStage$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxSampledTexturesPerShaderStage - * } - */ - public static int maxSampledTexturesPerShaderStage(MemorySegment struct) { - return struct.get(maxSampledTexturesPerShaderStage$LAYOUT, maxSampledTexturesPerShaderStage$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxSampledTexturesPerShaderStage - * } - */ - public static void maxSampledTexturesPerShaderStage(MemorySegment struct, int fieldValue) { - struct.set(maxSampledTexturesPerShaderStage$LAYOUT, maxSampledTexturesPerShaderStage$OFFSET, fieldValue); - } - - private static final OfInt maxSamplersPerShaderStage$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxSamplersPerShaderStage")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxSamplersPerShaderStage - * } - */ - public static final OfInt maxSamplersPerShaderStage$layout() { - return maxSamplersPerShaderStage$LAYOUT; - } - - private static final long maxSamplersPerShaderStage$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxSamplersPerShaderStage - * } - */ - public static final long maxSamplersPerShaderStage$offset() { - return maxSamplersPerShaderStage$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxSamplersPerShaderStage - * } - */ - public static int maxSamplersPerShaderStage(MemorySegment struct) { - return struct.get(maxSamplersPerShaderStage$LAYOUT, maxSamplersPerShaderStage$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxSamplersPerShaderStage - * } - */ - public static void maxSamplersPerShaderStage(MemorySegment struct, int fieldValue) { - struct.set(maxSamplersPerShaderStage$LAYOUT, maxSamplersPerShaderStage$OFFSET, fieldValue); - } - - private static final OfInt maxStorageBuffersPerShaderStage$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxStorageBuffersPerShaderStage")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxStorageBuffersPerShaderStage - * } - */ - public static final OfInt maxStorageBuffersPerShaderStage$layout() { - return maxStorageBuffersPerShaderStage$LAYOUT; - } - - private static final long maxStorageBuffersPerShaderStage$OFFSET = 44; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxStorageBuffersPerShaderStage - * } - */ - public static final long maxStorageBuffersPerShaderStage$offset() { - return maxStorageBuffersPerShaderStage$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxStorageBuffersPerShaderStage - * } - */ - public static int maxStorageBuffersPerShaderStage(MemorySegment struct) { - return struct.get(maxStorageBuffersPerShaderStage$LAYOUT, maxStorageBuffersPerShaderStage$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxStorageBuffersPerShaderStage - * } - */ - public static void maxStorageBuffersPerShaderStage(MemorySegment struct, int fieldValue) { - struct.set(maxStorageBuffersPerShaderStage$LAYOUT, maxStorageBuffersPerShaderStage$OFFSET, fieldValue); - } - - private static final OfInt maxStorageTexturesPerShaderStage$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxStorageTexturesPerShaderStage")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxStorageTexturesPerShaderStage - * } - */ - public static final OfInt maxStorageTexturesPerShaderStage$layout() { - return maxStorageTexturesPerShaderStage$LAYOUT; - } - - private static final long maxStorageTexturesPerShaderStage$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxStorageTexturesPerShaderStage - * } - */ - public static final long maxStorageTexturesPerShaderStage$offset() { - return maxStorageTexturesPerShaderStage$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxStorageTexturesPerShaderStage - * } - */ - public static int maxStorageTexturesPerShaderStage(MemorySegment struct) { - return struct.get(maxStorageTexturesPerShaderStage$LAYOUT, maxStorageTexturesPerShaderStage$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxStorageTexturesPerShaderStage - * } - */ - public static void maxStorageTexturesPerShaderStage(MemorySegment struct, int fieldValue) { - struct.set(maxStorageTexturesPerShaderStage$LAYOUT, maxStorageTexturesPerShaderStage$OFFSET, fieldValue); - } - - private static final OfInt maxUniformBuffersPerShaderStage$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxUniformBuffersPerShaderStage")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxUniformBuffersPerShaderStage - * } - */ - public static final OfInt maxUniformBuffersPerShaderStage$layout() { - return maxUniformBuffersPerShaderStage$LAYOUT; - } - - private static final long maxUniformBuffersPerShaderStage$OFFSET = 52; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxUniformBuffersPerShaderStage - * } - */ - public static final long maxUniformBuffersPerShaderStage$offset() { - return maxUniformBuffersPerShaderStage$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxUniformBuffersPerShaderStage - * } - */ - public static int maxUniformBuffersPerShaderStage(MemorySegment struct) { - return struct.get(maxUniformBuffersPerShaderStage$LAYOUT, maxUniformBuffersPerShaderStage$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxUniformBuffersPerShaderStage - * } - */ - public static void maxUniformBuffersPerShaderStage(MemorySegment struct, int fieldValue) { - struct.set(maxUniformBuffersPerShaderStage$LAYOUT, maxUniformBuffersPerShaderStage$OFFSET, fieldValue); - } - - private static final OfLong maxUniformBufferBindingSize$LAYOUT = (OfLong)$LAYOUT.select(groupElement("maxUniformBufferBindingSize")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t maxUniformBufferBindingSize - * } - */ - public static final OfLong maxUniformBufferBindingSize$layout() { - return maxUniformBufferBindingSize$LAYOUT; - } - - private static final long maxUniformBufferBindingSize$OFFSET = 56; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t maxUniformBufferBindingSize - * } - */ - public static final long maxUniformBufferBindingSize$offset() { - return maxUniformBufferBindingSize$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t maxUniformBufferBindingSize - * } - */ - public static long maxUniformBufferBindingSize(MemorySegment struct) { - return struct.get(maxUniformBufferBindingSize$LAYOUT, maxUniformBufferBindingSize$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t maxUniformBufferBindingSize - * } - */ - public static void maxUniformBufferBindingSize(MemorySegment struct, long fieldValue) { - struct.set(maxUniformBufferBindingSize$LAYOUT, maxUniformBufferBindingSize$OFFSET, fieldValue); - } - - private static final OfLong maxStorageBufferBindingSize$LAYOUT = (OfLong)$LAYOUT.select(groupElement("maxStorageBufferBindingSize")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t maxStorageBufferBindingSize - * } - */ - public static final OfLong maxStorageBufferBindingSize$layout() { - return maxStorageBufferBindingSize$LAYOUT; - } - - private static final long maxStorageBufferBindingSize$OFFSET = 64; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t maxStorageBufferBindingSize - * } - */ - public static final long maxStorageBufferBindingSize$offset() { - return maxStorageBufferBindingSize$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t maxStorageBufferBindingSize - * } - */ - public static long maxStorageBufferBindingSize(MemorySegment struct) { - return struct.get(maxStorageBufferBindingSize$LAYOUT, maxStorageBufferBindingSize$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t maxStorageBufferBindingSize - * } - */ - public static void maxStorageBufferBindingSize(MemorySegment struct, long fieldValue) { - struct.set(maxStorageBufferBindingSize$LAYOUT, maxStorageBufferBindingSize$OFFSET, fieldValue); - } - - private static final OfInt minUniformBufferOffsetAlignment$LAYOUT = (OfInt)$LAYOUT.select(groupElement("minUniformBufferOffsetAlignment")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t minUniformBufferOffsetAlignment - * } - */ - public static final OfInt minUniformBufferOffsetAlignment$layout() { - return minUniformBufferOffsetAlignment$LAYOUT; - } - - private static final long minUniformBufferOffsetAlignment$OFFSET = 72; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t minUniformBufferOffsetAlignment - * } - */ - public static final long minUniformBufferOffsetAlignment$offset() { - return minUniformBufferOffsetAlignment$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t minUniformBufferOffsetAlignment - * } - */ - public static int minUniformBufferOffsetAlignment(MemorySegment struct) { - return struct.get(minUniformBufferOffsetAlignment$LAYOUT, minUniformBufferOffsetAlignment$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t minUniformBufferOffsetAlignment - * } - */ - public static void minUniformBufferOffsetAlignment(MemorySegment struct, int fieldValue) { - struct.set(minUniformBufferOffsetAlignment$LAYOUT, minUniformBufferOffsetAlignment$OFFSET, fieldValue); - } - - private static final OfInt minStorageBufferOffsetAlignment$LAYOUT = (OfInt)$LAYOUT.select(groupElement("minStorageBufferOffsetAlignment")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t minStorageBufferOffsetAlignment - * } - */ - public static final OfInt minStorageBufferOffsetAlignment$layout() { - return minStorageBufferOffsetAlignment$LAYOUT; - } - - private static final long minStorageBufferOffsetAlignment$OFFSET = 76; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t minStorageBufferOffsetAlignment - * } - */ - public static final long minStorageBufferOffsetAlignment$offset() { - return minStorageBufferOffsetAlignment$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t minStorageBufferOffsetAlignment - * } - */ - public static int minStorageBufferOffsetAlignment(MemorySegment struct) { - return struct.get(minStorageBufferOffsetAlignment$LAYOUT, minStorageBufferOffsetAlignment$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t minStorageBufferOffsetAlignment - * } - */ - public static void minStorageBufferOffsetAlignment(MemorySegment struct, int fieldValue) { - struct.set(minStorageBufferOffsetAlignment$LAYOUT, minStorageBufferOffsetAlignment$OFFSET, fieldValue); - } - - private static final OfInt maxVertexBuffers$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxVertexBuffers")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxVertexBuffers - * } - */ - public static final OfInt maxVertexBuffers$layout() { - return maxVertexBuffers$LAYOUT; - } - - private static final long maxVertexBuffers$OFFSET = 80; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxVertexBuffers - * } - */ - public static final long maxVertexBuffers$offset() { - return maxVertexBuffers$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxVertexBuffers - * } - */ - public static int maxVertexBuffers(MemorySegment struct) { - return struct.get(maxVertexBuffers$LAYOUT, maxVertexBuffers$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxVertexBuffers - * } - */ - public static void maxVertexBuffers(MemorySegment struct, int fieldValue) { - struct.set(maxVertexBuffers$LAYOUT, maxVertexBuffers$OFFSET, fieldValue); - } - - private static final OfLong maxBufferSize$LAYOUT = (OfLong)$LAYOUT.select(groupElement("maxBufferSize")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t maxBufferSize - * } - */ - public static final OfLong maxBufferSize$layout() { - return maxBufferSize$LAYOUT; - } - - private static final long maxBufferSize$OFFSET = 88; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t maxBufferSize - * } - */ - public static final long maxBufferSize$offset() { - return maxBufferSize$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t maxBufferSize - * } - */ - public static long maxBufferSize(MemorySegment struct) { - return struct.get(maxBufferSize$LAYOUT, maxBufferSize$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t maxBufferSize - * } - */ - public static void maxBufferSize(MemorySegment struct, long fieldValue) { - struct.set(maxBufferSize$LAYOUT, maxBufferSize$OFFSET, fieldValue); - } - - private static final OfInt maxVertexAttributes$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxVertexAttributes")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxVertexAttributes - * } - */ - public static final OfInt maxVertexAttributes$layout() { - return maxVertexAttributes$LAYOUT; - } - - private static final long maxVertexAttributes$OFFSET = 96; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxVertexAttributes - * } - */ - public static final long maxVertexAttributes$offset() { - return maxVertexAttributes$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxVertexAttributes - * } - */ - public static int maxVertexAttributes(MemorySegment struct) { - return struct.get(maxVertexAttributes$LAYOUT, maxVertexAttributes$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxVertexAttributes - * } - */ - public static void maxVertexAttributes(MemorySegment struct, int fieldValue) { - struct.set(maxVertexAttributes$LAYOUT, maxVertexAttributes$OFFSET, fieldValue); - } - - private static final OfInt maxVertexBufferArrayStride$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxVertexBufferArrayStride")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxVertexBufferArrayStride - * } - */ - public static final OfInt maxVertexBufferArrayStride$layout() { - return maxVertexBufferArrayStride$LAYOUT; - } - - private static final long maxVertexBufferArrayStride$OFFSET = 100; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxVertexBufferArrayStride - * } - */ - public static final long maxVertexBufferArrayStride$offset() { - return maxVertexBufferArrayStride$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxVertexBufferArrayStride - * } - */ - public static int maxVertexBufferArrayStride(MemorySegment struct) { - return struct.get(maxVertexBufferArrayStride$LAYOUT, maxVertexBufferArrayStride$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxVertexBufferArrayStride - * } - */ - public static void maxVertexBufferArrayStride(MemorySegment struct, int fieldValue) { - struct.set(maxVertexBufferArrayStride$LAYOUT, maxVertexBufferArrayStride$OFFSET, fieldValue); - } - - private static final OfInt maxInterStageShaderComponents$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxInterStageShaderComponents")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxInterStageShaderComponents - * } - */ - public static final OfInt maxInterStageShaderComponents$layout() { - return maxInterStageShaderComponents$LAYOUT; - } - - private static final long maxInterStageShaderComponents$OFFSET = 104; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxInterStageShaderComponents - * } - */ - public static final long maxInterStageShaderComponents$offset() { - return maxInterStageShaderComponents$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxInterStageShaderComponents - * } - */ - public static int maxInterStageShaderComponents(MemorySegment struct) { - return struct.get(maxInterStageShaderComponents$LAYOUT, maxInterStageShaderComponents$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxInterStageShaderComponents - * } - */ - public static void maxInterStageShaderComponents(MemorySegment struct, int fieldValue) { - struct.set(maxInterStageShaderComponents$LAYOUT, maxInterStageShaderComponents$OFFSET, fieldValue); - } - - private static final OfInt maxInterStageShaderVariables$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxInterStageShaderVariables")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxInterStageShaderVariables - * } - */ - public static final OfInt maxInterStageShaderVariables$layout() { - return maxInterStageShaderVariables$LAYOUT; - } - - private static final long maxInterStageShaderVariables$OFFSET = 108; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxInterStageShaderVariables - * } - */ - public static final long maxInterStageShaderVariables$offset() { - return maxInterStageShaderVariables$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxInterStageShaderVariables - * } - */ - public static int maxInterStageShaderVariables(MemorySegment struct) { - return struct.get(maxInterStageShaderVariables$LAYOUT, maxInterStageShaderVariables$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxInterStageShaderVariables - * } - */ - public static void maxInterStageShaderVariables(MemorySegment struct, int fieldValue) { - struct.set(maxInterStageShaderVariables$LAYOUT, maxInterStageShaderVariables$OFFSET, fieldValue); - } - - private static final OfInt maxColorAttachments$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxColorAttachments")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxColorAttachments - * } - */ - public static final OfInt maxColorAttachments$layout() { - return maxColorAttachments$LAYOUT; - } - - private static final long maxColorAttachments$OFFSET = 112; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxColorAttachments - * } - */ - public static final long maxColorAttachments$offset() { - return maxColorAttachments$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxColorAttachments - * } - */ - public static int maxColorAttachments(MemorySegment struct) { - return struct.get(maxColorAttachments$LAYOUT, maxColorAttachments$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxColorAttachments - * } - */ - public static void maxColorAttachments(MemorySegment struct, int fieldValue) { - struct.set(maxColorAttachments$LAYOUT, maxColorAttachments$OFFSET, fieldValue); - } - - private static final OfInt maxColorAttachmentBytesPerSample$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxColorAttachmentBytesPerSample")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxColorAttachmentBytesPerSample - * } - */ - public static final OfInt maxColorAttachmentBytesPerSample$layout() { - return maxColorAttachmentBytesPerSample$LAYOUT; - } - - private static final long maxColorAttachmentBytesPerSample$OFFSET = 116; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxColorAttachmentBytesPerSample - * } - */ - public static final long maxColorAttachmentBytesPerSample$offset() { - return maxColorAttachmentBytesPerSample$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxColorAttachmentBytesPerSample - * } - */ - public static int maxColorAttachmentBytesPerSample(MemorySegment struct) { - return struct.get(maxColorAttachmentBytesPerSample$LAYOUT, maxColorAttachmentBytesPerSample$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxColorAttachmentBytesPerSample - * } - */ - public static void maxColorAttachmentBytesPerSample(MemorySegment struct, int fieldValue) { - struct.set(maxColorAttachmentBytesPerSample$LAYOUT, maxColorAttachmentBytesPerSample$OFFSET, fieldValue); - } - - private static final OfInt maxComputeWorkgroupStorageSize$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxComputeWorkgroupStorageSize")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupStorageSize - * } - */ - public static final OfInt maxComputeWorkgroupStorageSize$layout() { - return maxComputeWorkgroupStorageSize$LAYOUT; - } - - private static final long maxComputeWorkgroupStorageSize$OFFSET = 120; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupStorageSize - * } - */ - public static final long maxComputeWorkgroupStorageSize$offset() { - return maxComputeWorkgroupStorageSize$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupStorageSize - * } - */ - public static int maxComputeWorkgroupStorageSize(MemorySegment struct) { - return struct.get(maxComputeWorkgroupStorageSize$LAYOUT, maxComputeWorkgroupStorageSize$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupStorageSize - * } - */ - public static void maxComputeWorkgroupStorageSize(MemorySegment struct, int fieldValue) { - struct.set(maxComputeWorkgroupStorageSize$LAYOUT, maxComputeWorkgroupStorageSize$OFFSET, fieldValue); - } - - private static final OfInt maxComputeInvocationsPerWorkgroup$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxComputeInvocationsPerWorkgroup")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxComputeInvocationsPerWorkgroup - * } - */ - public static final OfInt maxComputeInvocationsPerWorkgroup$layout() { - return maxComputeInvocationsPerWorkgroup$LAYOUT; - } - - private static final long maxComputeInvocationsPerWorkgroup$OFFSET = 124; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxComputeInvocationsPerWorkgroup - * } - */ - public static final long maxComputeInvocationsPerWorkgroup$offset() { - return maxComputeInvocationsPerWorkgroup$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxComputeInvocationsPerWorkgroup - * } - */ - public static int maxComputeInvocationsPerWorkgroup(MemorySegment struct) { - return struct.get(maxComputeInvocationsPerWorkgroup$LAYOUT, maxComputeInvocationsPerWorkgroup$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxComputeInvocationsPerWorkgroup - * } - */ - public static void maxComputeInvocationsPerWorkgroup(MemorySegment struct, int fieldValue) { - struct.set(maxComputeInvocationsPerWorkgroup$LAYOUT, maxComputeInvocationsPerWorkgroup$OFFSET, fieldValue); - } - - private static final OfInt maxComputeWorkgroupSizeX$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxComputeWorkgroupSizeX")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeX - * } - */ - public static final OfInt maxComputeWorkgroupSizeX$layout() { - return maxComputeWorkgroupSizeX$LAYOUT; - } - - private static final long maxComputeWorkgroupSizeX$OFFSET = 128; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeX - * } - */ - public static final long maxComputeWorkgroupSizeX$offset() { - return maxComputeWorkgroupSizeX$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeX - * } - */ - public static int maxComputeWorkgroupSizeX(MemorySegment struct) { - return struct.get(maxComputeWorkgroupSizeX$LAYOUT, maxComputeWorkgroupSizeX$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeX - * } - */ - public static void maxComputeWorkgroupSizeX(MemorySegment struct, int fieldValue) { - struct.set(maxComputeWorkgroupSizeX$LAYOUT, maxComputeWorkgroupSizeX$OFFSET, fieldValue); - } - - private static final OfInt maxComputeWorkgroupSizeY$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxComputeWorkgroupSizeY")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeY - * } - */ - public static final OfInt maxComputeWorkgroupSizeY$layout() { - return maxComputeWorkgroupSizeY$LAYOUT; - } - - private static final long maxComputeWorkgroupSizeY$OFFSET = 132; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeY - * } - */ - public static final long maxComputeWorkgroupSizeY$offset() { - return maxComputeWorkgroupSizeY$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeY - * } - */ - public static int maxComputeWorkgroupSizeY(MemorySegment struct) { - return struct.get(maxComputeWorkgroupSizeY$LAYOUT, maxComputeWorkgroupSizeY$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeY - * } - */ - public static void maxComputeWorkgroupSizeY(MemorySegment struct, int fieldValue) { - struct.set(maxComputeWorkgroupSizeY$LAYOUT, maxComputeWorkgroupSizeY$OFFSET, fieldValue); - } - - private static final OfInt maxComputeWorkgroupSizeZ$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxComputeWorkgroupSizeZ")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeZ - * } - */ - public static final OfInt maxComputeWorkgroupSizeZ$layout() { - return maxComputeWorkgroupSizeZ$LAYOUT; - } - - private static final long maxComputeWorkgroupSizeZ$OFFSET = 136; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeZ - * } - */ - public static final long maxComputeWorkgroupSizeZ$offset() { - return maxComputeWorkgroupSizeZ$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeZ - * } - */ - public static int maxComputeWorkgroupSizeZ(MemorySegment struct) { - return struct.get(maxComputeWorkgroupSizeZ$LAYOUT, maxComputeWorkgroupSizeZ$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupSizeZ - * } - */ - public static void maxComputeWorkgroupSizeZ(MemorySegment struct, int fieldValue) { - struct.set(maxComputeWorkgroupSizeZ$LAYOUT, maxComputeWorkgroupSizeZ$OFFSET, fieldValue); - } - - private static final OfInt maxComputeWorkgroupsPerDimension$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxComputeWorkgroupsPerDimension")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupsPerDimension - * } - */ - public static final OfInt maxComputeWorkgroupsPerDimension$layout() { - return maxComputeWorkgroupsPerDimension$LAYOUT; - } - - private static final long maxComputeWorkgroupsPerDimension$OFFSET = 140; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupsPerDimension - * } - */ - public static final long maxComputeWorkgroupsPerDimension$offset() { - return maxComputeWorkgroupsPerDimension$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupsPerDimension - * } - */ - public static int maxComputeWorkgroupsPerDimension(MemorySegment struct) { - return struct.get(maxComputeWorkgroupsPerDimension$LAYOUT, maxComputeWorkgroupsPerDimension$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxComputeWorkgroupsPerDimension - * } - */ - public static void maxComputeWorkgroupsPerDimension(MemorySegment struct, int fieldValue) { - struct.set(maxComputeWorkgroupsPerDimension$LAYOUT, maxComputeWorkgroupsPerDimension$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPULogCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPULogCallback.java deleted file mode 100644 index e40a55a7c..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPULogCallback.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPULogCallback)(WGPULogLevel, const char *, void *) - * } - */ -public class WGPULogCallback { - - WGPULogCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(int level, MemorySegment message, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPULogCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPULogCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,int level, MemorySegment message, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, level, message, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUMultisampleState.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUMultisampleState.java deleted file mode 100644 index 3fa2ac2b3..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUMultisampleState.java +++ /dev/null @@ -1,266 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUMultisampleState { - * const WGPUChainedStruct *nextInChain; - * uint32_t count; - * uint32_t mask; - * WGPUBool alphaToCoverageEnabled; - * } - * } - */ -public class WGPUMultisampleState { - - WGPUMultisampleState() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("count"), - WGPU.C_INT.withName("mask"), - WGPU.C_INT.withName("alphaToCoverageEnabled"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUMultisampleState"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt count$LAYOUT = (OfInt)$LAYOUT.select(groupElement("count")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static final OfInt count$layout() { - return count$LAYOUT; - } - - private static final long count$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static final long count$offset() { - return count$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static int count(MemorySegment struct) { - return struct.get(count$LAYOUT, count$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static void count(MemorySegment struct, int fieldValue) { - struct.set(count$LAYOUT, count$OFFSET, fieldValue); - } - - private static final OfInt mask$LAYOUT = (OfInt)$LAYOUT.select(groupElement("mask")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t mask - * } - */ - public static final OfInt mask$layout() { - return mask$LAYOUT; - } - - private static final long mask$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t mask - * } - */ - public static final long mask$offset() { - return mask$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t mask - * } - */ - public static int mask(MemorySegment struct) { - return struct.get(mask$LAYOUT, mask$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t mask - * } - */ - public static void mask(MemorySegment struct, int fieldValue) { - struct.set(mask$LAYOUT, mask$OFFSET, fieldValue); - } - - private static final OfInt alphaToCoverageEnabled$LAYOUT = (OfInt)$LAYOUT.select(groupElement("alphaToCoverageEnabled")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool alphaToCoverageEnabled - * } - */ - public static final OfInt alphaToCoverageEnabled$layout() { - return alphaToCoverageEnabled$LAYOUT; - } - - private static final long alphaToCoverageEnabled$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool alphaToCoverageEnabled - * } - */ - public static final long alphaToCoverageEnabled$offset() { - return alphaToCoverageEnabled$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool alphaToCoverageEnabled - * } - */ - public static int alphaToCoverageEnabled(MemorySegment struct) { - return struct.get(alphaToCoverageEnabled$LAYOUT, alphaToCoverageEnabled$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool alphaToCoverageEnabled - * } - */ - public static void alphaToCoverageEnabled(MemorySegment struct, int fieldValue) { - struct.set(alphaToCoverageEnabled$LAYOUT, alphaToCoverageEnabled$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUNativeLimits.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUNativeLimits.java deleted file mode 100644 index 8f89c14bf..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUNativeLimits.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUNativeLimits { - * uint32_t maxPushConstantSize; - * uint32_t maxNonSamplerBindings; - * } - * } - */ -public class WGPUNativeLimits { - - WGPUNativeLimits() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_INT.withName("maxPushConstantSize"), - WGPU.C_INT.withName("maxNonSamplerBindings") - ).withName("WGPUNativeLimits"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfInt maxPushConstantSize$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxPushConstantSize")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxPushConstantSize - * } - */ - public static final OfInt maxPushConstantSize$layout() { - return maxPushConstantSize$LAYOUT; - } - - private static final long maxPushConstantSize$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxPushConstantSize - * } - */ - public static final long maxPushConstantSize$offset() { - return maxPushConstantSize$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxPushConstantSize - * } - */ - public static int maxPushConstantSize(MemorySegment struct) { - return struct.get(maxPushConstantSize$LAYOUT, maxPushConstantSize$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxPushConstantSize - * } - */ - public static void maxPushConstantSize(MemorySegment struct, int fieldValue) { - struct.set(maxPushConstantSize$LAYOUT, maxPushConstantSize$OFFSET, fieldValue); - } - - private static final OfInt maxNonSamplerBindings$LAYOUT = (OfInt)$LAYOUT.select(groupElement("maxNonSamplerBindings")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t maxNonSamplerBindings - * } - */ - public static final OfInt maxNonSamplerBindings$layout() { - return maxNonSamplerBindings$LAYOUT; - } - - private static final long maxNonSamplerBindings$OFFSET = 4; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t maxNonSamplerBindings - * } - */ - public static final long maxNonSamplerBindings$offset() { - return maxNonSamplerBindings$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t maxNonSamplerBindings - * } - */ - public static int maxNonSamplerBindings(MemorySegment struct) { - return struct.get(maxNonSamplerBindings$LAYOUT, maxNonSamplerBindings$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t maxNonSamplerBindings - * } - */ - public static void maxNonSamplerBindings(MemorySegment struct, int fieldValue) { - struct.set(maxNonSamplerBindings$LAYOUT, maxNonSamplerBindings$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUOrigin3D.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUOrigin3D.java deleted file mode 100644 index 54ddff7c9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUOrigin3D.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUOrigin3D { - * uint32_t x; - * uint32_t y; - * uint32_t z; - * } - * } - */ -public class WGPUOrigin3D { - - WGPUOrigin3D() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_INT.withName("x"), - WGPU.C_INT.withName("y"), - WGPU.C_INT.withName("z") - ).withName("WGPUOrigin3D"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfInt x$LAYOUT = (OfInt)$LAYOUT.select(groupElement("x")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t x - * } - */ - public static final OfInt x$layout() { - return x$LAYOUT; - } - - private static final long x$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t x - * } - */ - public static final long x$offset() { - return x$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t x - * } - */ - public static int x(MemorySegment struct) { - return struct.get(x$LAYOUT, x$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t x - * } - */ - public static void x(MemorySegment struct, int fieldValue) { - struct.set(x$LAYOUT, x$OFFSET, fieldValue); - } - - private static final OfInt y$LAYOUT = (OfInt)$LAYOUT.select(groupElement("y")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t y - * } - */ - public static final OfInt y$layout() { - return y$LAYOUT; - } - - private static final long y$OFFSET = 4; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t y - * } - */ - public static final long y$offset() { - return y$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t y - * } - */ - public static int y(MemorySegment struct) { - return struct.get(y$LAYOUT, y$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t y - * } - */ - public static void y(MemorySegment struct, int fieldValue) { - struct.set(y$LAYOUT, y$OFFSET, fieldValue); - } - - private static final OfInt z$LAYOUT = (OfInt)$LAYOUT.select(groupElement("z")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t z - * } - */ - public static final OfInt z$layout() { - return z$LAYOUT; - } - - private static final long z$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t z - * } - */ - public static final long z$offset() { - return z$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t z - * } - */ - public static int z(MemorySegment struct) { - return struct.get(z$LAYOUT, z$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t z - * } - */ - public static void z(MemorySegment struct, int fieldValue) { - struct.set(z$LAYOUT, z$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPipelineLayoutDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPipelineLayoutDescriptor.java deleted file mode 100644 index 57f9c569f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPipelineLayoutDescriptor.java +++ /dev/null @@ -1,265 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUPipelineLayoutDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * size_t bindGroupLayoutCount; - * const WGPUBindGroupLayout *bindGroupLayouts; - * } - * } - */ -public class WGPUPipelineLayoutDescriptor { - - WGPUPipelineLayoutDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_LONG_LONG.withName("bindGroupLayoutCount"), - WGPU.C_POINTER.withName("bindGroupLayouts") - ).withName("WGPUPipelineLayoutDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfLong bindGroupLayoutCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("bindGroupLayoutCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t bindGroupLayoutCount - * } - */ - public static final OfLong bindGroupLayoutCount$layout() { - return bindGroupLayoutCount$LAYOUT; - } - - private static final long bindGroupLayoutCount$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t bindGroupLayoutCount - * } - */ - public static final long bindGroupLayoutCount$offset() { - return bindGroupLayoutCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t bindGroupLayoutCount - * } - */ - public static long bindGroupLayoutCount(MemorySegment struct) { - return struct.get(bindGroupLayoutCount$LAYOUT, bindGroupLayoutCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t bindGroupLayoutCount - * } - */ - public static void bindGroupLayoutCount(MemorySegment struct, long fieldValue) { - struct.set(bindGroupLayoutCount$LAYOUT, bindGroupLayoutCount$OFFSET, fieldValue); - } - - private static final AddressLayout bindGroupLayouts$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("bindGroupLayouts")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUBindGroupLayout *bindGroupLayouts - * } - */ - public static final AddressLayout bindGroupLayouts$layout() { - return bindGroupLayouts$LAYOUT; - } - - private static final long bindGroupLayouts$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUBindGroupLayout *bindGroupLayouts - * } - */ - public static final long bindGroupLayouts$offset() { - return bindGroupLayouts$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUBindGroupLayout *bindGroupLayouts - * } - */ - public static MemorySegment bindGroupLayouts(MemorySegment struct) { - return struct.get(bindGroupLayouts$LAYOUT, bindGroupLayouts$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUBindGroupLayout *bindGroupLayouts - * } - */ - public static void bindGroupLayouts(MemorySegment struct, MemorySegment fieldValue) { - struct.set(bindGroupLayouts$LAYOUT, bindGroupLayouts$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPipelineLayoutExtras.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPipelineLayoutExtras.java deleted file mode 100644 index e0710a6ac..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPipelineLayoutExtras.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUPipelineLayoutExtras { - * WGPUChainedStruct chain; - * size_t pushConstantRangeCount; - * const WGPUPushConstantRange *pushConstantRanges; - * } - * } - */ -public class WGPUPipelineLayoutExtras { - - WGPUPipelineLayoutExtras() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_LONG_LONG.withName("pushConstantRangeCount"), - WGPU.C_POINTER.withName("pushConstantRanges") - ).withName("WGPUPipelineLayoutExtras"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final OfLong pushConstantRangeCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("pushConstantRangeCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t pushConstantRangeCount - * } - */ - public static final OfLong pushConstantRangeCount$layout() { - return pushConstantRangeCount$LAYOUT; - } - - private static final long pushConstantRangeCount$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t pushConstantRangeCount - * } - */ - public static final long pushConstantRangeCount$offset() { - return pushConstantRangeCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t pushConstantRangeCount - * } - */ - public static long pushConstantRangeCount(MemorySegment struct) { - return struct.get(pushConstantRangeCount$LAYOUT, pushConstantRangeCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t pushConstantRangeCount - * } - */ - public static void pushConstantRangeCount(MemorySegment struct, long fieldValue) { - struct.set(pushConstantRangeCount$LAYOUT, pushConstantRangeCount$OFFSET, fieldValue); - } - - private static final AddressLayout pushConstantRanges$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("pushConstantRanges")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUPushConstantRange *pushConstantRanges - * } - */ - public static final AddressLayout pushConstantRanges$layout() { - return pushConstantRanges$LAYOUT; - } - - private static final long pushConstantRanges$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUPushConstantRange *pushConstantRanges - * } - */ - public static final long pushConstantRanges$offset() { - return pushConstantRanges$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUPushConstantRange *pushConstantRanges - * } - */ - public static MemorySegment pushConstantRanges(MemorySegment struct) { - return struct.get(pushConstantRanges$LAYOUT, pushConstantRanges$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUPushConstantRange *pushConstantRanges - * } - */ - public static void pushConstantRanges(MemorySegment struct, MemorySegment fieldValue) { - struct.set(pushConstantRanges$LAYOUT, pushConstantRanges$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPrimitiveDepthClipControl.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPrimitiveDepthClipControl.java deleted file mode 100644 index 87c991c29..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPrimitiveDepthClipControl.java +++ /dev/null @@ -1,174 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUPrimitiveDepthClipControl { - * WGPUChainedStruct chain; - * WGPUBool unclippedDepth; - * } - * } - */ -public class WGPUPrimitiveDepthClipControl { - - WGPUPrimitiveDepthClipControl() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_INT.withName("unclippedDepth"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUPrimitiveDepthClipControl"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final OfInt unclippedDepth$LAYOUT = (OfInt)$LAYOUT.select(groupElement("unclippedDepth")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool unclippedDepth - * } - */ - public static final OfInt unclippedDepth$layout() { - return unclippedDepth$LAYOUT; - } - - private static final long unclippedDepth$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool unclippedDepth - * } - */ - public static final long unclippedDepth$offset() { - return unclippedDepth$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool unclippedDepth - * } - */ - public static int unclippedDepth(MemorySegment struct) { - return struct.get(unclippedDepth$LAYOUT, unclippedDepth$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool unclippedDepth - * } - */ - public static void unclippedDepth(MemorySegment struct, int fieldValue) { - struct.set(unclippedDepth$LAYOUT, unclippedDepth$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPrimitiveState.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPrimitiveState.java deleted file mode 100644 index f3a188a75..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPrimitiveState.java +++ /dev/null @@ -1,311 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUPrimitiveState { - * const WGPUChainedStruct *nextInChain; - * WGPUPrimitiveTopology topology; - * WGPUIndexFormat stripIndexFormat; - * WGPUFrontFace frontFace; - * WGPUCullMode cullMode; - * } - * } - */ -public class WGPUPrimitiveState { - - WGPUPrimitiveState() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("topology"), - WGPU.C_INT.withName("stripIndexFormat"), - WGPU.C_INT.withName("frontFace"), - WGPU.C_INT.withName("cullMode") - ).withName("WGPUPrimitiveState"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt topology$LAYOUT = (OfInt)$LAYOUT.select(groupElement("topology")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUPrimitiveTopology topology - * } - */ - public static final OfInt topology$layout() { - return topology$LAYOUT; - } - - private static final long topology$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUPrimitiveTopology topology - * } - */ - public static final long topology$offset() { - return topology$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUPrimitiveTopology topology - * } - */ - public static int topology(MemorySegment struct) { - return struct.get(topology$LAYOUT, topology$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUPrimitiveTopology topology - * } - */ - public static void topology(MemorySegment struct, int fieldValue) { - struct.set(topology$LAYOUT, topology$OFFSET, fieldValue); - } - - private static final OfInt stripIndexFormat$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stripIndexFormat")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUIndexFormat stripIndexFormat - * } - */ - public static final OfInt stripIndexFormat$layout() { - return stripIndexFormat$LAYOUT; - } - - private static final long stripIndexFormat$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUIndexFormat stripIndexFormat - * } - */ - public static final long stripIndexFormat$offset() { - return stripIndexFormat$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUIndexFormat stripIndexFormat - * } - */ - public static int stripIndexFormat(MemorySegment struct) { - return struct.get(stripIndexFormat$LAYOUT, stripIndexFormat$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUIndexFormat stripIndexFormat - * } - */ - public static void stripIndexFormat(MemorySegment struct, int fieldValue) { - struct.set(stripIndexFormat$LAYOUT, stripIndexFormat$OFFSET, fieldValue); - } - - private static final OfInt frontFace$LAYOUT = (OfInt)$LAYOUT.select(groupElement("frontFace")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUFrontFace frontFace - * } - */ - public static final OfInt frontFace$layout() { - return frontFace$LAYOUT; - } - - private static final long frontFace$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUFrontFace frontFace - * } - */ - public static final long frontFace$offset() { - return frontFace$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUFrontFace frontFace - * } - */ - public static int frontFace(MemorySegment struct) { - return struct.get(frontFace$LAYOUT, frontFace$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUFrontFace frontFace - * } - */ - public static void frontFace(MemorySegment struct, int fieldValue) { - struct.set(frontFace$LAYOUT, frontFace$OFFSET, fieldValue); - } - - private static final OfInt cullMode$LAYOUT = (OfInt)$LAYOUT.select(groupElement("cullMode")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUCullMode cullMode - * } - */ - public static final OfInt cullMode$layout() { - return cullMode$LAYOUT; - } - - private static final long cullMode$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUCullMode cullMode - * } - */ - public static final long cullMode$offset() { - return cullMode$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUCullMode cullMode - * } - */ - public static int cullMode(MemorySegment struct) { - return struct.get(cullMode$LAYOUT, cullMode$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUCullMode cullMode - * } - */ - public static void cullMode(MemorySegment struct, int fieldValue) { - struct.set(cullMode$LAYOUT, cullMode$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProc.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProc.java deleted file mode 100644 index 61c895593..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProc.java +++ /dev/null @@ -1,65 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProc)(void) - * } - */ -public class WGPUProc { - - WGPUProc() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProc.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProc.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr) { - try { - DOWN$MH.invokeExact(funcPtr); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterEnumerateFeatures.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterEnumerateFeatures.java deleted file mode 100644 index 55172e0b9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterEnumerateFeatures.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef size_t (*WGPUProcAdapterEnumerateFeatures)(WGPUAdapter, WGPUFeatureName *) - * } - */ -public class WGPUProcAdapterEnumerateFeatures { - - WGPUProcAdapterEnumerateFeatures() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - long apply(MemorySegment adapter, MemorySegment features); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcAdapterEnumerateFeatures.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcAdapterEnumerateFeatures.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static long invoke(MemorySegment funcPtr,MemorySegment adapter, MemorySegment features) { - try { - return (long) DOWN$MH.invokeExact(funcPtr, adapter, features); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterGetLimits.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterGetLimits.java deleted file mode 100644 index d2df318fd..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterGetLimits.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBool (*WGPUProcAdapterGetLimits)(WGPUAdapter, WGPUSupportedLimits *) - * } - */ -public class WGPUProcAdapterGetLimits { - - WGPUProcAdapterGetLimits() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment adapter, MemorySegment limits); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcAdapterGetLimits.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcAdapterGetLimits.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment adapter, MemorySegment limits) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, adapter, limits); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterGetProperties.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterGetProperties.java deleted file mode 100644 index 02cbd265f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterGetProperties.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcAdapterGetProperties)(WGPUAdapter, WGPUAdapterProperties *) - * } - */ -public class WGPUProcAdapterGetProperties { - - WGPUProcAdapterGetProperties() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment adapter, MemorySegment properties); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcAdapterGetProperties.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcAdapterGetProperties.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment adapter, MemorySegment properties) { - try { - DOWN$MH.invokeExact(funcPtr, adapter, properties); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterHasFeature.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterHasFeature.java deleted file mode 100644 index a9ca266a7..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterHasFeature.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBool (*WGPUProcAdapterHasFeature)(WGPUAdapter, WGPUFeatureName) - * } - */ -public class WGPUProcAdapterHasFeature { - - WGPUProcAdapterHasFeature() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment adapter, int feature); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcAdapterHasFeature.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcAdapterHasFeature.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment adapter, int feature) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, adapter, feature); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterReference.java deleted file mode 100644 index e9170ab04..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcAdapterReference)(WGPUAdapter) - * } - */ -public class WGPUProcAdapterReference { - - WGPUProcAdapterReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment adapter); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcAdapterReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcAdapterReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment adapter) { - try { - DOWN$MH.invokeExact(funcPtr, adapter); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterRelease.java deleted file mode 100644 index d050dcb94..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcAdapterRelease)(WGPUAdapter) - * } - */ -public class WGPUProcAdapterRelease { - - WGPUProcAdapterRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment adapter); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcAdapterRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcAdapterRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment adapter) { - try { - DOWN$MH.invokeExact(funcPtr, adapter); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterRequestDevice.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterRequestDevice.java deleted file mode 100644 index 0f53fc25e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcAdapterRequestDevice.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcAdapterRequestDevice)(WGPUAdapter, const WGPUDeviceDescriptor *, WGPURequestDeviceCallback, void *) - * } - */ -public class WGPUProcAdapterRequestDevice { - - WGPUProcAdapterRequestDevice() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment adapter, MemorySegment descriptor, MemorySegment callback, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcAdapterRequestDevice.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcAdapterRequestDevice.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment adapter, MemorySegment descriptor, MemorySegment callback, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, adapter, descriptor, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutReference.java deleted file mode 100644 index adb4c7c7d..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBindGroupLayoutReference)(WGPUBindGroupLayout) - * } - */ -public class WGPUProcBindGroupLayoutReference { - - WGPUProcBindGroupLayoutReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment bindGroupLayout); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBindGroupLayoutReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBindGroupLayoutReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment bindGroupLayout) { - try { - DOWN$MH.invokeExact(funcPtr, bindGroupLayout); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutRelease.java deleted file mode 100644 index 07c051c6a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBindGroupLayoutRelease)(WGPUBindGroupLayout) - * } - */ -public class WGPUProcBindGroupLayoutRelease { - - WGPUProcBindGroupLayoutRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment bindGroupLayout); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBindGroupLayoutRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBindGroupLayoutRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment bindGroupLayout) { - try { - DOWN$MH.invokeExact(funcPtr, bindGroupLayout); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutSetLabel.java deleted file mode 100644 index 28be17652..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupLayoutSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBindGroupLayoutSetLabel)(WGPUBindGroupLayout, const char *) - * } - */ -public class WGPUProcBindGroupLayoutSetLabel { - - WGPUProcBindGroupLayoutSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment bindGroupLayout, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBindGroupLayoutSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBindGroupLayoutSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment bindGroupLayout, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, bindGroupLayout, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupReference.java deleted file mode 100644 index ba9293e2a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBindGroupReference)(WGPUBindGroup) - * } - */ -public class WGPUProcBindGroupReference { - - WGPUProcBindGroupReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment bindGroup); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBindGroupReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBindGroupReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment bindGroup) { - try { - DOWN$MH.invokeExact(funcPtr, bindGroup); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupRelease.java deleted file mode 100644 index d90742fd5..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBindGroupRelease)(WGPUBindGroup) - * } - */ -public class WGPUProcBindGroupRelease { - - WGPUProcBindGroupRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment bindGroup); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBindGroupRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBindGroupRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment bindGroup) { - try { - DOWN$MH.invokeExact(funcPtr, bindGroup); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupSetLabel.java deleted file mode 100644 index 7ab284ed7..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBindGroupSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBindGroupSetLabel)(WGPUBindGroup, const char *) - * } - */ -public class WGPUProcBindGroupSetLabel { - - WGPUProcBindGroupSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment bindGroup, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBindGroupSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBindGroupSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment bindGroup, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, bindGroup, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferDestroy.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferDestroy.java deleted file mode 100644 index f717a0d12..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferDestroy.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBufferDestroy)(WGPUBuffer) - * } - */ -public class WGPUProcBufferDestroy { - - WGPUProcBufferDestroy() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment buffer); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferDestroy.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferDestroy.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment buffer) { - try { - DOWN$MH.invokeExact(funcPtr, buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetConstMappedRange.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetConstMappedRange.java deleted file mode 100644 index a940f7e00..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetConstMappedRange.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef const void *(*WGPUProcBufferGetConstMappedRange)(WGPUBuffer, size_t, size_t) - * } - */ -public class WGPUProcBufferGetConstMappedRange { - - WGPUProcBufferGetConstMappedRange() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment buffer, long offset, long size); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferGetConstMappedRange.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferGetConstMappedRange.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment buffer, long offset, long size) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, buffer, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetMapState.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetMapState.java deleted file mode 100644 index 4bf6e7085..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetMapState.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBufferMapState (*WGPUProcBufferGetMapState)(WGPUBuffer) - * } - */ -public class WGPUProcBufferGetMapState { - - WGPUProcBufferGetMapState() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment buffer); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferGetMapState.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferGetMapState.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment buffer) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetMappedRange.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetMappedRange.java deleted file mode 100644 index 89df36dc8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetMappedRange.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void *(*WGPUProcBufferGetMappedRange)(WGPUBuffer, size_t, size_t) - * } - */ -public class WGPUProcBufferGetMappedRange { - - WGPUProcBufferGetMappedRange() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment buffer, long offset, long size); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferGetMappedRange.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferGetMappedRange.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment buffer, long offset, long size) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, buffer, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetSize.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetSize.java deleted file mode 100644 index 6b53df00a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetSize.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef uint64_t (*WGPUProcBufferGetSize)(WGPUBuffer) - * } - */ -public class WGPUProcBufferGetSize { - - WGPUProcBufferGetSize() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - long apply(MemorySegment buffer); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferGetSize.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferGetSize.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static long invoke(MemorySegment funcPtr,MemorySegment buffer) { - try { - return (long) DOWN$MH.invokeExact(funcPtr, buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetUsage.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetUsage.java deleted file mode 100644 index 31dac55f8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferGetUsage.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBufferUsageFlags (*WGPUProcBufferGetUsage)(WGPUBuffer) - * } - */ -public class WGPUProcBufferGetUsage { - - WGPUProcBufferGetUsage() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment buffer); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferGetUsage.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferGetUsage.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment buffer) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferMapAsync.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferMapAsync.java deleted file mode 100644 index e1e170a48..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferMapAsync.java +++ /dev/null @@ -1,72 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBufferMapAsync)(WGPUBuffer, WGPUMapModeFlags, size_t, size_t, WGPUBufferMapCallback, void *) - * } - */ -public class WGPUProcBufferMapAsync { - - WGPUProcBufferMapAsync() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment buffer, int mode, long offset, long size, MemorySegment callback, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferMapAsync.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferMapAsync.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment buffer, int mode, long offset, long size, MemorySegment callback, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, buffer, mode, offset, size, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferReference.java deleted file mode 100644 index 622d487d8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBufferReference)(WGPUBuffer) - * } - */ -public class WGPUProcBufferReference { - - WGPUProcBufferReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment buffer); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment buffer) { - try { - DOWN$MH.invokeExact(funcPtr, buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferRelease.java deleted file mode 100644 index a207d6013..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBufferRelease)(WGPUBuffer) - * } - */ -public class WGPUProcBufferRelease { - - WGPUProcBufferRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment buffer); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment buffer) { - try { - DOWN$MH.invokeExact(funcPtr, buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferSetLabel.java deleted file mode 100644 index df6cdb964..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBufferSetLabel)(WGPUBuffer, const char *) - * } - */ -public class WGPUProcBufferSetLabel { - - WGPUProcBufferSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment buffer, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment buffer, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, buffer, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferUnmap.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferUnmap.java deleted file mode 100644 index 24e98216f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcBufferUnmap.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcBufferUnmap)(WGPUBuffer) - * } - */ -public class WGPUProcBufferUnmap { - - WGPUProcBufferUnmap() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment buffer); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcBufferUnmap.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcBufferUnmap.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment buffer) { - try { - DOWN$MH.invokeExact(funcPtr, buffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferReference.java deleted file mode 100644 index a7ab8f5f4..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandBufferReference)(WGPUCommandBuffer) - * } - */ -public class WGPUProcCommandBufferReference { - - WGPUProcCommandBufferReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandBuffer); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandBufferReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandBufferReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandBuffer) { - try { - DOWN$MH.invokeExact(funcPtr, commandBuffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferRelease.java deleted file mode 100644 index 02c0c57e5..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandBufferRelease)(WGPUCommandBuffer) - * } - */ -public class WGPUProcCommandBufferRelease { - - WGPUProcCommandBufferRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandBuffer); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandBufferRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandBufferRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandBuffer) { - try { - DOWN$MH.invokeExact(funcPtr, commandBuffer); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferSetLabel.java deleted file mode 100644 index de189ab8f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandBufferSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandBufferSetLabel)(WGPUCommandBuffer, const char *) - * } - */ -public class WGPUProcCommandBufferSetLabel { - - WGPUProcCommandBufferSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandBuffer, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandBufferSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandBufferSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandBuffer, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, commandBuffer, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderBeginComputePass.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderBeginComputePass.java deleted file mode 100644 index b7283b89d..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderBeginComputePass.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUComputePassEncoder (*WGPUProcCommandEncoderBeginComputePass)(WGPUCommandEncoder, const WGPUComputePassDescriptor *) - * } - */ -public class WGPUProcCommandEncoderBeginComputePass { - - WGPUProcCommandEncoderBeginComputePass() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment commandEncoder, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderBeginComputePass.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderBeginComputePass.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, commandEncoder, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderBeginRenderPass.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderBeginRenderPass.java deleted file mode 100644 index 31ebfee53..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderBeginRenderPass.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPURenderPassEncoder (*WGPUProcCommandEncoderBeginRenderPass)(WGPUCommandEncoder, const WGPURenderPassDescriptor *) - * } - */ -public class WGPUProcCommandEncoderBeginRenderPass { - - WGPUProcCommandEncoderBeginRenderPass() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment commandEncoder, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderBeginRenderPass.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderBeginRenderPass.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, commandEncoder, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderClearBuffer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderClearBuffer.java deleted file mode 100644 index 8165e9227..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderClearBuffer.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderClearBuffer)(WGPUCommandEncoder, WGPUBuffer, uint64_t, uint64_t) - * } - */ -public class WGPUProcCommandEncoderClearBuffer { - - WGPUProcCommandEncoderClearBuffer() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder, MemorySegment buffer, long offset, long size); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderClearBuffer.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderClearBuffer.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment buffer, long offset, long size) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder, buffer, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyBufferToBuffer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyBufferToBuffer.java deleted file mode 100644 index 81c252cd3..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyBufferToBuffer.java +++ /dev/null @@ -1,72 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderCopyBufferToBuffer)(WGPUCommandEncoder, WGPUBuffer, uint64_t, WGPUBuffer, uint64_t, uint64_t) - * } - */ -public class WGPUProcCommandEncoderCopyBufferToBuffer { - - WGPUProcCommandEncoderCopyBufferToBuffer() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder, MemorySegment source, long sourceOffset, MemorySegment destination, long destinationOffset, long size); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderCopyBufferToBuffer.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderCopyBufferToBuffer.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment source, long sourceOffset, MemorySegment destination, long destinationOffset, long size) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder, source, sourceOffset, destination, destinationOffset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyBufferToTexture.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyBufferToTexture.java deleted file mode 100644 index 656c4e907..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyBufferToTexture.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderCopyBufferToTexture)(WGPUCommandEncoder, const WGPUImageCopyBuffer *, const WGPUImageCopyTexture *, const WGPUExtent3D *) - * } - */ -public class WGPUProcCommandEncoderCopyBufferToTexture { - - WGPUProcCommandEncoderCopyBufferToTexture() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder, MemorySegment source, MemorySegment destination, MemorySegment copySize); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderCopyBufferToTexture.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderCopyBufferToTexture.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment source, MemorySegment destination, MemorySegment copySize) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder, source, destination, copySize); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyTextureToBuffer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyTextureToBuffer.java deleted file mode 100644 index c9b20c642..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyTextureToBuffer.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderCopyTextureToBuffer)(WGPUCommandEncoder, const WGPUImageCopyTexture *, const WGPUImageCopyBuffer *, const WGPUExtent3D *) - * } - */ -public class WGPUProcCommandEncoderCopyTextureToBuffer { - - WGPUProcCommandEncoderCopyTextureToBuffer() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder, MemorySegment source, MemorySegment destination, MemorySegment copySize); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderCopyTextureToBuffer.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderCopyTextureToBuffer.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment source, MemorySegment destination, MemorySegment copySize) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder, source, destination, copySize); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyTextureToTexture.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyTextureToTexture.java deleted file mode 100644 index 647932fe0..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderCopyTextureToTexture.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderCopyTextureToTexture)(WGPUCommandEncoder, const WGPUImageCopyTexture *, const WGPUImageCopyTexture *, const WGPUExtent3D *) - * } - */ -public class WGPUProcCommandEncoderCopyTextureToTexture { - - WGPUProcCommandEncoderCopyTextureToTexture() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder, MemorySegment source, MemorySegment destination, MemorySegment copySize); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderCopyTextureToTexture.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderCopyTextureToTexture.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment source, MemorySegment destination, MemorySegment copySize) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder, source, destination, copySize); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderFinish.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderFinish.java deleted file mode 100644 index a82aac63c..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderFinish.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUCommandBuffer (*WGPUProcCommandEncoderFinish)(WGPUCommandEncoder, const WGPUCommandBufferDescriptor *) - * } - */ -public class WGPUProcCommandEncoderFinish { - - WGPUProcCommandEncoderFinish() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment commandEncoder, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderFinish.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderFinish.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, commandEncoder, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderInsertDebugMarker.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderInsertDebugMarker.java deleted file mode 100644 index 98152c3fc..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderInsertDebugMarker.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderInsertDebugMarker)(WGPUCommandEncoder, const char *) - * } - */ -public class WGPUProcCommandEncoderInsertDebugMarker { - - WGPUProcCommandEncoderInsertDebugMarker() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder, MemorySegment markerLabel); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderInsertDebugMarker.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderInsertDebugMarker.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment markerLabel) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder, markerLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderPopDebugGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderPopDebugGroup.java deleted file mode 100644 index 2707b57f0..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderPopDebugGroup.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderPopDebugGroup)(WGPUCommandEncoder) - * } - */ -public class WGPUProcCommandEncoderPopDebugGroup { - - WGPUProcCommandEncoderPopDebugGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderPopDebugGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderPopDebugGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderPushDebugGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderPushDebugGroup.java deleted file mode 100644 index cc3fb8a3e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderPushDebugGroup.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderPushDebugGroup)(WGPUCommandEncoder, const char *) - * } - */ -public class WGPUProcCommandEncoderPushDebugGroup { - - WGPUProcCommandEncoderPushDebugGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder, MemorySegment groupLabel); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderPushDebugGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderPushDebugGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment groupLabel) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder, groupLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderReference.java deleted file mode 100644 index 5ad3fea5a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderReference)(WGPUCommandEncoder) - * } - */ -public class WGPUProcCommandEncoderReference { - - WGPUProcCommandEncoderReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderRelease.java deleted file mode 100644 index f598c32af..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderRelease)(WGPUCommandEncoder) - * } - */ -public class WGPUProcCommandEncoderRelease { - - WGPUProcCommandEncoderRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderResolveQuerySet.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderResolveQuerySet.java deleted file mode 100644 index 5b112c143..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderResolveQuerySet.java +++ /dev/null @@ -1,72 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderResolveQuerySet)(WGPUCommandEncoder, WGPUQuerySet, uint32_t, uint32_t, WGPUBuffer, uint64_t) - * } - */ -public class WGPUProcCommandEncoderResolveQuerySet { - - WGPUProcCommandEncoderResolveQuerySet() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder, MemorySegment querySet, int firstQuery, int queryCount, MemorySegment destination, long destinationOffset); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderResolveQuerySet.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderResolveQuerySet.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment querySet, int firstQuery, int queryCount, MemorySegment destination, long destinationOffset) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder, querySet, firstQuery, queryCount, destination, destinationOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderSetLabel.java deleted file mode 100644 index e8bae3494..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderSetLabel)(WGPUCommandEncoder, const char *) - * } - */ -public class WGPUProcCommandEncoderSetLabel { - - WGPUProcCommandEncoderSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderWriteTimestamp.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderWriteTimestamp.java deleted file mode 100644 index 7e625f908..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCommandEncoderWriteTimestamp.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcCommandEncoderWriteTimestamp)(WGPUCommandEncoder, WGPUQuerySet, uint32_t) - * } - */ -public class WGPUProcCommandEncoderWriteTimestamp { - - WGPUProcCommandEncoderWriteTimestamp() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment commandEncoder, MemorySegment querySet, int queryIndex); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCommandEncoderWriteTimestamp.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCommandEncoderWriteTimestamp.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment commandEncoder, MemorySegment querySet, int queryIndex) { - try { - DOWN$MH.invokeExact(funcPtr, commandEncoder, querySet, queryIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderDispatchWorkgroups.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderDispatchWorkgroups.java deleted file mode 100644 index 1a2391bea..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderDispatchWorkgroups.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderDispatchWorkgroups)(WGPUComputePassEncoder, uint32_t, uint32_t, uint32_t) - * } - */ -public class WGPUProcComputePassEncoderDispatchWorkgroups { - - WGPUProcComputePassEncoderDispatchWorkgroups() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder, int workgroupCountX, int workgroupCountY, int workgroupCountZ); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderDispatchWorkgroups.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderDispatchWorkgroups.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder, int workgroupCountX, int workgroupCountY, int workgroupCountZ) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder, workgroupCountX, workgroupCountY, workgroupCountZ); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderDispatchWorkgroupsIndirect.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderDispatchWorkgroupsIndirect.java deleted file mode 100644 index ea2316398..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderDispatchWorkgroupsIndirect.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderDispatchWorkgroupsIndirect)(WGPUComputePassEncoder, WGPUBuffer, uint64_t) - * } - */ -public class WGPUProcComputePassEncoderDispatchWorkgroupsIndirect { - - WGPUProcComputePassEncoderDispatchWorkgroupsIndirect() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder, MemorySegment indirectBuffer, long indirectOffset); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderDispatchWorkgroupsIndirect.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderDispatchWorkgroupsIndirect.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder, MemorySegment indirectBuffer, long indirectOffset) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder, indirectBuffer, indirectOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderEnd.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderEnd.java deleted file mode 100644 index 1c7c593e8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderEnd.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderEnd)(WGPUComputePassEncoder) - * } - */ -public class WGPUProcComputePassEncoderEnd { - - WGPUProcComputePassEncoderEnd() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderEnd.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderEnd.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderInsertDebugMarker.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderInsertDebugMarker.java deleted file mode 100644 index 5cef6c04a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderInsertDebugMarker.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderInsertDebugMarker)(WGPUComputePassEncoder, const char *) - * } - */ -public class WGPUProcComputePassEncoderInsertDebugMarker { - - WGPUProcComputePassEncoderInsertDebugMarker() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder, MemorySegment markerLabel); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderInsertDebugMarker.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderInsertDebugMarker.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder, MemorySegment markerLabel) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder, markerLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderPopDebugGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderPopDebugGroup.java deleted file mode 100644 index 2a7dc4bbf..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderPopDebugGroup.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderPopDebugGroup)(WGPUComputePassEncoder) - * } - */ -public class WGPUProcComputePassEncoderPopDebugGroup { - - WGPUProcComputePassEncoderPopDebugGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderPopDebugGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderPopDebugGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderPushDebugGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderPushDebugGroup.java deleted file mode 100644 index 934e9f8aa..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderPushDebugGroup.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderPushDebugGroup)(WGPUComputePassEncoder, const char *) - * } - */ -public class WGPUProcComputePassEncoderPushDebugGroup { - - WGPUProcComputePassEncoderPushDebugGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder, MemorySegment groupLabel); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderPushDebugGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderPushDebugGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder, MemorySegment groupLabel) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder, groupLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderReference.java deleted file mode 100644 index 1027e0fd9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderReference)(WGPUComputePassEncoder) - * } - */ -public class WGPUProcComputePassEncoderReference { - - WGPUProcComputePassEncoderReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderRelease.java deleted file mode 100644 index 6f7f0d0cb..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderRelease)(WGPUComputePassEncoder) - * } - */ -public class WGPUProcComputePassEncoderRelease { - - WGPUProcComputePassEncoderRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetBindGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetBindGroup.java deleted file mode 100644 index 8c0107eb1..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetBindGroup.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderSetBindGroup)(WGPUComputePassEncoder, uint32_t, WGPUBindGroup, size_t, const uint32_t *) - * } - */ -public class WGPUProcComputePassEncoderSetBindGroup { - - WGPUProcComputePassEncoderSetBindGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder, int groupIndex, MemorySegment group, long dynamicOffsetCount, MemorySegment dynamicOffsets); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderSetBindGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderSetBindGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder, int groupIndex, MemorySegment group, long dynamicOffsetCount, MemorySegment dynamicOffsets) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder, groupIndex, group, dynamicOffsetCount, dynamicOffsets); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetLabel.java deleted file mode 100644 index f2b79547d..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderSetLabel)(WGPUComputePassEncoder, const char *) - * } - */ -public class WGPUProcComputePassEncoderSetLabel { - - WGPUProcComputePassEncoderSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetPipeline.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetPipeline.java deleted file mode 100644 index 7104c9dfc..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePassEncoderSetPipeline.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePassEncoderSetPipeline)(WGPUComputePassEncoder, WGPUComputePipeline) - * } - */ -public class WGPUProcComputePassEncoderSetPipeline { - - WGPUProcComputePassEncoderSetPipeline() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePassEncoder, MemorySegment pipeline); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePassEncoderSetPipeline.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePassEncoderSetPipeline.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePassEncoder, MemorySegment pipeline) { - try { - DOWN$MH.invokeExact(funcPtr, computePassEncoder, pipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineGetBindGroupLayout.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineGetBindGroupLayout.java deleted file mode 100644 index 9d603a6cd..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineGetBindGroupLayout.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBindGroupLayout (*WGPUProcComputePipelineGetBindGroupLayout)(WGPUComputePipeline, uint32_t) - * } - */ -public class WGPUProcComputePipelineGetBindGroupLayout { - - WGPUProcComputePipelineGetBindGroupLayout() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment computePipeline, int groupIndex); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePipelineGetBindGroupLayout.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePipelineGetBindGroupLayout.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment computePipeline, int groupIndex) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, computePipeline, groupIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineReference.java deleted file mode 100644 index 3a2266a4e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePipelineReference)(WGPUComputePipeline) - * } - */ -public class WGPUProcComputePipelineReference { - - WGPUProcComputePipelineReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePipeline); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePipelineReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePipelineReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePipeline) { - try { - DOWN$MH.invokeExact(funcPtr, computePipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineRelease.java deleted file mode 100644 index b53d6aa69..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePipelineRelease)(WGPUComputePipeline) - * } - */ -public class WGPUProcComputePipelineRelease { - - WGPUProcComputePipelineRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePipeline); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePipelineRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePipelineRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePipeline) { - try { - DOWN$MH.invokeExact(funcPtr, computePipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineSetLabel.java deleted file mode 100644 index 80251573a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcComputePipelineSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcComputePipelineSetLabel)(WGPUComputePipeline, const char *) - * } - */ -public class WGPUProcComputePipelineSetLabel { - - WGPUProcComputePipelineSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment computePipeline, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcComputePipelineSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcComputePipelineSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment computePipeline, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, computePipeline, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCreateInstance.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCreateInstance.java deleted file mode 100644 index d82f74f33..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcCreateInstance.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUInstance (*WGPUProcCreateInstance)(const WGPUInstanceDescriptor *) - * } - */ -public class WGPUProcCreateInstance { - - WGPUProcCreateInstance() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcCreateInstance.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcCreateInstance.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBindGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBindGroup.java deleted file mode 100644 index e30a075c9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBindGroup.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBindGroup (*WGPUProcDeviceCreateBindGroup)(WGPUDevice, const WGPUBindGroupDescriptor *) - * } - */ -public class WGPUProcDeviceCreateBindGroup { - - WGPUProcDeviceCreateBindGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateBindGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateBindGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBindGroupLayout.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBindGroupLayout.java deleted file mode 100644 index 0dd5255a6..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBindGroupLayout.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBindGroupLayout (*WGPUProcDeviceCreateBindGroupLayout)(WGPUDevice, const WGPUBindGroupLayoutDescriptor *) - * } - */ -public class WGPUProcDeviceCreateBindGroupLayout { - - WGPUProcDeviceCreateBindGroupLayout() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateBindGroupLayout.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateBindGroupLayout.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBuffer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBuffer.java deleted file mode 100644 index 99683a10a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateBuffer.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBuffer (*WGPUProcDeviceCreateBuffer)(WGPUDevice, const WGPUBufferDescriptor *) - * } - */ -public class WGPUProcDeviceCreateBuffer { - - WGPUProcDeviceCreateBuffer() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateBuffer.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateBuffer.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateCommandEncoder.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateCommandEncoder.java deleted file mode 100644 index 5702742d8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateCommandEncoder.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUCommandEncoder (*WGPUProcDeviceCreateCommandEncoder)(WGPUDevice, const WGPUCommandEncoderDescriptor *) - * } - */ -public class WGPUProcDeviceCreateCommandEncoder { - - WGPUProcDeviceCreateCommandEncoder() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateCommandEncoder.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateCommandEncoder.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateComputePipeline.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateComputePipeline.java deleted file mode 100644 index b0fc11719..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateComputePipeline.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUComputePipeline (*WGPUProcDeviceCreateComputePipeline)(WGPUDevice, const WGPUComputePipelineDescriptor *) - * } - */ -public class WGPUProcDeviceCreateComputePipeline { - - WGPUProcDeviceCreateComputePipeline() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateComputePipeline.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateComputePipeline.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateComputePipelineAsync.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateComputePipelineAsync.java deleted file mode 100644 index 9110762bd..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateComputePipelineAsync.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcDeviceCreateComputePipelineAsync)(WGPUDevice, const WGPUComputePipelineDescriptor *, WGPUCreateComputePipelineAsyncCallback, void *) - * } - */ -public class WGPUProcDeviceCreateComputePipelineAsync { - - WGPUProcDeviceCreateComputePipelineAsync() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment device, MemorySegment descriptor, MemorySegment callback, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateComputePipelineAsync.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateComputePipelineAsync.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor, MemorySegment callback, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, device, descriptor, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreatePipelineLayout.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreatePipelineLayout.java deleted file mode 100644 index 6997220de..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreatePipelineLayout.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUPipelineLayout (*WGPUProcDeviceCreatePipelineLayout)(WGPUDevice, const WGPUPipelineLayoutDescriptor *) - * } - */ -public class WGPUProcDeviceCreatePipelineLayout { - - WGPUProcDeviceCreatePipelineLayout() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreatePipelineLayout.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreatePipelineLayout.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateQuerySet.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateQuerySet.java deleted file mode 100644 index 5268f91d6..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateQuerySet.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUQuerySet (*WGPUProcDeviceCreateQuerySet)(WGPUDevice, const WGPUQuerySetDescriptor *) - * } - */ -public class WGPUProcDeviceCreateQuerySet { - - WGPUProcDeviceCreateQuerySet() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateQuerySet.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateQuerySet.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderBundleEncoder.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderBundleEncoder.java deleted file mode 100644 index c6410d0c9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderBundleEncoder.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPURenderBundleEncoder (*WGPUProcDeviceCreateRenderBundleEncoder)(WGPUDevice, const WGPURenderBundleEncoderDescriptor *) - * } - */ -public class WGPUProcDeviceCreateRenderBundleEncoder { - - WGPUProcDeviceCreateRenderBundleEncoder() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateRenderBundleEncoder.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateRenderBundleEncoder.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderPipeline.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderPipeline.java deleted file mode 100644 index c4b02e8d4..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderPipeline.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPURenderPipeline (*WGPUProcDeviceCreateRenderPipeline)(WGPUDevice, const WGPURenderPipelineDescriptor *) - * } - */ -public class WGPUProcDeviceCreateRenderPipeline { - - WGPUProcDeviceCreateRenderPipeline() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateRenderPipeline.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateRenderPipeline.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderPipelineAsync.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderPipelineAsync.java deleted file mode 100644 index 4e988efed..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateRenderPipelineAsync.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcDeviceCreateRenderPipelineAsync)(WGPUDevice, const WGPURenderPipelineDescriptor *, WGPUCreateRenderPipelineAsyncCallback, void *) - * } - */ -public class WGPUProcDeviceCreateRenderPipelineAsync { - - WGPUProcDeviceCreateRenderPipelineAsync() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment device, MemorySegment descriptor, MemorySegment callback, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateRenderPipelineAsync.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateRenderPipelineAsync.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor, MemorySegment callback, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, device, descriptor, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateSampler.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateSampler.java deleted file mode 100644 index ca6c41991..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateSampler.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUSampler (*WGPUProcDeviceCreateSampler)(WGPUDevice, const WGPUSamplerDescriptor *) - * } - */ -public class WGPUProcDeviceCreateSampler { - - WGPUProcDeviceCreateSampler() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateSampler.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateSampler.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateShaderModule.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateShaderModule.java deleted file mode 100644 index 3c3ebe7cc..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateShaderModule.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUShaderModule (*WGPUProcDeviceCreateShaderModule)(WGPUDevice, const WGPUShaderModuleDescriptor *) - * } - */ -public class WGPUProcDeviceCreateShaderModule { - - WGPUProcDeviceCreateShaderModule() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateShaderModule.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateShaderModule.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateTexture.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateTexture.java deleted file mode 100644 index ddb3d7e02..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceCreateTexture.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUTexture (*WGPUProcDeviceCreateTexture)(WGPUDevice, const WGPUTextureDescriptor *) - * } - */ -public class WGPUProcDeviceCreateTexture { - - WGPUProcDeviceCreateTexture() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceCreateTexture.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceCreateTexture.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceDestroy.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceDestroy.java deleted file mode 100644 index 1dbd1bbb5..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceDestroy.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcDeviceDestroy)(WGPUDevice) - * } - */ -public class WGPUProcDeviceDestroy { - - WGPUProcDeviceDestroy() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment device); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceDestroy.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceDestroy.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment device) { - try { - DOWN$MH.invokeExact(funcPtr, device); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceEnumerateFeatures.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceEnumerateFeatures.java deleted file mode 100644 index 7e69c550f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceEnumerateFeatures.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef size_t (*WGPUProcDeviceEnumerateFeatures)(WGPUDevice, WGPUFeatureName *) - * } - */ -public class WGPUProcDeviceEnumerateFeatures { - - WGPUProcDeviceEnumerateFeatures() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - long apply(MemorySegment device, MemorySegment features); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceEnumerateFeatures.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceEnumerateFeatures.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static long invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment features) { - try { - return (long) DOWN$MH.invokeExact(funcPtr, device, features); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceGetLimits.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceGetLimits.java deleted file mode 100644 index c0018ccdf..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceGetLimits.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBool (*WGPUProcDeviceGetLimits)(WGPUDevice, WGPUSupportedLimits *) - * } - */ -public class WGPUProcDeviceGetLimits { - - WGPUProcDeviceGetLimits() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment device, MemorySegment limits); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceGetLimits.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceGetLimits.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment limits) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, device, limits); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceGetQueue.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceGetQueue.java deleted file mode 100644 index 42e4d5d47..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceGetQueue.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUQueue (*WGPUProcDeviceGetQueue)(WGPUDevice) - * } - */ -public class WGPUProcDeviceGetQueue { - - WGPUProcDeviceGetQueue() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceGetQueue.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceGetQueue.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceHasFeature.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceHasFeature.java deleted file mode 100644 index f8f73612f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceHasFeature.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBool (*WGPUProcDeviceHasFeature)(WGPUDevice, WGPUFeatureName) - * } - */ -public class WGPUProcDeviceHasFeature { - - WGPUProcDeviceHasFeature() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment device, int feature); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceHasFeature.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceHasFeature.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment device, int feature) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, device, feature); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDevicePopErrorScope.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDevicePopErrorScope.java deleted file mode 100644 index 8ded9d772..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDevicePopErrorScope.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcDevicePopErrorScope)(WGPUDevice, WGPUErrorCallback, void *) - * } - */ -public class WGPUProcDevicePopErrorScope { - - WGPUProcDevicePopErrorScope() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment device, MemorySegment callback, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDevicePopErrorScope.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDevicePopErrorScope.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment callback, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, device, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDevicePushErrorScope.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDevicePushErrorScope.java deleted file mode 100644 index ed3656c74..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDevicePushErrorScope.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcDevicePushErrorScope)(WGPUDevice, WGPUErrorFilter) - * } - */ -public class WGPUProcDevicePushErrorScope { - - WGPUProcDevicePushErrorScope() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment device, int filter); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDevicePushErrorScope.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDevicePushErrorScope.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment device, int filter) { - try { - DOWN$MH.invokeExact(funcPtr, device, filter); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceReference.java deleted file mode 100644 index a4b5a5395..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcDeviceReference)(WGPUDevice) - * } - */ -public class WGPUProcDeviceReference { - - WGPUProcDeviceReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment device); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment device) { - try { - DOWN$MH.invokeExact(funcPtr, device); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceRelease.java deleted file mode 100644 index c98cd56a8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcDeviceRelease)(WGPUDevice) - * } - */ -public class WGPUProcDeviceRelease { - - WGPUProcDeviceRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment device); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment device) { - try { - DOWN$MH.invokeExact(funcPtr, device); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceSetLabel.java deleted file mode 100644 index 4b72c3454..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcDeviceSetLabel)(WGPUDevice, const char *) - * } - */ -public class WGPUProcDeviceSetLabel { - - WGPUProcDeviceSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment device, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, device, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceSetUncapturedErrorCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceSetUncapturedErrorCallback.java deleted file mode 100644 index 273551747..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcDeviceSetUncapturedErrorCallback.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcDeviceSetUncapturedErrorCallback)(WGPUDevice, WGPUErrorCallback, void *) - * } - */ -public class WGPUProcDeviceSetUncapturedErrorCallback { - - WGPUProcDeviceSetUncapturedErrorCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment device, MemorySegment callback, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcDeviceSetUncapturedErrorCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcDeviceSetUncapturedErrorCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment callback, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, device, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcGetProcAddress.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcGetProcAddress.java deleted file mode 100644 index 3a66b1efe..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcGetProcAddress.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUProc (*WGPUProcGetProcAddress)(WGPUDevice, const char *) - * } - */ -public class WGPUProcGetProcAddress { - - WGPUProcGetProcAddress() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment device, MemorySegment procName); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcGetProcAddress.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcGetProcAddress.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment device, MemorySegment procName) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, device, procName); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceCreateSurface.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceCreateSurface.java deleted file mode 100644 index f38df69a6..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceCreateSurface.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUSurface (*WGPUProcInstanceCreateSurface)(WGPUInstance, const WGPUSurfaceDescriptor *) - * } - */ -public class WGPUProcInstanceCreateSurface { - - WGPUProcInstanceCreateSurface() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment instance, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcInstanceCreateSurface.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcInstanceCreateSurface.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment instance, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, instance, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceProcessEvents.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceProcessEvents.java deleted file mode 100644 index 3c47acbf9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceProcessEvents.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcInstanceProcessEvents)(WGPUInstance) - * } - */ -public class WGPUProcInstanceProcessEvents { - - WGPUProcInstanceProcessEvents() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment instance); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcInstanceProcessEvents.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcInstanceProcessEvents.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment instance) { - try { - DOWN$MH.invokeExact(funcPtr, instance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceReference.java deleted file mode 100644 index 0b05c7167..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcInstanceReference)(WGPUInstance) - * } - */ -public class WGPUProcInstanceReference { - - WGPUProcInstanceReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment instance); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcInstanceReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcInstanceReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment instance) { - try { - DOWN$MH.invokeExact(funcPtr, instance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceRelease.java deleted file mode 100644 index 0f405dfe4..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcInstanceRelease)(WGPUInstance) - * } - */ -public class WGPUProcInstanceRelease { - - WGPUProcInstanceRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment instance); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcInstanceRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcInstanceRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment instance) { - try { - DOWN$MH.invokeExact(funcPtr, instance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceRequestAdapter.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceRequestAdapter.java deleted file mode 100644 index d1250f2dc..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcInstanceRequestAdapter.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcInstanceRequestAdapter)(WGPUInstance, const WGPURequestAdapterOptions *, WGPURequestAdapterCallback, void *) - * } - */ -public class WGPUProcInstanceRequestAdapter { - - WGPUProcInstanceRequestAdapter() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment instance, MemorySegment options, MemorySegment callback, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcInstanceRequestAdapter.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcInstanceRequestAdapter.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment instance, MemorySegment options, MemorySegment callback, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, instance, options, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutReference.java deleted file mode 100644 index c38a9f483..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcPipelineLayoutReference)(WGPUPipelineLayout) - * } - */ -public class WGPUProcPipelineLayoutReference { - - WGPUProcPipelineLayoutReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment pipelineLayout); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcPipelineLayoutReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcPipelineLayoutReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment pipelineLayout) { - try { - DOWN$MH.invokeExact(funcPtr, pipelineLayout); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutRelease.java deleted file mode 100644 index 40cc7fd44..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcPipelineLayoutRelease)(WGPUPipelineLayout) - * } - */ -public class WGPUProcPipelineLayoutRelease { - - WGPUProcPipelineLayoutRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment pipelineLayout); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcPipelineLayoutRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcPipelineLayoutRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment pipelineLayout) { - try { - DOWN$MH.invokeExact(funcPtr, pipelineLayout); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutSetLabel.java deleted file mode 100644 index 7bbc7d815..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcPipelineLayoutSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcPipelineLayoutSetLabel)(WGPUPipelineLayout, const char *) - * } - */ -public class WGPUProcPipelineLayoutSetLabel { - - WGPUProcPipelineLayoutSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment pipelineLayout, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcPipelineLayoutSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcPipelineLayoutSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment pipelineLayout, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, pipelineLayout, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetDestroy.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetDestroy.java deleted file mode 100644 index a61d6c0b2..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetDestroy.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQuerySetDestroy)(WGPUQuerySet) - * } - */ -public class WGPUProcQuerySetDestroy { - - WGPUProcQuerySetDestroy() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment querySet); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQuerySetDestroy.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQuerySetDestroy.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment querySet) { - try { - DOWN$MH.invokeExact(funcPtr, querySet); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetGetCount.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetGetCount.java deleted file mode 100644 index c5aae9788..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetGetCount.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef uint32_t (*WGPUProcQuerySetGetCount)(WGPUQuerySet) - * } - */ -public class WGPUProcQuerySetGetCount { - - WGPUProcQuerySetGetCount() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment querySet); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQuerySetGetCount.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQuerySetGetCount.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment querySet) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, querySet); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetGetType.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetGetType.java deleted file mode 100644 index 5c1d09b34..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetGetType.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUQueryType (*WGPUProcQuerySetGetType)(WGPUQuerySet) - * } - */ -public class WGPUProcQuerySetGetType { - - WGPUProcQuerySetGetType() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment querySet); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQuerySetGetType.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQuerySetGetType.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment querySet) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, querySet); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetReference.java deleted file mode 100644 index ee039147d..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQuerySetReference)(WGPUQuerySet) - * } - */ -public class WGPUProcQuerySetReference { - - WGPUProcQuerySetReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment querySet); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQuerySetReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQuerySetReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment querySet) { - try { - DOWN$MH.invokeExact(funcPtr, querySet); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetRelease.java deleted file mode 100644 index 8c7247f2f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQuerySetRelease)(WGPUQuerySet) - * } - */ -public class WGPUProcQuerySetRelease { - - WGPUProcQuerySetRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment querySet); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQuerySetRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQuerySetRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment querySet) { - try { - DOWN$MH.invokeExact(funcPtr, querySet); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetSetLabel.java deleted file mode 100644 index ee068668b..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQuerySetSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQuerySetSetLabel)(WGPUQuerySet, const char *) - * } - */ -public class WGPUProcQuerySetSetLabel { - - WGPUProcQuerySetSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment querySet, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQuerySetSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQuerySetSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment querySet, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, querySet, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueOnSubmittedWorkDone.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueOnSubmittedWorkDone.java deleted file mode 100644 index 259a5514a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueOnSubmittedWorkDone.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQueueOnSubmittedWorkDone)(WGPUQueue, WGPUQueueWorkDoneCallback, void *) - * } - */ -public class WGPUProcQueueOnSubmittedWorkDone { - - WGPUProcQueueOnSubmittedWorkDone() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment queue, MemorySegment callback, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQueueOnSubmittedWorkDone.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQueueOnSubmittedWorkDone.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment queue, MemorySegment callback, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, queue, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueReference.java deleted file mode 100644 index 1b4893de4..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQueueReference)(WGPUQueue) - * } - */ -public class WGPUProcQueueReference { - - WGPUProcQueueReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment queue); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQueueReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQueueReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment queue) { - try { - DOWN$MH.invokeExact(funcPtr, queue); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueRelease.java deleted file mode 100644 index c5bf33178..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQueueRelease)(WGPUQueue) - * } - */ -public class WGPUProcQueueRelease { - - WGPUProcQueueRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment queue); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQueueRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQueueRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment queue) { - try { - DOWN$MH.invokeExact(funcPtr, queue); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueSetLabel.java deleted file mode 100644 index 5beee65e9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQueueSetLabel)(WGPUQueue, const char *) - * } - */ -public class WGPUProcQueueSetLabel { - - WGPUProcQueueSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment queue, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQueueSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQueueSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment queue, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, queue, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueSubmit.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueSubmit.java deleted file mode 100644 index 38cb0d938..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueSubmit.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQueueSubmit)(WGPUQueue, size_t, const WGPUCommandBuffer *) - * } - */ -public class WGPUProcQueueSubmit { - - WGPUProcQueueSubmit() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment queue, long commandCount, MemorySegment commands); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQueueSubmit.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQueueSubmit.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment queue, long commandCount, MemorySegment commands) { - try { - DOWN$MH.invokeExact(funcPtr, queue, commandCount, commands); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueWriteBuffer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueWriteBuffer.java deleted file mode 100644 index 5fb21892e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueWriteBuffer.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQueueWriteBuffer)(WGPUQueue, WGPUBuffer, uint64_t, const void *, size_t) - * } - */ -public class WGPUProcQueueWriteBuffer { - - WGPUProcQueueWriteBuffer() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment queue, MemorySegment buffer, long bufferOffset, MemorySegment data, long size); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQueueWriteBuffer.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQueueWriteBuffer.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment queue, MemorySegment buffer, long bufferOffset, MemorySegment data, long size) { - try { - DOWN$MH.invokeExact(funcPtr, queue, buffer, bufferOffset, data, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueWriteTexture.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueWriteTexture.java deleted file mode 100644 index d95d7acb8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcQueueWriteTexture.java +++ /dev/null @@ -1,72 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcQueueWriteTexture)(WGPUQueue, const WGPUImageCopyTexture *, const void *, size_t, const WGPUTextureDataLayout *, const WGPUExtent3D *) - * } - */ -public class WGPUProcQueueWriteTexture { - - WGPUProcQueueWriteTexture() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment queue, MemorySegment destination, MemorySegment data, long dataSize, MemorySegment dataLayout, MemorySegment writeSize); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcQueueWriteTexture.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcQueueWriteTexture.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment queue, MemorySegment destination, MemorySegment data, long dataSize, MemorySegment dataLayout, MemorySegment writeSize) { - try { - DOWN$MH.invokeExact(funcPtr, queue, destination, data, dataSize, dataLayout, writeSize); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDraw.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDraw.java deleted file mode 100644 index ca962f8fb..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDraw.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderDraw)(WGPURenderBundleEncoder, uint32_t, uint32_t, uint32_t, uint32_t) - * } - */ -public class WGPUProcRenderBundleEncoderDraw { - - WGPUProcRenderBundleEncoderDraw() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, int vertexCount, int instanceCount, int firstVertex, int firstInstance); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderDraw.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderDraw.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, int vertexCount, int instanceCount, int firstVertex, int firstInstance) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, vertexCount, instanceCount, firstVertex, firstInstance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndexed.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndexed.java deleted file mode 100644 index 2ae9e5f9a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndexed.java +++ /dev/null @@ -1,72 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderDrawIndexed)(WGPURenderBundleEncoder, uint32_t, uint32_t, uint32_t, int32_t, uint32_t) - * } - */ -public class WGPUProcRenderBundleEncoderDrawIndexed { - - WGPUProcRenderBundleEncoderDrawIndexed() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, int indexCount, int instanceCount, int firstIndex, int baseVertex, int firstInstance); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderDrawIndexed.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderDrawIndexed.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, int indexCount, int instanceCount, int firstIndex, int baseVertex, int firstInstance) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, indexCount, instanceCount, firstIndex, baseVertex, firstInstance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndexedIndirect.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndexedIndirect.java deleted file mode 100644 index f71e2e55f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndexedIndirect.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderDrawIndexedIndirect)(WGPURenderBundleEncoder, WGPUBuffer, uint64_t) - * } - */ -public class WGPUProcRenderBundleEncoderDrawIndexedIndirect { - - WGPUProcRenderBundleEncoderDrawIndexedIndirect() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, MemorySegment indirectBuffer, long indirectOffset); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderDrawIndexedIndirect.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderDrawIndexedIndirect.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, MemorySegment indirectBuffer, long indirectOffset) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, indirectBuffer, indirectOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndirect.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndirect.java deleted file mode 100644 index df5e89214..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderDrawIndirect.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderDrawIndirect)(WGPURenderBundleEncoder, WGPUBuffer, uint64_t) - * } - */ -public class WGPUProcRenderBundleEncoderDrawIndirect { - - WGPUProcRenderBundleEncoderDrawIndirect() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, MemorySegment indirectBuffer, long indirectOffset); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderDrawIndirect.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderDrawIndirect.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, MemorySegment indirectBuffer, long indirectOffset) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, indirectBuffer, indirectOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderFinish.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderFinish.java deleted file mode 100644 index 35deda027..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderFinish.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPURenderBundle (*WGPUProcRenderBundleEncoderFinish)(WGPURenderBundleEncoder, const WGPURenderBundleDescriptor *) - * } - */ -public class WGPUProcRenderBundleEncoderFinish { - - WGPUProcRenderBundleEncoderFinish() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment renderBundleEncoder, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderFinish.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderFinish.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderInsertDebugMarker.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderInsertDebugMarker.java deleted file mode 100644 index 5b5d24170..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderInsertDebugMarker.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderInsertDebugMarker)(WGPURenderBundleEncoder, const char *) - * } - */ -public class WGPUProcRenderBundleEncoderInsertDebugMarker { - - WGPUProcRenderBundleEncoderInsertDebugMarker() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, MemorySegment markerLabel); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderInsertDebugMarker.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderInsertDebugMarker.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, MemorySegment markerLabel) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, markerLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderPopDebugGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderPopDebugGroup.java deleted file mode 100644 index ab2911f26..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderPopDebugGroup.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderPopDebugGroup)(WGPURenderBundleEncoder) - * } - */ -public class WGPUProcRenderBundleEncoderPopDebugGroup { - - WGPUProcRenderBundleEncoderPopDebugGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderPopDebugGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderPopDebugGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderPushDebugGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderPushDebugGroup.java deleted file mode 100644 index b993ec875..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderPushDebugGroup.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderPushDebugGroup)(WGPURenderBundleEncoder, const char *) - * } - */ -public class WGPUProcRenderBundleEncoderPushDebugGroup { - - WGPUProcRenderBundleEncoderPushDebugGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, MemorySegment groupLabel); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderPushDebugGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderPushDebugGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, MemorySegment groupLabel) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, groupLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderReference.java deleted file mode 100644 index e8bcae87e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderReference)(WGPURenderBundleEncoder) - * } - */ -public class WGPUProcRenderBundleEncoderReference { - - WGPUProcRenderBundleEncoderReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderRelease.java deleted file mode 100644 index 487a111dc..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderRelease)(WGPURenderBundleEncoder) - * } - */ -public class WGPUProcRenderBundleEncoderRelease { - - WGPUProcRenderBundleEncoderRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetBindGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetBindGroup.java deleted file mode 100644 index 33413a0e2..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetBindGroup.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderSetBindGroup)(WGPURenderBundleEncoder, uint32_t, WGPUBindGroup, size_t, const uint32_t *) - * } - */ -public class WGPUProcRenderBundleEncoderSetBindGroup { - - WGPUProcRenderBundleEncoderSetBindGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, int groupIndex, MemorySegment group, long dynamicOffsetCount, MemorySegment dynamicOffsets); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderSetBindGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderSetBindGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, int groupIndex, MemorySegment group, long dynamicOffsetCount, MemorySegment dynamicOffsets) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, groupIndex, group, dynamicOffsetCount, dynamicOffsets); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetIndexBuffer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetIndexBuffer.java deleted file mode 100644 index dce716ebf..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetIndexBuffer.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderSetIndexBuffer)(WGPURenderBundleEncoder, WGPUBuffer, WGPUIndexFormat, uint64_t, uint64_t) - * } - */ -public class WGPUProcRenderBundleEncoderSetIndexBuffer { - - WGPUProcRenderBundleEncoderSetIndexBuffer() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, MemorySegment buffer, int format, long offset, long size); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderSetIndexBuffer.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderSetIndexBuffer.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, MemorySegment buffer, int format, long offset, long size) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, buffer, format, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetLabel.java deleted file mode 100644 index 51a815a78..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderSetLabel)(WGPURenderBundleEncoder, const char *) - * } - */ -public class WGPUProcRenderBundleEncoderSetLabel { - - WGPUProcRenderBundleEncoderSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetPipeline.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetPipeline.java deleted file mode 100644 index eb61fe998..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetPipeline.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderSetPipeline)(WGPURenderBundleEncoder, WGPURenderPipeline) - * } - */ -public class WGPUProcRenderBundleEncoderSetPipeline { - - WGPUProcRenderBundleEncoderSetPipeline() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, MemorySegment pipeline); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderSetPipeline.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderSetPipeline.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, MemorySegment pipeline) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, pipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetVertexBuffer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetVertexBuffer.java deleted file mode 100644 index 0df16221c..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleEncoderSetVertexBuffer.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleEncoderSetVertexBuffer)(WGPURenderBundleEncoder, uint32_t, WGPUBuffer, uint64_t, uint64_t) - * } - */ -public class WGPUProcRenderBundleEncoderSetVertexBuffer { - - WGPUProcRenderBundleEncoderSetVertexBuffer() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundleEncoder, int slot, MemorySegment buffer, long offset, long size); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleEncoderSetVertexBuffer.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleEncoderSetVertexBuffer.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundleEncoder, int slot, MemorySegment buffer, long offset, long size) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundleEncoder, slot, buffer, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleReference.java deleted file mode 100644 index ec73bc6fd..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleReference)(WGPURenderBundle) - * } - */ -public class WGPUProcRenderBundleReference { - - WGPUProcRenderBundleReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundle); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundle) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundle); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleRelease.java deleted file mode 100644 index 8fa23937f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleRelease)(WGPURenderBundle) - * } - */ -public class WGPUProcRenderBundleRelease { - - WGPUProcRenderBundleRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundle); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundle) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundle); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleSetLabel.java deleted file mode 100644 index ab8d79e0c..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderBundleSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderBundleSetLabel)(WGPURenderBundle, const char *) - * } - */ -public class WGPUProcRenderBundleSetLabel { - - WGPUProcRenderBundleSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderBundle, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderBundleSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderBundleSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderBundle, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, renderBundle, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderBeginOcclusionQuery.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderBeginOcclusionQuery.java deleted file mode 100644 index 4631ee228..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderBeginOcclusionQuery.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderBeginOcclusionQuery)(WGPURenderPassEncoder, uint32_t) - * } - */ -public class WGPUProcRenderPassEncoderBeginOcclusionQuery { - - WGPUProcRenderPassEncoderBeginOcclusionQuery() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, int queryIndex); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderBeginOcclusionQuery.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderBeginOcclusionQuery.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, int queryIndex) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, queryIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDraw.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDraw.java deleted file mode 100644 index 450d13457..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDraw.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderDraw)(WGPURenderPassEncoder, uint32_t, uint32_t, uint32_t, uint32_t) - * } - */ -public class WGPUProcRenderPassEncoderDraw { - - WGPUProcRenderPassEncoderDraw() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, int vertexCount, int instanceCount, int firstVertex, int firstInstance); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderDraw.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderDraw.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, int vertexCount, int instanceCount, int firstVertex, int firstInstance) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, vertexCount, instanceCount, firstVertex, firstInstance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndexed.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndexed.java deleted file mode 100644 index 95d32d224..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndexed.java +++ /dev/null @@ -1,72 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderDrawIndexed)(WGPURenderPassEncoder, uint32_t, uint32_t, uint32_t, int32_t, uint32_t) - * } - */ -public class WGPUProcRenderPassEncoderDrawIndexed { - - WGPUProcRenderPassEncoderDrawIndexed() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, int indexCount, int instanceCount, int firstIndex, int baseVertex, int firstInstance); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderDrawIndexed.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderDrawIndexed.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, int indexCount, int instanceCount, int firstIndex, int baseVertex, int firstInstance) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, indexCount, instanceCount, firstIndex, baseVertex, firstInstance); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndexedIndirect.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndexedIndirect.java deleted file mode 100644 index e9135e11b..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndexedIndirect.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderDrawIndexedIndirect)(WGPURenderPassEncoder, WGPUBuffer, uint64_t) - * } - */ -public class WGPUProcRenderPassEncoderDrawIndexedIndirect { - - WGPUProcRenderPassEncoderDrawIndexedIndirect() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, MemorySegment indirectBuffer, long indirectOffset); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderDrawIndexedIndirect.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderDrawIndexedIndirect.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, MemorySegment indirectBuffer, long indirectOffset) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, indirectBuffer, indirectOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndirect.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndirect.java deleted file mode 100644 index be01da447..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderDrawIndirect.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderDrawIndirect)(WGPURenderPassEncoder, WGPUBuffer, uint64_t) - * } - */ -public class WGPUProcRenderPassEncoderDrawIndirect { - - WGPUProcRenderPassEncoderDrawIndirect() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, MemorySegment indirectBuffer, long indirectOffset); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderDrawIndirect.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderDrawIndirect.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, MemorySegment indirectBuffer, long indirectOffset) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, indirectBuffer, indirectOffset); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderEnd.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderEnd.java deleted file mode 100644 index 0c2c180b2..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderEnd.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderEnd)(WGPURenderPassEncoder) - * } - */ -public class WGPUProcRenderPassEncoderEnd { - - WGPUProcRenderPassEncoderEnd() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderEnd.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderEnd.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderEndOcclusionQuery.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderEndOcclusionQuery.java deleted file mode 100644 index 3d1cbd45e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderEndOcclusionQuery.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderEndOcclusionQuery)(WGPURenderPassEncoder) - * } - */ -public class WGPUProcRenderPassEncoderEndOcclusionQuery { - - WGPUProcRenderPassEncoderEndOcclusionQuery() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderEndOcclusionQuery.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderEndOcclusionQuery.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderExecuteBundles.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderExecuteBundles.java deleted file mode 100644 index 5b148cf0f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderExecuteBundles.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderExecuteBundles)(WGPURenderPassEncoder, size_t, const WGPURenderBundle *) - * } - */ -public class WGPUProcRenderPassEncoderExecuteBundles { - - WGPUProcRenderPassEncoderExecuteBundles() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, long bundleCount, MemorySegment bundles); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderExecuteBundles.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderExecuteBundles.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, long bundleCount, MemorySegment bundles) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, bundleCount, bundles); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderInsertDebugMarker.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderInsertDebugMarker.java deleted file mode 100644 index 78b183049..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderInsertDebugMarker.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderInsertDebugMarker)(WGPURenderPassEncoder, const char *) - * } - */ -public class WGPUProcRenderPassEncoderInsertDebugMarker { - - WGPUProcRenderPassEncoderInsertDebugMarker() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, MemorySegment markerLabel); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderInsertDebugMarker.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderInsertDebugMarker.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, MemorySegment markerLabel) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, markerLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderPopDebugGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderPopDebugGroup.java deleted file mode 100644 index 9fbf935c2..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderPopDebugGroup.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderPopDebugGroup)(WGPURenderPassEncoder) - * } - */ -public class WGPUProcRenderPassEncoderPopDebugGroup { - - WGPUProcRenderPassEncoderPopDebugGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderPopDebugGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderPopDebugGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderPushDebugGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderPushDebugGroup.java deleted file mode 100644 index 62dc65b37..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderPushDebugGroup.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderPushDebugGroup)(WGPURenderPassEncoder, const char *) - * } - */ -public class WGPUProcRenderPassEncoderPushDebugGroup { - - WGPUProcRenderPassEncoderPushDebugGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, MemorySegment groupLabel); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderPushDebugGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderPushDebugGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, MemorySegment groupLabel) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, groupLabel); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderReference.java deleted file mode 100644 index 71b1a6b2a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderReference)(WGPURenderPassEncoder) - * } - */ -public class WGPUProcRenderPassEncoderReference { - - WGPUProcRenderPassEncoderReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderRelease.java deleted file mode 100644 index ad3730524..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderRelease)(WGPURenderPassEncoder) - * } - */ -public class WGPUProcRenderPassEncoderRelease { - - WGPUProcRenderPassEncoderRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetBindGroup.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetBindGroup.java deleted file mode 100644 index 7950114ef..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetBindGroup.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderSetBindGroup)(WGPURenderPassEncoder, uint32_t, WGPUBindGroup, size_t, const uint32_t *) - * } - */ -public class WGPUProcRenderPassEncoderSetBindGroup { - - WGPUProcRenderPassEncoderSetBindGroup() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, int groupIndex, MemorySegment group, long dynamicOffsetCount, MemorySegment dynamicOffsets); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderSetBindGroup.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderSetBindGroup.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, int groupIndex, MemorySegment group, long dynamicOffsetCount, MemorySegment dynamicOffsets) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, groupIndex, group, dynamicOffsetCount, dynamicOffsets); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetBlendConstant.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetBlendConstant.java deleted file mode 100644 index 597ee5e4e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetBlendConstant.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderSetBlendConstant)(WGPURenderPassEncoder, const WGPUColor *) - * } - */ -public class WGPUProcRenderPassEncoderSetBlendConstant { - - WGPUProcRenderPassEncoderSetBlendConstant() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, MemorySegment color); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderSetBlendConstant.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderSetBlendConstant.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, MemorySegment color) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, color); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetIndexBuffer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetIndexBuffer.java deleted file mode 100644 index cd6b00bfb..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetIndexBuffer.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderSetIndexBuffer)(WGPURenderPassEncoder, WGPUBuffer, WGPUIndexFormat, uint64_t, uint64_t) - * } - */ -public class WGPUProcRenderPassEncoderSetIndexBuffer { - - WGPUProcRenderPassEncoderSetIndexBuffer() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, MemorySegment buffer, int format, long offset, long size); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderSetIndexBuffer.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderSetIndexBuffer.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, MemorySegment buffer, int format, long offset, long size) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, buffer, format, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetLabel.java deleted file mode 100644 index ffa80d863..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderSetLabel)(WGPURenderPassEncoder, const char *) - * } - */ -public class WGPUProcRenderPassEncoderSetLabel { - - WGPUProcRenderPassEncoderSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetPipeline.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetPipeline.java deleted file mode 100644 index cbc80694f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetPipeline.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderSetPipeline)(WGPURenderPassEncoder, WGPURenderPipeline) - * } - */ -public class WGPUProcRenderPassEncoderSetPipeline { - - WGPUProcRenderPassEncoderSetPipeline() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, MemorySegment pipeline); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderSetPipeline.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderSetPipeline.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, MemorySegment pipeline) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, pipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetScissorRect.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetScissorRect.java deleted file mode 100644 index 9eec28af4..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetScissorRect.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderSetScissorRect)(WGPURenderPassEncoder, uint32_t, uint32_t, uint32_t, uint32_t) - * } - */ -public class WGPUProcRenderPassEncoderSetScissorRect { - - WGPUProcRenderPassEncoderSetScissorRect() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, int x, int y, int width, int height); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderSetScissorRect.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderSetScissorRect.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, int x, int y, int width, int height) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, x, y, width, height); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetStencilReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetStencilReference.java deleted file mode 100644 index 1ee463262..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetStencilReference.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderSetStencilReference)(WGPURenderPassEncoder, uint32_t) - * } - */ -public class WGPUProcRenderPassEncoderSetStencilReference { - - WGPUProcRenderPassEncoderSetStencilReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, int reference); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderSetStencilReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderSetStencilReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, int reference) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, reference); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetVertexBuffer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetVertexBuffer.java deleted file mode 100644 index eb6dca3db..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetVertexBuffer.java +++ /dev/null @@ -1,71 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderSetVertexBuffer)(WGPURenderPassEncoder, uint32_t, WGPUBuffer, uint64_t, uint64_t) - * } - */ -public class WGPUProcRenderPassEncoderSetVertexBuffer { - - WGPUProcRenderPassEncoderSetVertexBuffer() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, int slot, MemorySegment buffer, long offset, long size); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_LONG_LONG, - WGPU.C_LONG_LONG - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderSetVertexBuffer.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderSetVertexBuffer.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, int slot, MemorySegment buffer, long offset, long size) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, slot, buffer, offset, size); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetViewport.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetViewport.java deleted file mode 100644 index 623dac400..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPassEncoderSetViewport.java +++ /dev/null @@ -1,73 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPassEncoderSetViewport)(WGPURenderPassEncoder, float, float, float, float, float, float) - * } - */ -public class WGPUProcRenderPassEncoderSetViewport { - - WGPUProcRenderPassEncoderSetViewport() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPassEncoder, float x, float y, float width, float height, float minDepth, float maxDepth); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_FLOAT, - WGPU.C_FLOAT, - WGPU.C_FLOAT, - WGPU.C_FLOAT, - WGPU.C_FLOAT, - WGPU.C_FLOAT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPassEncoderSetViewport.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPassEncoderSetViewport.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPassEncoder, float x, float y, float width, float height, float minDepth, float maxDepth) { - try { - DOWN$MH.invokeExact(funcPtr, renderPassEncoder, x, y, width, height, minDepth, maxDepth); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineGetBindGroupLayout.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineGetBindGroupLayout.java deleted file mode 100644 index 23bd91376..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineGetBindGroupLayout.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUBindGroupLayout (*WGPUProcRenderPipelineGetBindGroupLayout)(WGPURenderPipeline, uint32_t) - * } - */ -public class WGPUProcRenderPipelineGetBindGroupLayout { - - WGPUProcRenderPipelineGetBindGroupLayout() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment renderPipeline, int groupIndex); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_INT - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPipelineGetBindGroupLayout.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPipelineGetBindGroupLayout.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment renderPipeline, int groupIndex) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, renderPipeline, groupIndex); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineReference.java deleted file mode 100644 index 107e367b1..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPipelineReference)(WGPURenderPipeline) - * } - */ -public class WGPUProcRenderPipelineReference { - - WGPUProcRenderPipelineReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPipeline); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPipelineReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPipelineReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPipeline) { - try { - DOWN$MH.invokeExact(funcPtr, renderPipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineRelease.java deleted file mode 100644 index ffcb49d32..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPipelineRelease)(WGPURenderPipeline) - * } - */ -public class WGPUProcRenderPipelineRelease { - - WGPUProcRenderPipelineRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPipeline); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPipelineRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPipelineRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPipeline) { - try { - DOWN$MH.invokeExact(funcPtr, renderPipeline); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineSetLabel.java deleted file mode 100644 index 5d9e39d60..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcRenderPipelineSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcRenderPipelineSetLabel)(WGPURenderPipeline, const char *) - * } - */ -public class WGPUProcRenderPipelineSetLabel { - - WGPUProcRenderPipelineSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment renderPipeline, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcRenderPipelineSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcRenderPipelineSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment renderPipeline, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, renderPipeline, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerReference.java deleted file mode 100644 index 6118a21ee..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSamplerReference)(WGPUSampler) - * } - */ -public class WGPUProcSamplerReference { - - WGPUProcSamplerReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment sampler); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSamplerReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSamplerReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment sampler) { - try { - DOWN$MH.invokeExact(funcPtr, sampler); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerRelease.java deleted file mode 100644 index c4332a9af..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSamplerRelease)(WGPUSampler) - * } - */ -public class WGPUProcSamplerRelease { - - WGPUProcSamplerRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment sampler); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSamplerRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSamplerRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment sampler) { - try { - DOWN$MH.invokeExact(funcPtr, sampler); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerSetLabel.java deleted file mode 100644 index 930a98156..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSamplerSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSamplerSetLabel)(WGPUSampler, const char *) - * } - */ -public class WGPUProcSamplerSetLabel { - - WGPUProcSamplerSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment sampler, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSamplerSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSamplerSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment sampler, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, sampler, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleGetCompilationInfo.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleGetCompilationInfo.java deleted file mode 100644 index 923d50a03..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleGetCompilationInfo.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcShaderModuleGetCompilationInfo)(WGPUShaderModule, WGPUCompilationInfoCallback, void *) - * } - */ -public class WGPUProcShaderModuleGetCompilationInfo { - - WGPUProcShaderModuleGetCompilationInfo() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment shaderModule, MemorySegment callback, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcShaderModuleGetCompilationInfo.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcShaderModuleGetCompilationInfo.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment shaderModule, MemorySegment callback, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, shaderModule, callback, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleReference.java deleted file mode 100644 index 79ce5568d..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcShaderModuleReference)(WGPUShaderModule) - * } - */ -public class WGPUProcShaderModuleReference { - - WGPUProcShaderModuleReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment shaderModule); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcShaderModuleReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcShaderModuleReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment shaderModule) { - try { - DOWN$MH.invokeExact(funcPtr, shaderModule); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleRelease.java deleted file mode 100644 index 37c7d851a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcShaderModuleRelease)(WGPUShaderModule) - * } - */ -public class WGPUProcShaderModuleRelease { - - WGPUProcShaderModuleRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment shaderModule); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcShaderModuleRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcShaderModuleRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment shaderModule) { - try { - DOWN$MH.invokeExact(funcPtr, shaderModule); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleSetLabel.java deleted file mode 100644 index c4cd8c1fb..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcShaderModuleSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcShaderModuleSetLabel)(WGPUShaderModule, const char *) - * } - */ -public class WGPUProcShaderModuleSetLabel { - - WGPUProcShaderModuleSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment shaderModule, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcShaderModuleSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcShaderModuleSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment shaderModule, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, shaderModule, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceCapabilitiesFreeMembers.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceCapabilitiesFreeMembers.java deleted file mode 100644 index 7af2d684f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceCapabilitiesFreeMembers.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSurfaceCapabilitiesFreeMembers)(WGPUSurfaceCapabilities) - * } - */ -public class WGPUProcSurfaceCapabilitiesFreeMembers { - - WGPUProcSurfaceCapabilitiesFreeMembers() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment capabilities); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPUSurfaceCapabilities.layout() - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSurfaceCapabilitiesFreeMembers.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSurfaceCapabilitiesFreeMembers.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment capabilities) { - try { - DOWN$MH.invokeExact(funcPtr, capabilities); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceConfigure.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceConfigure.java deleted file mode 100644 index f9d707e3c..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceConfigure.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSurfaceConfigure)(WGPUSurface, const WGPUSurfaceConfiguration *) - * } - */ -public class WGPUProcSurfaceConfigure { - - WGPUProcSurfaceConfigure() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment surface, MemorySegment config); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSurfaceConfigure.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSurfaceConfigure.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment surface, MemorySegment config) { - try { - DOWN$MH.invokeExact(funcPtr, surface, config); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetCapabilities.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetCapabilities.java deleted file mode 100644 index ffb985b26..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetCapabilities.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSurfaceGetCapabilities)(WGPUSurface, WGPUAdapter, WGPUSurfaceCapabilities *) - * } - */ -public class WGPUProcSurfaceGetCapabilities { - - WGPUProcSurfaceGetCapabilities() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment surface, MemorySegment adapter, MemorySegment capabilities); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSurfaceGetCapabilities.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSurfaceGetCapabilities.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment surface, MemorySegment adapter, MemorySegment capabilities) { - try { - DOWN$MH.invokeExact(funcPtr, surface, adapter, capabilities); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetCurrentTexture.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetCurrentTexture.java deleted file mode 100644 index bf66c5be2..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetCurrentTexture.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSurfaceGetCurrentTexture)(WGPUSurface, WGPUSurfaceTexture *) - * } - */ -public class WGPUProcSurfaceGetCurrentTexture { - - WGPUProcSurfaceGetCurrentTexture() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment surface, MemorySegment surfaceTexture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSurfaceGetCurrentTexture.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSurfaceGetCurrentTexture.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment surface, MemorySegment surfaceTexture) { - try { - DOWN$MH.invokeExact(funcPtr, surface, surfaceTexture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetPreferredFormat.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetPreferredFormat.java deleted file mode 100644 index 6b138efed..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceGetPreferredFormat.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUTextureFormat (*WGPUProcSurfaceGetPreferredFormat)(WGPUSurface, WGPUAdapter) - * } - */ -public class WGPUProcSurfaceGetPreferredFormat { - - WGPUProcSurfaceGetPreferredFormat() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment surface, MemorySegment adapter); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSurfaceGetPreferredFormat.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSurfaceGetPreferredFormat.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment surface, MemorySegment adapter) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, surface, adapter); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfacePresent.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfacePresent.java deleted file mode 100644 index 9e125604f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfacePresent.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSurfacePresent)(WGPUSurface) - * } - */ -public class WGPUProcSurfacePresent { - - WGPUProcSurfacePresent() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment surface); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSurfacePresent.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSurfacePresent.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment surface) { - try { - DOWN$MH.invokeExact(funcPtr, surface); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceReference.java deleted file mode 100644 index fe04b537d..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSurfaceReference)(WGPUSurface) - * } - */ -public class WGPUProcSurfaceReference { - - WGPUProcSurfaceReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment surface); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSurfaceReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSurfaceReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment surface) { - try { - DOWN$MH.invokeExact(funcPtr, surface); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceRelease.java deleted file mode 100644 index 992e03e95..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSurfaceRelease)(WGPUSurface) - * } - */ -public class WGPUProcSurfaceRelease { - - WGPUProcSurfaceRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment surface); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSurfaceRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSurfaceRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment surface) { - try { - DOWN$MH.invokeExact(funcPtr, surface); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceUnconfigure.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceUnconfigure.java deleted file mode 100644 index ffea33cec..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcSurfaceUnconfigure.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcSurfaceUnconfigure)(WGPUSurface) - * } - */ -public class WGPUProcSurfaceUnconfigure { - - WGPUProcSurfaceUnconfigure() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment surface); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcSurfaceUnconfigure.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcSurfaceUnconfigure.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment surface) { - try { - DOWN$MH.invokeExact(funcPtr, surface); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureCreateView.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureCreateView.java deleted file mode 100644 index fe52e5e90..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureCreateView.java +++ /dev/null @@ -1,69 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUTextureView (*WGPUProcTextureCreateView)(WGPUTexture, const WGPUTextureViewDescriptor *) - * } - */ -public class WGPUProcTextureCreateView { - - WGPUProcTextureCreateView() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - MemorySegment apply(MemorySegment texture, MemorySegment descriptor); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureCreateView.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureCreateView.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static MemorySegment invoke(MemorySegment funcPtr,MemorySegment texture, MemorySegment descriptor) { - try { - return (MemorySegment) DOWN$MH.invokeExact(funcPtr, texture, descriptor); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureDestroy.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureDestroy.java deleted file mode 100644 index 226fdc3b6..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureDestroy.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcTextureDestroy)(WGPUTexture) - * } - */ -public class WGPUProcTextureDestroy { - - WGPUProcTextureDestroy() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureDestroy.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureDestroy.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetDepthOrArrayLayers.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetDepthOrArrayLayers.java deleted file mode 100644 index 6c1881037..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetDepthOrArrayLayers.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef uint32_t (*WGPUProcTextureGetDepthOrArrayLayers)(WGPUTexture) - * } - */ -public class WGPUProcTextureGetDepthOrArrayLayers { - - WGPUProcTextureGetDepthOrArrayLayers() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureGetDepthOrArrayLayers.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureGetDepthOrArrayLayers.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetDimension.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetDimension.java deleted file mode 100644 index 92f188ef8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetDimension.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUTextureDimension (*WGPUProcTextureGetDimension)(WGPUTexture) - * } - */ -public class WGPUProcTextureGetDimension { - - WGPUProcTextureGetDimension() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureGetDimension.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureGetDimension.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetFormat.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetFormat.java deleted file mode 100644 index 12215f14b..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetFormat.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUTextureFormat (*WGPUProcTextureGetFormat)(WGPUTexture) - * } - */ -public class WGPUProcTextureGetFormat { - - WGPUProcTextureGetFormat() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureGetFormat.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureGetFormat.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetHeight.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetHeight.java deleted file mode 100644 index 722fbb0e5..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetHeight.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef uint32_t (*WGPUProcTextureGetHeight)(WGPUTexture) - * } - */ -public class WGPUProcTextureGetHeight { - - WGPUProcTextureGetHeight() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureGetHeight.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureGetHeight.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetMipLevelCount.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetMipLevelCount.java deleted file mode 100644 index 11308af5e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetMipLevelCount.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef uint32_t (*WGPUProcTextureGetMipLevelCount)(WGPUTexture) - * } - */ -public class WGPUProcTextureGetMipLevelCount { - - WGPUProcTextureGetMipLevelCount() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureGetMipLevelCount.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureGetMipLevelCount.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetSampleCount.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetSampleCount.java deleted file mode 100644 index 3df68c5e9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetSampleCount.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef uint32_t (*WGPUProcTextureGetSampleCount)(WGPUTexture) - * } - */ -public class WGPUProcTextureGetSampleCount { - - WGPUProcTextureGetSampleCount() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureGetSampleCount.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureGetSampleCount.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetUsage.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetUsage.java deleted file mode 100644 index a68c326d3..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetUsage.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef WGPUTextureUsageFlags (*WGPUProcTextureGetUsage)(WGPUTexture) - * } - */ -public class WGPUProcTextureGetUsage { - - WGPUProcTextureGetUsage() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureGetUsage.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureGetUsage.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetWidth.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetWidth.java deleted file mode 100644 index ea6b40455..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureGetWidth.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef uint32_t (*WGPUProcTextureGetWidth)(WGPUTexture) - * } - */ -public class WGPUProcTextureGetWidth { - - WGPUProcTextureGetWidth() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - int apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.of( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureGetWidth.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureGetWidth.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static int invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - return (int) DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureReference.java deleted file mode 100644 index 282863ad1..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcTextureReference)(WGPUTexture) - * } - */ -public class WGPUProcTextureReference { - - WGPUProcTextureReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureRelease.java deleted file mode 100644 index e935a3e75..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcTextureRelease)(WGPUTexture) - * } - */ -public class WGPUProcTextureRelease { - - WGPUProcTextureRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment texture); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment texture) { - try { - DOWN$MH.invokeExact(funcPtr, texture); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureSetLabel.java deleted file mode 100644 index d04a51e11..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcTextureSetLabel)(WGPUTexture, const char *) - * } - */ -public class WGPUProcTextureSetLabel { - - WGPUProcTextureSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment texture, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment texture, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, texture, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewReference.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewReference.java deleted file mode 100644 index f952ec039..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewReference.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcTextureViewReference)(WGPUTextureView) - * } - */ -public class WGPUProcTextureViewReference { - - WGPUProcTextureViewReference() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment textureView); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureViewReference.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureViewReference.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment textureView) { - try { - DOWN$MH.invokeExact(funcPtr, textureView); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewRelease.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewRelease.java deleted file mode 100644 index dff9ffb27..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewRelease.java +++ /dev/null @@ -1,67 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcTextureViewRelease)(WGPUTextureView) - * } - */ -public class WGPUProcTextureViewRelease { - - WGPUProcTextureViewRelease() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment textureView); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureViewRelease.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureViewRelease.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment textureView) { - try { - DOWN$MH.invokeExact(funcPtr, textureView); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewSetLabel.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewSetLabel.java deleted file mode 100644 index 10d6a91e3..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProcTextureViewSetLabel.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUProcTextureViewSetLabel)(WGPUTextureView, const char *) - * } - */ -public class WGPUProcTextureViewSetLabel { - - WGPUProcTextureViewSetLabel() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(MemorySegment textureView, MemorySegment label); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUProcTextureViewSetLabel.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUProcTextureViewSetLabel.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,MemorySegment textureView, MemorySegment label) { - try { - DOWN$MH.invokeExact(funcPtr, textureView, label); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProgrammableStageDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProgrammableStageDescriptor.java deleted file mode 100644 index 43fd79b09..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUProgrammableStageDescriptor.java +++ /dev/null @@ -1,311 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUProgrammableStageDescriptor { - * const WGPUChainedStruct *nextInChain; - * WGPUShaderModule module; - * const char *entryPoint; - * size_t constantCount; - * const WGPUConstantEntry *constants; - * } - * } - */ -public class WGPUProgrammableStageDescriptor { - - WGPUProgrammableStageDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("module"), - WGPU.C_POINTER.withName("entryPoint"), - WGPU.C_LONG_LONG.withName("constantCount"), - WGPU.C_POINTER.withName("constants") - ).withName("WGPUProgrammableStageDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout module$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("module")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static final AddressLayout module$layout() { - return module$LAYOUT; - } - - private static final long module$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static final long module$offset() { - return module$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static MemorySegment module(MemorySegment struct) { - return struct.get(module$LAYOUT, module$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static void module(MemorySegment struct, MemorySegment fieldValue) { - struct.set(module$LAYOUT, module$OFFSET, fieldValue); - } - - private static final AddressLayout entryPoint$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("entryPoint")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static final AddressLayout entryPoint$layout() { - return entryPoint$LAYOUT; - } - - private static final long entryPoint$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static final long entryPoint$offset() { - return entryPoint$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static MemorySegment entryPoint(MemorySegment struct) { - return struct.get(entryPoint$LAYOUT, entryPoint$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static void entryPoint(MemorySegment struct, MemorySegment fieldValue) { - struct.set(entryPoint$LAYOUT, entryPoint$OFFSET, fieldValue); - } - - private static final OfLong constantCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("constantCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static final OfLong constantCount$layout() { - return constantCount$LAYOUT; - } - - private static final long constantCount$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static final long constantCount$offset() { - return constantCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static long constantCount(MemorySegment struct) { - return struct.get(constantCount$LAYOUT, constantCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static void constantCount(MemorySegment struct, long fieldValue) { - struct.set(constantCount$LAYOUT, constantCount$OFFSET, fieldValue); - } - - private static final AddressLayout constants$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("constants")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static final AddressLayout constants$layout() { - return constants$LAYOUT; - } - - private static final long constants$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static final long constants$offset() { - return constants$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static MemorySegment constants(MemorySegment struct) { - return struct.get(constants$LAYOUT, constants$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static void constants(MemorySegment struct, MemorySegment fieldValue) { - struct.set(constants$LAYOUT, constants$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPushConstantRange.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPushConstantRange.java deleted file mode 100644 index 74299cc9a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUPushConstantRange.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUPushConstantRange { - * WGPUShaderStageFlags stages; - * uint32_t start; - * uint32_t end; - * } - * } - */ -public class WGPUPushConstantRange { - - WGPUPushConstantRange() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_INT.withName("stages"), - WGPU.C_INT.withName("start"), - WGPU.C_INT.withName("end") - ).withName("WGPUPushConstantRange"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfInt stages$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stages")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUShaderStageFlags stages - * } - */ - public static final OfInt stages$layout() { - return stages$LAYOUT; - } - - private static final long stages$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUShaderStageFlags stages - * } - */ - public static final long stages$offset() { - return stages$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUShaderStageFlags stages - * } - */ - public static int stages(MemorySegment struct) { - return struct.get(stages$LAYOUT, stages$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUShaderStageFlags stages - * } - */ - public static void stages(MemorySegment struct, int fieldValue) { - struct.set(stages$LAYOUT, stages$OFFSET, fieldValue); - } - - private static final OfInt start$LAYOUT = (OfInt)$LAYOUT.select(groupElement("start")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t start - * } - */ - public static final OfInt start$layout() { - return start$LAYOUT; - } - - private static final long start$OFFSET = 4; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t start - * } - */ - public static final long start$offset() { - return start$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t start - * } - */ - public static int start(MemorySegment struct) { - return struct.get(start$LAYOUT, start$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t start - * } - */ - public static void start(MemorySegment struct, int fieldValue) { - struct.set(start$LAYOUT, start$OFFSET, fieldValue); - } - - private static final OfInt end$LAYOUT = (OfInt)$LAYOUT.select(groupElement("end")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t end - * } - */ - public static final OfInt end$layout() { - return end$LAYOUT; - } - - private static final long end$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t end - * } - */ - public static final long end$offset() { - return end$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t end - * } - */ - public static int end(MemorySegment struct) { - return struct.get(end$LAYOUT, end$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t end - * } - */ - public static void end(MemorySegment struct, int fieldValue) { - struct.set(end$LAYOUT, end$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQuerySetDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQuerySetDescriptor.java deleted file mode 100644 index d35665ddf..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQuerySetDescriptor.java +++ /dev/null @@ -1,265 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUQuerySetDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * WGPUQueryType type; - * uint32_t count; - * } - * } - */ -public class WGPUQuerySetDescriptor { - - WGPUQuerySetDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_INT.withName("type"), - WGPU.C_INT.withName("count") - ).withName("WGPUQuerySetDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfInt type$LAYOUT = (OfInt)$LAYOUT.select(groupElement("type")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUQueryType type - * } - */ - public static final OfInt type$layout() { - return type$LAYOUT; - } - - private static final long type$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUQueryType type - * } - */ - public static final long type$offset() { - return type$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUQueryType type - * } - */ - public static int type(MemorySegment struct) { - return struct.get(type$LAYOUT, type$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUQueryType type - * } - */ - public static void type(MemorySegment struct, int fieldValue) { - struct.set(type$LAYOUT, type$OFFSET, fieldValue); - } - - private static final OfInt count$LAYOUT = (OfInt)$LAYOUT.select(groupElement("count")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static final OfInt count$layout() { - return count$LAYOUT; - } - - private static final long count$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static final long count$offset() { - return count$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static int count(MemorySegment struct) { - return struct.get(count$LAYOUT, count$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t count - * } - */ - public static void count(MemorySegment struct, int fieldValue) { - struct.set(count$LAYOUT, count$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQuerySetDescriptorExtras.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQuerySetDescriptorExtras.java deleted file mode 100644 index ff8f94468..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQuerySetDescriptorExtras.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUQuerySetDescriptorExtras { - * WGPUChainedStruct chain; - * const WGPUPipelineStatisticName *pipelineStatistics; - * size_t pipelineStatisticCount; - * } - * } - */ -public class WGPUQuerySetDescriptorExtras { - - WGPUQuerySetDescriptorExtras() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("pipelineStatistics"), - WGPU.C_LONG_LONG.withName("pipelineStatisticCount") - ).withName("WGPUQuerySetDescriptorExtras"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout pipelineStatistics$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("pipelineStatistics")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUPipelineStatisticName *pipelineStatistics - * } - */ - public static final AddressLayout pipelineStatistics$layout() { - return pipelineStatistics$LAYOUT; - } - - private static final long pipelineStatistics$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUPipelineStatisticName *pipelineStatistics - * } - */ - public static final long pipelineStatistics$offset() { - return pipelineStatistics$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUPipelineStatisticName *pipelineStatistics - * } - */ - public static MemorySegment pipelineStatistics(MemorySegment struct) { - return struct.get(pipelineStatistics$LAYOUT, pipelineStatistics$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUPipelineStatisticName *pipelineStatistics - * } - */ - public static void pipelineStatistics(MemorySegment struct, MemorySegment fieldValue) { - struct.set(pipelineStatistics$LAYOUT, pipelineStatistics$OFFSET, fieldValue); - } - - private static final OfLong pipelineStatisticCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("pipelineStatisticCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t pipelineStatisticCount - * } - */ - public static final OfLong pipelineStatisticCount$layout() { - return pipelineStatisticCount$LAYOUT; - } - - private static final long pipelineStatisticCount$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t pipelineStatisticCount - * } - */ - public static final long pipelineStatisticCount$offset() { - return pipelineStatisticCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t pipelineStatisticCount - * } - */ - public static long pipelineStatisticCount(MemorySegment struct) { - return struct.get(pipelineStatisticCount$LAYOUT, pipelineStatisticCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t pipelineStatisticCount - * } - */ - public static void pipelineStatisticCount(MemorySegment struct, long fieldValue) { - struct.set(pipelineStatisticCount$LAYOUT, pipelineStatisticCount$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQueueDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQueueDescriptor.java deleted file mode 100644 index 84147d2d0..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQueueDescriptor.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUQueueDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * } - * } - */ -public class WGPUQueueDescriptor { - - WGPUQueueDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label") - ).withName("WGPUQueueDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQueueWorkDoneCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQueueWorkDoneCallback.java deleted file mode 100644 index ff251ed2d..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUQueueWorkDoneCallback.java +++ /dev/null @@ -1,68 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPUQueueWorkDoneCallback)(WGPUQueueWorkDoneStatus, void *) - * } - */ -public class WGPUQueueWorkDoneCallback { - - WGPUQueueWorkDoneCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(int status, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPUQueueWorkDoneCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPUQueueWorkDoneCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,int status, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, status, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURegistryReport.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURegistryReport.java deleted file mode 100644 index 62a2212b4..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURegistryReport.java +++ /dev/null @@ -1,311 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURegistryReport { - * size_t numAllocated; - * size_t numKeptFromUser; - * size_t numReleasedFromUser; - * size_t numError; - * size_t elementSize; - * } - * } - */ -public class WGPURegistryReport { - - WGPURegistryReport() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_LONG_LONG.withName("numAllocated"), - WGPU.C_LONG_LONG.withName("numKeptFromUser"), - WGPU.C_LONG_LONG.withName("numReleasedFromUser"), - WGPU.C_LONG_LONG.withName("numError"), - WGPU.C_LONG_LONG.withName("elementSize") - ).withName("WGPURegistryReport"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfLong numAllocated$LAYOUT = (OfLong)$LAYOUT.select(groupElement("numAllocated")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t numAllocated - * } - */ - public static final OfLong numAllocated$layout() { - return numAllocated$LAYOUT; - } - - private static final long numAllocated$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t numAllocated - * } - */ - public static final long numAllocated$offset() { - return numAllocated$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t numAllocated - * } - */ - public static long numAllocated(MemorySegment struct) { - return struct.get(numAllocated$LAYOUT, numAllocated$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t numAllocated - * } - */ - public static void numAllocated(MemorySegment struct, long fieldValue) { - struct.set(numAllocated$LAYOUT, numAllocated$OFFSET, fieldValue); - } - - private static final OfLong numKeptFromUser$LAYOUT = (OfLong)$LAYOUT.select(groupElement("numKeptFromUser")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t numKeptFromUser - * } - */ - public static final OfLong numKeptFromUser$layout() { - return numKeptFromUser$LAYOUT; - } - - private static final long numKeptFromUser$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t numKeptFromUser - * } - */ - public static final long numKeptFromUser$offset() { - return numKeptFromUser$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t numKeptFromUser - * } - */ - public static long numKeptFromUser(MemorySegment struct) { - return struct.get(numKeptFromUser$LAYOUT, numKeptFromUser$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t numKeptFromUser - * } - */ - public static void numKeptFromUser(MemorySegment struct, long fieldValue) { - struct.set(numKeptFromUser$LAYOUT, numKeptFromUser$OFFSET, fieldValue); - } - - private static final OfLong numReleasedFromUser$LAYOUT = (OfLong)$LAYOUT.select(groupElement("numReleasedFromUser")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t numReleasedFromUser - * } - */ - public static final OfLong numReleasedFromUser$layout() { - return numReleasedFromUser$LAYOUT; - } - - private static final long numReleasedFromUser$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t numReleasedFromUser - * } - */ - public static final long numReleasedFromUser$offset() { - return numReleasedFromUser$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t numReleasedFromUser - * } - */ - public static long numReleasedFromUser(MemorySegment struct) { - return struct.get(numReleasedFromUser$LAYOUT, numReleasedFromUser$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t numReleasedFromUser - * } - */ - public static void numReleasedFromUser(MemorySegment struct, long fieldValue) { - struct.set(numReleasedFromUser$LAYOUT, numReleasedFromUser$OFFSET, fieldValue); - } - - private static final OfLong numError$LAYOUT = (OfLong)$LAYOUT.select(groupElement("numError")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t numError - * } - */ - public static final OfLong numError$layout() { - return numError$LAYOUT; - } - - private static final long numError$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t numError - * } - */ - public static final long numError$offset() { - return numError$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t numError - * } - */ - public static long numError(MemorySegment struct) { - return struct.get(numError$LAYOUT, numError$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t numError - * } - */ - public static void numError(MemorySegment struct, long fieldValue) { - struct.set(numError$LAYOUT, numError$OFFSET, fieldValue); - } - - private static final OfLong elementSize$LAYOUT = (OfLong)$LAYOUT.select(groupElement("elementSize")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t elementSize - * } - */ - public static final OfLong elementSize$layout() { - return elementSize$LAYOUT; - } - - private static final long elementSize$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t elementSize - * } - */ - public static final long elementSize$offset() { - return elementSize$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t elementSize - * } - */ - public static long elementSize(MemorySegment struct) { - return struct.get(elementSize$LAYOUT, elementSize$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t elementSize - * } - */ - public static void elementSize(MemorySegment struct, long fieldValue) { - struct.set(elementSize$LAYOUT, elementSize$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderBundleDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderBundleDescriptor.java deleted file mode 100644 index aad36de0c..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderBundleDescriptor.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURenderBundleDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * } - * } - */ -public class WGPURenderBundleDescriptor { - - WGPURenderBundleDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label") - ).withName("WGPURenderBundleDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderBundleEncoderDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderBundleEncoderDescriptor.java deleted file mode 100644 index d3b7dead3..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderBundleEncoderDescriptor.java +++ /dev/null @@ -1,449 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURenderBundleEncoderDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * size_t colorFormatCount; - * const WGPUTextureFormat *colorFormats; - * WGPUTextureFormat depthStencilFormat; - * uint32_t sampleCount; - * WGPUBool depthReadOnly; - * WGPUBool stencilReadOnly; - * } - * } - */ -public class WGPURenderBundleEncoderDescriptor { - - WGPURenderBundleEncoderDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_LONG_LONG.withName("colorFormatCount"), - WGPU.C_POINTER.withName("colorFormats"), - WGPU.C_INT.withName("depthStencilFormat"), - WGPU.C_INT.withName("sampleCount"), - WGPU.C_INT.withName("depthReadOnly"), - WGPU.C_INT.withName("stencilReadOnly") - ).withName("WGPURenderBundleEncoderDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfLong colorFormatCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("colorFormatCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t colorFormatCount - * } - */ - public static final OfLong colorFormatCount$layout() { - return colorFormatCount$LAYOUT; - } - - private static final long colorFormatCount$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t colorFormatCount - * } - */ - public static final long colorFormatCount$offset() { - return colorFormatCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t colorFormatCount - * } - */ - public static long colorFormatCount(MemorySegment struct) { - return struct.get(colorFormatCount$LAYOUT, colorFormatCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t colorFormatCount - * } - */ - public static void colorFormatCount(MemorySegment struct, long fieldValue) { - struct.set(colorFormatCount$LAYOUT, colorFormatCount$OFFSET, fieldValue); - } - - private static final AddressLayout colorFormats$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("colorFormats")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUTextureFormat *colorFormats - * } - */ - public static final AddressLayout colorFormats$layout() { - return colorFormats$LAYOUT; - } - - private static final long colorFormats$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUTextureFormat *colorFormats - * } - */ - public static final long colorFormats$offset() { - return colorFormats$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUTextureFormat *colorFormats - * } - */ - public static MemorySegment colorFormats(MemorySegment struct) { - return struct.get(colorFormats$LAYOUT, colorFormats$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUTextureFormat *colorFormats - * } - */ - public static void colorFormats(MemorySegment struct, MemorySegment fieldValue) { - struct.set(colorFormats$LAYOUT, colorFormats$OFFSET, fieldValue); - } - - private static final OfInt depthStencilFormat$LAYOUT = (OfInt)$LAYOUT.select(groupElement("depthStencilFormat")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureFormat depthStencilFormat - * } - */ - public static final OfInt depthStencilFormat$layout() { - return depthStencilFormat$LAYOUT; - } - - private static final long depthStencilFormat$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureFormat depthStencilFormat - * } - */ - public static final long depthStencilFormat$offset() { - return depthStencilFormat$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureFormat depthStencilFormat - * } - */ - public static int depthStencilFormat(MemorySegment struct) { - return struct.get(depthStencilFormat$LAYOUT, depthStencilFormat$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureFormat depthStencilFormat - * } - */ - public static void depthStencilFormat(MemorySegment struct, int fieldValue) { - struct.set(depthStencilFormat$LAYOUT, depthStencilFormat$OFFSET, fieldValue); - } - - private static final OfInt sampleCount$LAYOUT = (OfInt)$LAYOUT.select(groupElement("sampleCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t sampleCount - * } - */ - public static final OfInt sampleCount$layout() { - return sampleCount$LAYOUT; - } - - private static final long sampleCount$OFFSET = 36; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t sampleCount - * } - */ - public static final long sampleCount$offset() { - return sampleCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t sampleCount - * } - */ - public static int sampleCount(MemorySegment struct) { - return struct.get(sampleCount$LAYOUT, sampleCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t sampleCount - * } - */ - public static void sampleCount(MemorySegment struct, int fieldValue) { - struct.set(sampleCount$LAYOUT, sampleCount$OFFSET, fieldValue); - } - - private static final OfInt depthReadOnly$LAYOUT = (OfInt)$LAYOUT.select(groupElement("depthReadOnly")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool depthReadOnly - * } - */ - public static final OfInt depthReadOnly$layout() { - return depthReadOnly$LAYOUT; - } - - private static final long depthReadOnly$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool depthReadOnly - * } - */ - public static final long depthReadOnly$offset() { - return depthReadOnly$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool depthReadOnly - * } - */ - public static int depthReadOnly(MemorySegment struct) { - return struct.get(depthReadOnly$LAYOUT, depthReadOnly$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool depthReadOnly - * } - */ - public static void depthReadOnly(MemorySegment struct, int fieldValue) { - struct.set(depthReadOnly$LAYOUT, depthReadOnly$OFFSET, fieldValue); - } - - private static final OfInt stencilReadOnly$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stencilReadOnly")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool stencilReadOnly - * } - */ - public static final OfInt stencilReadOnly$layout() { - return stencilReadOnly$LAYOUT; - } - - private static final long stencilReadOnly$OFFSET = 44; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool stencilReadOnly - * } - */ - public static final long stencilReadOnly$offset() { - return stencilReadOnly$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool stencilReadOnly - * } - */ - public static int stencilReadOnly(MemorySegment struct) { - return struct.get(stencilReadOnly$LAYOUT, stencilReadOnly$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool stencilReadOnly - * } - */ - public static void stencilReadOnly(MemorySegment struct, int fieldValue) { - struct.set(stencilReadOnly$LAYOUT, stencilReadOnly$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassColorAttachment.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassColorAttachment.java deleted file mode 100644 index 76a4e69c0..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassColorAttachment.java +++ /dev/null @@ -1,357 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURenderPassColorAttachment { - * const WGPUChainedStruct *nextInChain; - * WGPUTextureView view; - * WGPUTextureView resolveTarget; - * WGPULoadOp loadOp; - * WGPUStoreOp storeOp; - * WGPUColor clearValue; - * } - * } - */ -public class WGPURenderPassColorAttachment { - - WGPURenderPassColorAttachment() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("view"), - WGPU.C_POINTER.withName("resolveTarget"), - WGPU.C_INT.withName("loadOp"), - WGPU.C_INT.withName("storeOp"), - WGPUColor.layout().withName("clearValue") - ).withName("WGPURenderPassColorAttachment"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout view$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("view")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureView view - * } - */ - public static final AddressLayout view$layout() { - return view$LAYOUT; - } - - private static final long view$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureView view - * } - */ - public static final long view$offset() { - return view$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureView view - * } - */ - public static MemorySegment view(MemorySegment struct) { - return struct.get(view$LAYOUT, view$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureView view - * } - */ - public static void view(MemorySegment struct, MemorySegment fieldValue) { - struct.set(view$LAYOUT, view$OFFSET, fieldValue); - } - - private static final AddressLayout resolveTarget$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("resolveTarget")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureView resolveTarget - * } - */ - public static final AddressLayout resolveTarget$layout() { - return resolveTarget$LAYOUT; - } - - private static final long resolveTarget$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureView resolveTarget - * } - */ - public static final long resolveTarget$offset() { - return resolveTarget$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureView resolveTarget - * } - */ - public static MemorySegment resolveTarget(MemorySegment struct) { - return struct.get(resolveTarget$LAYOUT, resolveTarget$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureView resolveTarget - * } - */ - public static void resolveTarget(MemorySegment struct, MemorySegment fieldValue) { - struct.set(resolveTarget$LAYOUT, resolveTarget$OFFSET, fieldValue); - } - - private static final OfInt loadOp$LAYOUT = (OfInt)$LAYOUT.select(groupElement("loadOp")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPULoadOp loadOp - * } - */ - public static final OfInt loadOp$layout() { - return loadOp$LAYOUT; - } - - private static final long loadOp$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPULoadOp loadOp - * } - */ - public static final long loadOp$offset() { - return loadOp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPULoadOp loadOp - * } - */ - public static int loadOp(MemorySegment struct) { - return struct.get(loadOp$LAYOUT, loadOp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPULoadOp loadOp - * } - */ - public static void loadOp(MemorySegment struct, int fieldValue) { - struct.set(loadOp$LAYOUT, loadOp$OFFSET, fieldValue); - } - - private static final OfInt storeOp$LAYOUT = (OfInt)$LAYOUT.select(groupElement("storeOp")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUStoreOp storeOp - * } - */ - public static final OfInt storeOp$layout() { - return storeOp$LAYOUT; - } - - private static final long storeOp$OFFSET = 28; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUStoreOp storeOp - * } - */ - public static final long storeOp$offset() { - return storeOp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUStoreOp storeOp - * } - */ - public static int storeOp(MemorySegment struct) { - return struct.get(storeOp$LAYOUT, storeOp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUStoreOp storeOp - * } - */ - public static void storeOp(MemorySegment struct, int fieldValue) { - struct.set(storeOp$LAYOUT, storeOp$OFFSET, fieldValue); - } - - private static final GroupLayout clearValue$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("clearValue")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUColor clearValue - * } - */ - public static final GroupLayout clearValue$layout() { - return clearValue$LAYOUT; - } - - private static final long clearValue$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUColor clearValue - * } - */ - public static final long clearValue$offset() { - return clearValue$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUColor clearValue - * } - */ - public static MemorySegment clearValue(MemorySegment struct) { - return struct.asSlice(clearValue$OFFSET, clearValue$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUColor clearValue - * } - */ - public static void clearValue(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, clearValue$OFFSET, clearValue$LAYOUT.byteSize()); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDepthStencilAttachment.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDepthStencilAttachment.java deleted file mode 100644 index 9fbfd36cc..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDepthStencilAttachment.java +++ /dev/null @@ -1,495 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURenderPassDepthStencilAttachment { - * WGPUTextureView view; - * WGPULoadOp depthLoadOp; - * WGPUStoreOp depthStoreOp; - * float depthClearValue; - * WGPUBool depthReadOnly; - * WGPULoadOp stencilLoadOp; - * WGPUStoreOp stencilStoreOp; - * uint32_t stencilClearValue; - * WGPUBool stencilReadOnly; - * } - * } - */ -public class WGPURenderPassDepthStencilAttachment { - - WGPURenderPassDepthStencilAttachment() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("view"), - WGPU.C_INT.withName("depthLoadOp"), - WGPU.C_INT.withName("depthStoreOp"), - WGPU.C_FLOAT.withName("depthClearValue"), - WGPU.C_INT.withName("depthReadOnly"), - WGPU.C_INT.withName("stencilLoadOp"), - WGPU.C_INT.withName("stencilStoreOp"), - WGPU.C_INT.withName("stencilClearValue"), - WGPU.C_INT.withName("stencilReadOnly") - ).withName("WGPURenderPassDepthStencilAttachment"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout view$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("view")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureView view - * } - */ - public static final AddressLayout view$layout() { - return view$LAYOUT; - } - - private static final long view$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureView view - * } - */ - public static final long view$offset() { - return view$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureView view - * } - */ - public static MemorySegment view(MemorySegment struct) { - return struct.get(view$LAYOUT, view$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureView view - * } - */ - public static void view(MemorySegment struct, MemorySegment fieldValue) { - struct.set(view$LAYOUT, view$OFFSET, fieldValue); - } - - private static final OfInt depthLoadOp$LAYOUT = (OfInt)$LAYOUT.select(groupElement("depthLoadOp")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPULoadOp depthLoadOp - * } - */ - public static final OfInt depthLoadOp$layout() { - return depthLoadOp$LAYOUT; - } - - private static final long depthLoadOp$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPULoadOp depthLoadOp - * } - */ - public static final long depthLoadOp$offset() { - return depthLoadOp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPULoadOp depthLoadOp - * } - */ - public static int depthLoadOp(MemorySegment struct) { - return struct.get(depthLoadOp$LAYOUT, depthLoadOp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPULoadOp depthLoadOp - * } - */ - public static void depthLoadOp(MemorySegment struct, int fieldValue) { - struct.set(depthLoadOp$LAYOUT, depthLoadOp$OFFSET, fieldValue); - } - - private static final OfInt depthStoreOp$LAYOUT = (OfInt)$LAYOUT.select(groupElement("depthStoreOp")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUStoreOp depthStoreOp - * } - */ - public static final OfInt depthStoreOp$layout() { - return depthStoreOp$LAYOUT; - } - - private static final long depthStoreOp$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUStoreOp depthStoreOp - * } - */ - public static final long depthStoreOp$offset() { - return depthStoreOp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUStoreOp depthStoreOp - * } - */ - public static int depthStoreOp(MemorySegment struct) { - return struct.get(depthStoreOp$LAYOUT, depthStoreOp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUStoreOp depthStoreOp - * } - */ - public static void depthStoreOp(MemorySegment struct, int fieldValue) { - struct.set(depthStoreOp$LAYOUT, depthStoreOp$OFFSET, fieldValue); - } - - private static final OfFloat depthClearValue$LAYOUT = (OfFloat)$LAYOUT.select(groupElement("depthClearValue")); - - /** - * Layout for field: - * {@snippet lang=c : - * float depthClearValue - * } - */ - public static final OfFloat depthClearValue$layout() { - return depthClearValue$LAYOUT; - } - - private static final long depthClearValue$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * float depthClearValue - * } - */ - public static final long depthClearValue$offset() { - return depthClearValue$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * float depthClearValue - * } - */ - public static float depthClearValue(MemorySegment struct) { - return struct.get(depthClearValue$LAYOUT, depthClearValue$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * float depthClearValue - * } - */ - public static void depthClearValue(MemorySegment struct, float fieldValue) { - struct.set(depthClearValue$LAYOUT, depthClearValue$OFFSET, fieldValue); - } - - private static final OfInt depthReadOnly$LAYOUT = (OfInt)$LAYOUT.select(groupElement("depthReadOnly")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool depthReadOnly - * } - */ - public static final OfInt depthReadOnly$layout() { - return depthReadOnly$LAYOUT; - } - - private static final long depthReadOnly$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool depthReadOnly - * } - */ - public static final long depthReadOnly$offset() { - return depthReadOnly$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool depthReadOnly - * } - */ - public static int depthReadOnly(MemorySegment struct) { - return struct.get(depthReadOnly$LAYOUT, depthReadOnly$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool depthReadOnly - * } - */ - public static void depthReadOnly(MemorySegment struct, int fieldValue) { - struct.set(depthReadOnly$LAYOUT, depthReadOnly$OFFSET, fieldValue); - } - - private static final OfInt stencilLoadOp$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stencilLoadOp")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPULoadOp stencilLoadOp - * } - */ - public static final OfInt stencilLoadOp$layout() { - return stencilLoadOp$LAYOUT; - } - - private static final long stencilLoadOp$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPULoadOp stencilLoadOp - * } - */ - public static final long stencilLoadOp$offset() { - return stencilLoadOp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPULoadOp stencilLoadOp - * } - */ - public static int stencilLoadOp(MemorySegment struct) { - return struct.get(stencilLoadOp$LAYOUT, stencilLoadOp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPULoadOp stencilLoadOp - * } - */ - public static void stencilLoadOp(MemorySegment struct, int fieldValue) { - struct.set(stencilLoadOp$LAYOUT, stencilLoadOp$OFFSET, fieldValue); - } - - private static final OfInt stencilStoreOp$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stencilStoreOp")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUStoreOp stencilStoreOp - * } - */ - public static final OfInt stencilStoreOp$layout() { - return stencilStoreOp$LAYOUT; - } - - private static final long stencilStoreOp$OFFSET = 28; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUStoreOp stencilStoreOp - * } - */ - public static final long stencilStoreOp$offset() { - return stencilStoreOp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUStoreOp stencilStoreOp - * } - */ - public static int stencilStoreOp(MemorySegment struct) { - return struct.get(stencilStoreOp$LAYOUT, stencilStoreOp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUStoreOp stencilStoreOp - * } - */ - public static void stencilStoreOp(MemorySegment struct, int fieldValue) { - struct.set(stencilStoreOp$LAYOUT, stencilStoreOp$OFFSET, fieldValue); - } - - private static final OfInt stencilClearValue$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stencilClearValue")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t stencilClearValue - * } - */ - public static final OfInt stencilClearValue$layout() { - return stencilClearValue$LAYOUT; - } - - private static final long stencilClearValue$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t stencilClearValue - * } - */ - public static final long stencilClearValue$offset() { - return stencilClearValue$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t stencilClearValue - * } - */ - public static int stencilClearValue(MemorySegment struct) { - return struct.get(stencilClearValue$LAYOUT, stencilClearValue$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t stencilClearValue - * } - */ - public static void stencilClearValue(MemorySegment struct, int fieldValue) { - struct.set(stencilClearValue$LAYOUT, stencilClearValue$OFFSET, fieldValue); - } - - private static final OfInt stencilReadOnly$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stencilReadOnly")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool stencilReadOnly - * } - */ - public static final OfInt stencilReadOnly$layout() { - return stencilReadOnly$LAYOUT; - } - - private static final long stencilReadOnly$OFFSET = 36; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool stencilReadOnly - * } - */ - public static final long stencilReadOnly$offset() { - return stencilReadOnly$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool stencilReadOnly - * } - */ - public static int stencilReadOnly(MemorySegment struct) { - return struct.get(stencilReadOnly$LAYOUT, stencilReadOnly$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool stencilReadOnly - * } - */ - public static void stencilReadOnly(MemorySegment struct, int fieldValue) { - struct.set(stencilReadOnly$LAYOUT, stencilReadOnly$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDescriptor.java deleted file mode 100644 index 00cee37f1..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDescriptor.java +++ /dev/null @@ -1,403 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURenderPassDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * size_t colorAttachmentCount; - * const WGPURenderPassColorAttachment *colorAttachments; - * const WGPURenderPassDepthStencilAttachment *depthStencilAttachment; - * WGPUQuerySet occlusionQuerySet; - * const WGPURenderPassTimestampWrites *timestampWrites; - * } - * } - */ -public class WGPURenderPassDescriptor { - - WGPURenderPassDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_LONG_LONG.withName("colorAttachmentCount"), - WGPU.C_POINTER.withName("colorAttachments"), - WGPU.C_POINTER.withName("depthStencilAttachment"), - WGPU.C_POINTER.withName("occlusionQuerySet"), - WGPU.C_POINTER.withName("timestampWrites") - ).withName("WGPURenderPassDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfLong colorAttachmentCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("colorAttachmentCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t colorAttachmentCount - * } - */ - public static final OfLong colorAttachmentCount$layout() { - return colorAttachmentCount$LAYOUT; - } - - private static final long colorAttachmentCount$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t colorAttachmentCount - * } - */ - public static final long colorAttachmentCount$offset() { - return colorAttachmentCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t colorAttachmentCount - * } - */ - public static long colorAttachmentCount(MemorySegment struct) { - return struct.get(colorAttachmentCount$LAYOUT, colorAttachmentCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t colorAttachmentCount - * } - */ - public static void colorAttachmentCount(MemorySegment struct, long fieldValue) { - struct.set(colorAttachmentCount$LAYOUT, colorAttachmentCount$OFFSET, fieldValue); - } - - private static final AddressLayout colorAttachments$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("colorAttachments")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPURenderPassColorAttachment *colorAttachments - * } - */ - public static final AddressLayout colorAttachments$layout() { - return colorAttachments$LAYOUT; - } - - private static final long colorAttachments$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPURenderPassColorAttachment *colorAttachments - * } - */ - public static final long colorAttachments$offset() { - return colorAttachments$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPURenderPassColorAttachment *colorAttachments - * } - */ - public static MemorySegment colorAttachments(MemorySegment struct) { - return struct.get(colorAttachments$LAYOUT, colorAttachments$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPURenderPassColorAttachment *colorAttachments - * } - */ - public static void colorAttachments(MemorySegment struct, MemorySegment fieldValue) { - struct.set(colorAttachments$LAYOUT, colorAttachments$OFFSET, fieldValue); - } - - private static final AddressLayout depthStencilAttachment$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("depthStencilAttachment")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPURenderPassDepthStencilAttachment *depthStencilAttachment - * } - */ - public static final AddressLayout depthStencilAttachment$layout() { - return depthStencilAttachment$LAYOUT; - } - - private static final long depthStencilAttachment$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPURenderPassDepthStencilAttachment *depthStencilAttachment - * } - */ - public static final long depthStencilAttachment$offset() { - return depthStencilAttachment$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPURenderPassDepthStencilAttachment *depthStencilAttachment - * } - */ - public static MemorySegment depthStencilAttachment(MemorySegment struct) { - return struct.get(depthStencilAttachment$LAYOUT, depthStencilAttachment$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPURenderPassDepthStencilAttachment *depthStencilAttachment - * } - */ - public static void depthStencilAttachment(MemorySegment struct, MemorySegment fieldValue) { - struct.set(depthStencilAttachment$LAYOUT, depthStencilAttachment$OFFSET, fieldValue); - } - - private static final AddressLayout occlusionQuerySet$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("occlusionQuerySet")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUQuerySet occlusionQuerySet - * } - */ - public static final AddressLayout occlusionQuerySet$layout() { - return occlusionQuerySet$LAYOUT; - } - - private static final long occlusionQuerySet$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUQuerySet occlusionQuerySet - * } - */ - public static final long occlusionQuerySet$offset() { - return occlusionQuerySet$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUQuerySet occlusionQuerySet - * } - */ - public static MemorySegment occlusionQuerySet(MemorySegment struct) { - return struct.get(occlusionQuerySet$LAYOUT, occlusionQuerySet$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUQuerySet occlusionQuerySet - * } - */ - public static void occlusionQuerySet(MemorySegment struct, MemorySegment fieldValue) { - struct.set(occlusionQuerySet$LAYOUT, occlusionQuerySet$OFFSET, fieldValue); - } - - private static final AddressLayout timestampWrites$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("timestampWrites")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPURenderPassTimestampWrites *timestampWrites - * } - */ - public static final AddressLayout timestampWrites$layout() { - return timestampWrites$LAYOUT; - } - - private static final long timestampWrites$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPURenderPassTimestampWrites *timestampWrites - * } - */ - public static final long timestampWrites$offset() { - return timestampWrites$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPURenderPassTimestampWrites *timestampWrites - * } - */ - public static MemorySegment timestampWrites(MemorySegment struct) { - return struct.get(timestampWrites$LAYOUT, timestampWrites$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPURenderPassTimestampWrites *timestampWrites - * } - */ - public static void timestampWrites(MemorySegment struct, MemorySegment fieldValue) { - struct.set(timestampWrites$LAYOUT, timestampWrites$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDescriptorMaxDrawCount.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDescriptorMaxDrawCount.java deleted file mode 100644 index 442631d91..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassDescriptorMaxDrawCount.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURenderPassDescriptorMaxDrawCount { - * WGPUChainedStruct chain; - * uint64_t maxDrawCount; - * } - * } - */ -public class WGPURenderPassDescriptorMaxDrawCount { - - WGPURenderPassDescriptorMaxDrawCount() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_LONG_LONG.withName("maxDrawCount") - ).withName("WGPURenderPassDescriptorMaxDrawCount"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final OfLong maxDrawCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("maxDrawCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t maxDrawCount - * } - */ - public static final OfLong maxDrawCount$layout() { - return maxDrawCount$LAYOUT; - } - - private static final long maxDrawCount$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t maxDrawCount - * } - */ - public static final long maxDrawCount$offset() { - return maxDrawCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t maxDrawCount - * } - */ - public static long maxDrawCount(MemorySegment struct) { - return struct.get(maxDrawCount$LAYOUT, maxDrawCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t maxDrawCount - * } - */ - public static void maxDrawCount(MemorySegment struct, long fieldValue) { - struct.set(maxDrawCount$LAYOUT, maxDrawCount$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassTimestampWrites.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassTimestampWrites.java deleted file mode 100644 index da33913f3..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPassTimestampWrites.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURenderPassTimestampWrites { - * WGPUQuerySet querySet; - * uint32_t beginningOfPassWriteIndex; - * uint32_t endOfPassWriteIndex; - * } - * } - */ -public class WGPURenderPassTimestampWrites { - - WGPURenderPassTimestampWrites() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("querySet"), - WGPU.C_INT.withName("beginningOfPassWriteIndex"), - WGPU.C_INT.withName("endOfPassWriteIndex") - ).withName("WGPURenderPassTimestampWrites"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout querySet$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("querySet")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUQuerySet querySet - * } - */ - public static final AddressLayout querySet$layout() { - return querySet$LAYOUT; - } - - private static final long querySet$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUQuerySet querySet - * } - */ - public static final long querySet$offset() { - return querySet$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUQuerySet querySet - * } - */ - public static MemorySegment querySet(MemorySegment struct) { - return struct.get(querySet$LAYOUT, querySet$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUQuerySet querySet - * } - */ - public static void querySet(MemorySegment struct, MemorySegment fieldValue) { - struct.set(querySet$LAYOUT, querySet$OFFSET, fieldValue); - } - - private static final OfInt beginningOfPassWriteIndex$LAYOUT = (OfInt)$LAYOUT.select(groupElement("beginningOfPassWriteIndex")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t beginningOfPassWriteIndex - * } - */ - public static final OfInt beginningOfPassWriteIndex$layout() { - return beginningOfPassWriteIndex$LAYOUT; - } - - private static final long beginningOfPassWriteIndex$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t beginningOfPassWriteIndex - * } - */ - public static final long beginningOfPassWriteIndex$offset() { - return beginningOfPassWriteIndex$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t beginningOfPassWriteIndex - * } - */ - public static int beginningOfPassWriteIndex(MemorySegment struct) { - return struct.get(beginningOfPassWriteIndex$LAYOUT, beginningOfPassWriteIndex$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t beginningOfPassWriteIndex - * } - */ - public static void beginningOfPassWriteIndex(MemorySegment struct, int fieldValue) { - struct.set(beginningOfPassWriteIndex$LAYOUT, beginningOfPassWriteIndex$OFFSET, fieldValue); - } - - private static final OfInt endOfPassWriteIndex$LAYOUT = (OfInt)$LAYOUT.select(groupElement("endOfPassWriteIndex")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t endOfPassWriteIndex - * } - */ - public static final OfInt endOfPassWriteIndex$layout() { - return endOfPassWriteIndex$LAYOUT; - } - - private static final long endOfPassWriteIndex$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t endOfPassWriteIndex - * } - */ - public static final long endOfPassWriteIndex$offset() { - return endOfPassWriteIndex$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t endOfPassWriteIndex - * } - */ - public static int endOfPassWriteIndex(MemorySegment struct) { - return struct.get(endOfPassWriteIndex$LAYOUT, endOfPassWriteIndex$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t endOfPassWriteIndex - * } - */ - public static void endOfPassWriteIndex(MemorySegment struct, int fieldValue) { - struct.set(endOfPassWriteIndex$LAYOUT, endOfPassWriteIndex$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPipelineDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPipelineDescriptor.java deleted file mode 100644 index dfc3a5e96..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURenderPipelineDescriptor.java +++ /dev/null @@ -1,449 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURenderPipelineDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * WGPUPipelineLayout layout; - * WGPUVertexState vertex; - * WGPUPrimitiveState primitive; - * const WGPUDepthStencilState *depthStencil; - * WGPUMultisampleState multisample; - * const WGPUFragmentState *fragment; - * } - * } - */ -public class WGPURenderPipelineDescriptor { - - WGPURenderPipelineDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_POINTER.withName("layout"), - WGPUVertexState.layout().withName("vertex"), - WGPUPrimitiveState.layout().withName("primitive"), - WGPU.C_POINTER.withName("depthStencil"), - WGPUMultisampleState.layout().withName("multisample"), - WGPU.C_POINTER.withName("fragment") - ).withName("WGPURenderPipelineDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final AddressLayout layout$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("layout")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static final AddressLayout layout$layout() { - return layout$LAYOUT; - } - - private static final long layout$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static final long layout$offset() { - return layout$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static MemorySegment layout(MemorySegment struct) { - return struct.get(layout$LAYOUT, layout$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static void layout(MemorySegment struct, MemorySegment fieldValue) { - struct.set(layout$LAYOUT, layout$OFFSET, fieldValue); - } - - private static final GroupLayout vertex$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("vertex")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUVertexState vertex - * } - */ - public static final GroupLayout vertex$layout() { - return vertex$LAYOUT; - } - - private static final long vertex$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUVertexState vertex - * } - */ - public static final long vertex$offset() { - return vertex$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUVertexState vertex - * } - */ - public static MemorySegment vertex(MemorySegment struct) { - return struct.asSlice(vertex$OFFSET, vertex$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUVertexState vertex - * } - */ - public static void vertex(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, vertex$OFFSET, vertex$LAYOUT.byteSize()); - } - - private static final GroupLayout primitive$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("primitive")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUPrimitiveState primitive - * } - */ - public static final GroupLayout primitive$layout() { - return primitive$LAYOUT; - } - - private static final long primitive$OFFSET = 80; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUPrimitiveState primitive - * } - */ - public static final long primitive$offset() { - return primitive$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUPrimitiveState primitive - * } - */ - public static MemorySegment primitive(MemorySegment struct) { - return struct.asSlice(primitive$OFFSET, primitive$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUPrimitiveState primitive - * } - */ - public static void primitive(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, primitive$OFFSET, primitive$LAYOUT.byteSize()); - } - - private static final AddressLayout depthStencil$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("depthStencil")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUDepthStencilState *depthStencil - * } - */ - public static final AddressLayout depthStencil$layout() { - return depthStencil$LAYOUT; - } - - private static final long depthStencil$OFFSET = 104; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUDepthStencilState *depthStencil - * } - */ - public static final long depthStencil$offset() { - return depthStencil$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUDepthStencilState *depthStencil - * } - */ - public static MemorySegment depthStencil(MemorySegment struct) { - return struct.get(depthStencil$LAYOUT, depthStencil$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUDepthStencilState *depthStencil - * } - */ - public static void depthStencil(MemorySegment struct, MemorySegment fieldValue) { - struct.set(depthStencil$LAYOUT, depthStencil$OFFSET, fieldValue); - } - - private static final GroupLayout multisample$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("multisample")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUMultisampleState multisample - * } - */ - public static final GroupLayout multisample$layout() { - return multisample$LAYOUT; - } - - private static final long multisample$OFFSET = 112; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUMultisampleState multisample - * } - */ - public static final long multisample$offset() { - return multisample$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUMultisampleState multisample - * } - */ - public static MemorySegment multisample(MemorySegment struct) { - return struct.asSlice(multisample$OFFSET, multisample$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUMultisampleState multisample - * } - */ - public static void multisample(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, multisample$OFFSET, multisample$LAYOUT.byteSize()); - } - - private static final AddressLayout fragment$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("fragment")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUFragmentState *fragment - * } - */ - public static final AddressLayout fragment$layout() { - return fragment$LAYOUT; - } - - private static final long fragment$OFFSET = 136; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUFragmentState *fragment - * } - */ - public static final long fragment$offset() { - return fragment$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUFragmentState *fragment - * } - */ - public static MemorySegment fragment(MemorySegment struct) { - return struct.get(fragment$LAYOUT, fragment$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUFragmentState *fragment - * } - */ - public static void fragment(MemorySegment struct, MemorySegment fieldValue) { - struct.set(fragment$LAYOUT, fragment$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestAdapterCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestAdapterCallback.java deleted file mode 100644 index efe30dcc0..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestAdapterCallback.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPURequestAdapterCallback)(WGPURequestAdapterStatus, WGPUAdapter, const char *, void *) - * } - */ -public class WGPURequestAdapterCallback { - - WGPURequestAdapterCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(int status, MemorySegment adapter, MemorySegment message, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPURequestAdapterCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPURequestAdapterCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,int status, MemorySegment adapter, MemorySegment message, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, status, adapter, message, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestAdapterOptions.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestAdapterOptions.java deleted file mode 100644 index e9cc73dc6..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestAdapterOptions.java +++ /dev/null @@ -1,312 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURequestAdapterOptions { - * const WGPUChainedStruct *nextInChain; - * WGPUSurface compatibleSurface; - * WGPUPowerPreference powerPreference; - * WGPUBackendType backendType; - * WGPUBool forceFallbackAdapter; - * } - * } - */ -public class WGPURequestAdapterOptions { - - WGPURequestAdapterOptions() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("compatibleSurface"), - WGPU.C_INT.withName("powerPreference"), - WGPU.C_INT.withName("backendType"), - WGPU.C_INT.withName("forceFallbackAdapter"), - MemoryLayout.paddingLayout(4) - ).withName("WGPURequestAdapterOptions"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout compatibleSurface$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("compatibleSurface")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUSurface compatibleSurface - * } - */ - public static final AddressLayout compatibleSurface$layout() { - return compatibleSurface$LAYOUT; - } - - private static final long compatibleSurface$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUSurface compatibleSurface - * } - */ - public static final long compatibleSurface$offset() { - return compatibleSurface$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUSurface compatibleSurface - * } - */ - public static MemorySegment compatibleSurface(MemorySegment struct) { - return struct.get(compatibleSurface$LAYOUT, compatibleSurface$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUSurface compatibleSurface - * } - */ - public static void compatibleSurface(MemorySegment struct, MemorySegment fieldValue) { - struct.set(compatibleSurface$LAYOUT, compatibleSurface$OFFSET, fieldValue); - } - - private static final OfInt powerPreference$LAYOUT = (OfInt)$LAYOUT.select(groupElement("powerPreference")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUPowerPreference powerPreference - * } - */ - public static final OfInt powerPreference$layout() { - return powerPreference$LAYOUT; - } - - private static final long powerPreference$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUPowerPreference powerPreference - * } - */ - public static final long powerPreference$offset() { - return powerPreference$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUPowerPreference powerPreference - * } - */ - public static int powerPreference(MemorySegment struct) { - return struct.get(powerPreference$LAYOUT, powerPreference$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUPowerPreference powerPreference - * } - */ - public static void powerPreference(MemorySegment struct, int fieldValue) { - struct.set(powerPreference$LAYOUT, powerPreference$OFFSET, fieldValue); - } - - private static final OfInt backendType$LAYOUT = (OfInt)$LAYOUT.select(groupElement("backendType")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static final OfInt backendType$layout() { - return backendType$LAYOUT; - } - - private static final long backendType$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static final long backendType$offset() { - return backendType$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static int backendType(MemorySegment struct) { - return struct.get(backendType$LAYOUT, backendType$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBackendType backendType - * } - */ - public static void backendType(MemorySegment struct, int fieldValue) { - struct.set(backendType$LAYOUT, backendType$OFFSET, fieldValue); - } - - private static final OfInt forceFallbackAdapter$LAYOUT = (OfInt)$LAYOUT.select(groupElement("forceFallbackAdapter")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool forceFallbackAdapter - * } - */ - public static final OfInt forceFallbackAdapter$layout() { - return forceFallbackAdapter$LAYOUT; - } - - private static final long forceFallbackAdapter$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool forceFallbackAdapter - * } - */ - public static final long forceFallbackAdapter$offset() { - return forceFallbackAdapter$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool forceFallbackAdapter - * } - */ - public static int forceFallbackAdapter(MemorySegment struct) { - return struct.get(forceFallbackAdapter$LAYOUT, forceFallbackAdapter$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool forceFallbackAdapter - * } - */ - public static void forceFallbackAdapter(MemorySegment struct, int fieldValue) { - struct.set(forceFallbackAdapter$LAYOUT, forceFallbackAdapter$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestDeviceCallback.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestDeviceCallback.java deleted file mode 100644 index 4dc812b04..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequestDeviceCallback.java +++ /dev/null @@ -1,70 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * typedef void (*WGPURequestDeviceCallback)(WGPURequestDeviceStatus, WGPUDevice, const char *, void *) - * } - */ -public class WGPURequestDeviceCallback { - - WGPURequestDeviceCallback() { - // Should not be called directly - } - - /** - * The function pointer signature, expressed as a functional interface - */ - public interface Function { - void apply(int status, MemorySegment device, MemorySegment message, MemorySegment userdata); - } - - private static final FunctionDescriptor $DESC = FunctionDescriptor.ofVoid( - WGPU.C_INT, - WGPU.C_POINTER, - WGPU.C_POINTER, - WGPU.C_POINTER - ); - - /** - * The descriptor of this function pointer - */ - public static FunctionDescriptor descriptor() { - return $DESC; - } - - private static final MethodHandle UP$MH = WGPU.upcallHandle(WGPURequestDeviceCallback.Function.class, "apply", $DESC); - - /** - * Allocates a new upcall stub, whose implementation is defined by {@code fi}. - * The lifetime of the returned segment is managed by {@code arena} - */ - public static MemorySegment allocate(WGPURequestDeviceCallback.Function fi, Arena arena) { - return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, arena); - } - - private static final MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC); - - /** - * Invoke the upcall stub {@code funcPtr}, with given parameters - */ - public static void invoke(MemorySegment funcPtr,int status, MemorySegment device, MemorySegment message, MemorySegment userdata) { - try { - DOWN$MH.invokeExact(funcPtr, status, device, message, userdata); - } catch (Throwable ex$) { - throw new AssertionError("should not reach here", ex$); - } - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequiredLimits.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequiredLimits.java deleted file mode 100644 index d51d78cc9..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequiredLimits.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURequiredLimits { - * const WGPUChainedStruct *nextInChain; - * WGPULimits limits; - * } - * } - */ -public class WGPURequiredLimits { - - WGPURequiredLimits() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPULimits.layout().withName("limits") - ).withName("WGPURequiredLimits"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final GroupLayout limits$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("limits")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPULimits limits - * } - */ - public static final GroupLayout limits$layout() { - return limits$LAYOUT; - } - - private static final long limits$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPULimits limits - * } - */ - public static final long limits$offset() { - return limits$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPULimits limits - * } - */ - public static MemorySegment limits(MemorySegment struct) { - return struct.asSlice(limits$OFFSET, limits$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPULimits limits - * } - */ - public static void limits(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, limits$OFFSET, limits$LAYOUT.byteSize()); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequiredLimitsExtras.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequiredLimitsExtras.java deleted file mode 100644 index 63b235efd..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPURequiredLimitsExtras.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPURequiredLimitsExtras { - * WGPUChainedStruct chain; - * WGPUNativeLimits limits; - * } - * } - */ -public class WGPURequiredLimitsExtras { - - WGPURequiredLimitsExtras() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPUNativeLimits.layout().withName("limits") - ).withName("WGPURequiredLimitsExtras"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final GroupLayout limits$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("limits")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUNativeLimits limits - * } - */ - public static final GroupLayout limits$layout() { - return limits$LAYOUT; - } - - private static final long limits$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUNativeLimits limits - * } - */ - public static final long limits$offset() { - return limits$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUNativeLimits limits - * } - */ - public static MemorySegment limits(MemorySegment struct) { - return struct.asSlice(limits$OFFSET, limits$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUNativeLimits limits - * } - */ - public static void limits(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, limits$OFFSET, limits$LAYOUT.byteSize()); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSamplerBindingLayout.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSamplerBindingLayout.java deleted file mode 100644 index 8fb94de1a..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSamplerBindingLayout.java +++ /dev/null @@ -1,174 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSamplerBindingLayout { - * const WGPUChainedStruct *nextInChain; - * WGPUSamplerBindingType type; - * } - * } - */ -public class WGPUSamplerBindingLayout { - - WGPUSamplerBindingLayout() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("type"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUSamplerBindingLayout"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt type$LAYOUT = (OfInt)$LAYOUT.select(groupElement("type")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUSamplerBindingType type - * } - */ - public static final OfInt type$layout() { - return type$LAYOUT; - } - - private static final long type$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUSamplerBindingType type - * } - */ - public static final long type$offset() { - return type$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUSamplerBindingType type - * } - */ - public static int type(MemorySegment struct) { - return struct.get(type$LAYOUT, type$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUSamplerBindingType type - * } - */ - public static void type(MemorySegment struct, int fieldValue) { - struct.set(type$LAYOUT, type$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSamplerDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSamplerDescriptor.java deleted file mode 100644 index 402f2496e..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSamplerDescriptor.java +++ /dev/null @@ -1,634 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSamplerDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * WGPUAddressMode addressModeU; - * WGPUAddressMode addressModeV; - * WGPUAddressMode addressModeW; - * WGPUFilterMode magFilter; - * WGPUFilterMode minFilter; - * WGPUMipmapFilterMode mipmapFilter; - * float lodMinClamp; - * float lodMaxClamp; - * WGPUCompareFunction compare; - * uint16_t maxAnisotropy; - * } - * } - */ -public class WGPUSamplerDescriptor { - - WGPUSamplerDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_INT.withName("addressModeU"), - WGPU.C_INT.withName("addressModeV"), - WGPU.C_INT.withName("addressModeW"), - WGPU.C_INT.withName("magFilter"), - WGPU.C_INT.withName("minFilter"), - WGPU.C_INT.withName("mipmapFilter"), - WGPU.C_FLOAT.withName("lodMinClamp"), - WGPU.C_FLOAT.withName("lodMaxClamp"), - WGPU.C_INT.withName("compare"), - WGPU.C_SHORT.withName("maxAnisotropy"), - MemoryLayout.paddingLayout(2) - ).withName("WGPUSamplerDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfInt addressModeU$LAYOUT = (OfInt)$LAYOUT.select(groupElement("addressModeU")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeU - * } - */ - public static final OfInt addressModeU$layout() { - return addressModeU$LAYOUT; - } - - private static final long addressModeU$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeU - * } - */ - public static final long addressModeU$offset() { - return addressModeU$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeU - * } - */ - public static int addressModeU(MemorySegment struct) { - return struct.get(addressModeU$LAYOUT, addressModeU$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeU - * } - */ - public static void addressModeU(MemorySegment struct, int fieldValue) { - struct.set(addressModeU$LAYOUT, addressModeU$OFFSET, fieldValue); - } - - private static final OfInt addressModeV$LAYOUT = (OfInt)$LAYOUT.select(groupElement("addressModeV")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeV - * } - */ - public static final OfInt addressModeV$layout() { - return addressModeV$LAYOUT; - } - - private static final long addressModeV$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeV - * } - */ - public static final long addressModeV$offset() { - return addressModeV$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeV - * } - */ - public static int addressModeV(MemorySegment struct) { - return struct.get(addressModeV$LAYOUT, addressModeV$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeV - * } - */ - public static void addressModeV(MemorySegment struct, int fieldValue) { - struct.set(addressModeV$LAYOUT, addressModeV$OFFSET, fieldValue); - } - - private static final OfInt addressModeW$LAYOUT = (OfInt)$LAYOUT.select(groupElement("addressModeW")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeW - * } - */ - public static final OfInt addressModeW$layout() { - return addressModeW$LAYOUT; - } - - private static final long addressModeW$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeW - * } - */ - public static final long addressModeW$offset() { - return addressModeW$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeW - * } - */ - public static int addressModeW(MemorySegment struct) { - return struct.get(addressModeW$LAYOUT, addressModeW$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUAddressMode addressModeW - * } - */ - public static void addressModeW(MemorySegment struct, int fieldValue) { - struct.set(addressModeW$LAYOUT, addressModeW$OFFSET, fieldValue); - } - - private static final OfInt magFilter$LAYOUT = (OfInt)$LAYOUT.select(groupElement("magFilter")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUFilterMode magFilter - * } - */ - public static final OfInt magFilter$layout() { - return magFilter$LAYOUT; - } - - private static final long magFilter$OFFSET = 28; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUFilterMode magFilter - * } - */ - public static final long magFilter$offset() { - return magFilter$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUFilterMode magFilter - * } - */ - public static int magFilter(MemorySegment struct) { - return struct.get(magFilter$LAYOUT, magFilter$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUFilterMode magFilter - * } - */ - public static void magFilter(MemorySegment struct, int fieldValue) { - struct.set(magFilter$LAYOUT, magFilter$OFFSET, fieldValue); - } - - private static final OfInt minFilter$LAYOUT = (OfInt)$LAYOUT.select(groupElement("minFilter")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUFilterMode minFilter - * } - */ - public static final OfInt minFilter$layout() { - return minFilter$LAYOUT; - } - - private static final long minFilter$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUFilterMode minFilter - * } - */ - public static final long minFilter$offset() { - return minFilter$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUFilterMode minFilter - * } - */ - public static int minFilter(MemorySegment struct) { - return struct.get(minFilter$LAYOUT, minFilter$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUFilterMode minFilter - * } - */ - public static void minFilter(MemorySegment struct, int fieldValue) { - struct.set(minFilter$LAYOUT, minFilter$OFFSET, fieldValue); - } - - private static final OfInt mipmapFilter$LAYOUT = (OfInt)$LAYOUT.select(groupElement("mipmapFilter")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUMipmapFilterMode mipmapFilter - * } - */ - public static final OfInt mipmapFilter$layout() { - return mipmapFilter$LAYOUT; - } - - private static final long mipmapFilter$OFFSET = 36; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUMipmapFilterMode mipmapFilter - * } - */ - public static final long mipmapFilter$offset() { - return mipmapFilter$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUMipmapFilterMode mipmapFilter - * } - */ - public static int mipmapFilter(MemorySegment struct) { - return struct.get(mipmapFilter$LAYOUT, mipmapFilter$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUMipmapFilterMode mipmapFilter - * } - */ - public static void mipmapFilter(MemorySegment struct, int fieldValue) { - struct.set(mipmapFilter$LAYOUT, mipmapFilter$OFFSET, fieldValue); - } - - private static final OfFloat lodMinClamp$LAYOUT = (OfFloat)$LAYOUT.select(groupElement("lodMinClamp")); - - /** - * Layout for field: - * {@snippet lang=c : - * float lodMinClamp - * } - */ - public static final OfFloat lodMinClamp$layout() { - return lodMinClamp$LAYOUT; - } - - private static final long lodMinClamp$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * float lodMinClamp - * } - */ - public static final long lodMinClamp$offset() { - return lodMinClamp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * float lodMinClamp - * } - */ - public static float lodMinClamp(MemorySegment struct) { - return struct.get(lodMinClamp$LAYOUT, lodMinClamp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * float lodMinClamp - * } - */ - public static void lodMinClamp(MemorySegment struct, float fieldValue) { - struct.set(lodMinClamp$LAYOUT, lodMinClamp$OFFSET, fieldValue); - } - - private static final OfFloat lodMaxClamp$LAYOUT = (OfFloat)$LAYOUT.select(groupElement("lodMaxClamp")); - - /** - * Layout for field: - * {@snippet lang=c : - * float lodMaxClamp - * } - */ - public static final OfFloat lodMaxClamp$layout() { - return lodMaxClamp$LAYOUT; - } - - private static final long lodMaxClamp$OFFSET = 44; - - /** - * Offset for field: - * {@snippet lang=c : - * float lodMaxClamp - * } - */ - public static final long lodMaxClamp$offset() { - return lodMaxClamp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * float lodMaxClamp - * } - */ - public static float lodMaxClamp(MemorySegment struct) { - return struct.get(lodMaxClamp$LAYOUT, lodMaxClamp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * float lodMaxClamp - * } - */ - public static void lodMaxClamp(MemorySegment struct, float fieldValue) { - struct.set(lodMaxClamp$LAYOUT, lodMaxClamp$OFFSET, fieldValue); - } - - private static final OfInt compare$LAYOUT = (OfInt)$LAYOUT.select(groupElement("compare")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUCompareFunction compare - * } - */ - public static final OfInt compare$layout() { - return compare$LAYOUT; - } - - private static final long compare$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUCompareFunction compare - * } - */ - public static final long compare$offset() { - return compare$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUCompareFunction compare - * } - */ - public static int compare(MemorySegment struct) { - return struct.get(compare$LAYOUT, compare$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUCompareFunction compare - * } - */ - public static void compare(MemorySegment struct, int fieldValue) { - struct.set(compare$LAYOUT, compare$OFFSET, fieldValue); - } - - private static final OfShort maxAnisotropy$LAYOUT = (OfShort)$LAYOUT.select(groupElement("maxAnisotropy")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint16_t maxAnisotropy - * } - */ - public static final OfShort maxAnisotropy$layout() { - return maxAnisotropy$LAYOUT; - } - - private static final long maxAnisotropy$OFFSET = 52; - - /** - * Offset for field: - * {@snippet lang=c : - * uint16_t maxAnisotropy - * } - */ - public static final long maxAnisotropy$offset() { - return maxAnisotropy$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint16_t maxAnisotropy - * } - */ - public static short maxAnisotropy(MemorySegment struct) { - return struct.get(maxAnisotropy$LAYOUT, maxAnisotropy$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint16_t maxAnisotropy - * } - */ - public static void maxAnisotropy(MemorySegment struct, short fieldValue) { - struct.set(maxAnisotropy$LAYOUT, maxAnisotropy$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderDefine.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderDefine.java deleted file mode 100644 index a86026934..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderDefine.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUShaderDefine { - * const char *name; - * const char *value; - * } - * } - */ -public class WGPUShaderDefine { - - WGPUShaderDefine() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("name"), - WGPU.C_POINTER.withName("value") - ).withName("WGPUShaderDefine"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout name$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("name")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *name - * } - */ - public static final AddressLayout name$layout() { - return name$LAYOUT; - } - - private static final long name$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *name - * } - */ - public static final long name$offset() { - return name$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *name - * } - */ - public static MemorySegment name(MemorySegment struct) { - return struct.get(name$LAYOUT, name$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *name - * } - */ - public static void name(MemorySegment struct, MemorySegment fieldValue) { - struct.set(name$LAYOUT, name$OFFSET, fieldValue); - } - - private static final AddressLayout value$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("value")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *value - * } - */ - public static final AddressLayout value$layout() { - return value$LAYOUT; - } - - private static final long value$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *value - * } - */ - public static final long value$offset() { - return value$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *value - * } - */ - public static MemorySegment value(MemorySegment struct) { - return struct.get(value$LAYOUT, value$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *value - * } - */ - public static void value(MemorySegment struct, MemorySegment fieldValue) { - struct.set(value$LAYOUT, value$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleCompilationHint.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleCompilationHint.java deleted file mode 100644 index 8ad13f518..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleCompilationHint.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUShaderModuleCompilationHint { - * const WGPUChainedStruct *nextInChain; - * const char *entryPoint; - * WGPUPipelineLayout layout; - * } - * } - */ -public class WGPUShaderModuleCompilationHint { - - WGPUShaderModuleCompilationHint() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("entryPoint"), - WGPU.C_POINTER.withName("layout") - ).withName("WGPUShaderModuleCompilationHint"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout entryPoint$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("entryPoint")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static final AddressLayout entryPoint$layout() { - return entryPoint$LAYOUT; - } - - private static final long entryPoint$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static final long entryPoint$offset() { - return entryPoint$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static MemorySegment entryPoint(MemorySegment struct) { - return struct.get(entryPoint$LAYOUT, entryPoint$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static void entryPoint(MemorySegment struct, MemorySegment fieldValue) { - struct.set(entryPoint$LAYOUT, entryPoint$OFFSET, fieldValue); - } - - private static final AddressLayout layout$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("layout")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static final AddressLayout layout$layout() { - return layout$LAYOUT; - } - - private static final long layout$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static final long layout$offset() { - return layout$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static MemorySegment layout(MemorySegment struct) { - return struct.get(layout$LAYOUT, layout$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUPipelineLayout layout - * } - */ - public static void layout(MemorySegment struct, MemorySegment fieldValue) { - struct.set(layout$LAYOUT, layout$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleDescriptor.java deleted file mode 100644 index c083fc63c..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleDescriptor.java +++ /dev/null @@ -1,265 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUShaderModuleDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * size_t hintCount; - * const WGPUShaderModuleCompilationHint *hints; - * } - * } - */ -public class WGPUShaderModuleDescriptor { - - WGPUShaderModuleDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_LONG_LONG.withName("hintCount"), - WGPU.C_POINTER.withName("hints") - ).withName("WGPUShaderModuleDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfLong hintCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("hintCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t hintCount - * } - */ - public static final OfLong hintCount$layout() { - return hintCount$LAYOUT; - } - - private static final long hintCount$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t hintCount - * } - */ - public static final long hintCount$offset() { - return hintCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t hintCount - * } - */ - public static long hintCount(MemorySegment struct) { - return struct.get(hintCount$LAYOUT, hintCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t hintCount - * } - */ - public static void hintCount(MemorySegment struct, long fieldValue) { - struct.set(hintCount$LAYOUT, hintCount$OFFSET, fieldValue); - } - - private static final AddressLayout hints$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("hints")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUShaderModuleCompilationHint *hints - * } - */ - public static final AddressLayout hints$layout() { - return hints$LAYOUT; - } - - private static final long hints$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUShaderModuleCompilationHint *hints - * } - */ - public static final long hints$offset() { - return hints$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUShaderModuleCompilationHint *hints - * } - */ - public static MemorySegment hints(MemorySegment struct) { - return struct.get(hints$LAYOUT, hints$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUShaderModuleCompilationHint *hints - * } - */ - public static void hints(MemorySegment struct, MemorySegment fieldValue) { - struct.set(hints$LAYOUT, hints$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleGLSLDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleGLSLDescriptor.java deleted file mode 100644 index c26763766..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleGLSLDescriptor.java +++ /dev/null @@ -1,313 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUShaderModuleGLSLDescriptor { - * WGPUChainedStruct chain; - * WGPUShaderStage stage; - * const char *code; - * uint32_t defineCount; - * WGPUShaderDefine *defines; - * } - * } - */ -public class WGPUShaderModuleGLSLDescriptor { - - WGPUShaderModuleGLSLDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_INT.withName("stage"), - MemoryLayout.paddingLayout(4), - WGPU.C_POINTER.withName("code"), - WGPU.C_INT.withName("defineCount"), - MemoryLayout.paddingLayout(4), - WGPU.C_POINTER.withName("defines") - ).withName("WGPUShaderModuleGLSLDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final OfInt stage$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stage")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUShaderStage stage - * } - */ - public static final OfInt stage$layout() { - return stage$LAYOUT; - } - - private static final long stage$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUShaderStage stage - * } - */ - public static final long stage$offset() { - return stage$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUShaderStage stage - * } - */ - public static int stage(MemorySegment struct) { - return struct.get(stage$LAYOUT, stage$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUShaderStage stage - * } - */ - public static void stage(MemorySegment struct, int fieldValue) { - struct.set(stage$LAYOUT, stage$OFFSET, fieldValue); - } - - private static final AddressLayout code$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("code")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *code - * } - */ - public static final AddressLayout code$layout() { - return code$LAYOUT; - } - - private static final long code$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *code - * } - */ - public static final long code$offset() { - return code$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *code - * } - */ - public static MemorySegment code(MemorySegment struct) { - return struct.get(code$LAYOUT, code$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *code - * } - */ - public static void code(MemorySegment struct, MemorySegment fieldValue) { - struct.set(code$LAYOUT, code$OFFSET, fieldValue); - } - - private static final OfInt defineCount$LAYOUT = (OfInt)$LAYOUT.select(groupElement("defineCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t defineCount - * } - */ - public static final OfInt defineCount$layout() { - return defineCount$LAYOUT; - } - - private static final long defineCount$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t defineCount - * } - */ - public static final long defineCount$offset() { - return defineCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t defineCount - * } - */ - public static int defineCount(MemorySegment struct) { - return struct.get(defineCount$LAYOUT, defineCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t defineCount - * } - */ - public static void defineCount(MemorySegment struct, int fieldValue) { - struct.set(defineCount$LAYOUT, defineCount$OFFSET, fieldValue); - } - - private static final AddressLayout defines$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("defines")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUShaderDefine *defines - * } - */ - public static final AddressLayout defines$layout() { - return defines$LAYOUT; - } - - private static final long defines$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUShaderDefine *defines - * } - */ - public static final long defines$offset() { - return defines$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUShaderDefine *defines - * } - */ - public static MemorySegment defines(MemorySegment struct) { - return struct.get(defines$LAYOUT, defines$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUShaderDefine *defines - * } - */ - public static void defines(MemorySegment struct, MemorySegment fieldValue) { - struct.set(defines$LAYOUT, defines$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleSPIRVDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleSPIRVDescriptor.java deleted file mode 100644 index 28781f9f4..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleSPIRVDescriptor.java +++ /dev/null @@ -1,220 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUShaderModuleSPIRVDescriptor { - * WGPUChainedStruct chain; - * uint32_t codeSize; - * const uint32_t *code; - * } - * } - */ -public class WGPUShaderModuleSPIRVDescriptor { - - WGPUShaderModuleSPIRVDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_INT.withName("codeSize"), - MemoryLayout.paddingLayout(4), - WGPU.C_POINTER.withName("code") - ).withName("WGPUShaderModuleSPIRVDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final OfInt codeSize$LAYOUT = (OfInt)$LAYOUT.select(groupElement("codeSize")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t codeSize - * } - */ - public static final OfInt codeSize$layout() { - return codeSize$LAYOUT; - } - - private static final long codeSize$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t codeSize - * } - */ - public static final long codeSize$offset() { - return codeSize$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t codeSize - * } - */ - public static int codeSize(MemorySegment struct) { - return struct.get(codeSize$LAYOUT, codeSize$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t codeSize - * } - */ - public static void codeSize(MemorySegment struct, int fieldValue) { - struct.set(codeSize$LAYOUT, codeSize$OFFSET, fieldValue); - } - - private static final AddressLayout code$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("code")); - - /** - * Layout for field: - * {@snippet lang=c : - * const uint32_t *code - * } - */ - public static final AddressLayout code$layout() { - return code$LAYOUT; - } - - private static final long code$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const uint32_t *code - * } - */ - public static final long code$offset() { - return code$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const uint32_t *code - * } - */ - public static MemorySegment code(MemorySegment struct) { - return struct.get(code$LAYOUT, code$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const uint32_t *code - * } - */ - public static void code(MemorySegment struct, MemorySegment fieldValue) { - struct.set(code$LAYOUT, code$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleWGSLDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleWGSLDescriptor.java deleted file mode 100644 index 528a8f74b..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUShaderModuleWGSLDescriptor.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUShaderModuleWGSLDescriptor { - * WGPUChainedStruct chain; - * const char *code; - * } - * } - */ -public class WGPUShaderModuleWGSLDescriptor { - - WGPUShaderModuleWGSLDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("code") - ).withName("WGPUShaderModuleWGSLDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout code$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("code")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *code - * } - */ - public static final AddressLayout code$layout() { - return code$LAYOUT; - } - - private static final long code$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *code - * } - */ - public static final long code$offset() { - return code$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *code - * } - */ - public static MemorySegment code(MemorySegment struct) { - return struct.get(code$LAYOUT, code$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *code - * } - */ - public static void code(MemorySegment struct, MemorySegment fieldValue) { - struct.set(code$LAYOUT, code$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUStencilFaceState.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUStencilFaceState.java deleted file mode 100644 index b25a24f72..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUStencilFaceState.java +++ /dev/null @@ -1,265 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUStencilFaceState { - * WGPUCompareFunction compare; - * WGPUStencilOperation failOp; - * WGPUStencilOperation depthFailOp; - * WGPUStencilOperation passOp; - * } - * } - */ -public class WGPUStencilFaceState { - - WGPUStencilFaceState() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_INT.withName("compare"), - WGPU.C_INT.withName("failOp"), - WGPU.C_INT.withName("depthFailOp"), - WGPU.C_INT.withName("passOp") - ).withName("WGPUStencilFaceState"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfInt compare$LAYOUT = (OfInt)$LAYOUT.select(groupElement("compare")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUCompareFunction compare - * } - */ - public static final OfInt compare$layout() { - return compare$LAYOUT; - } - - private static final long compare$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUCompareFunction compare - * } - */ - public static final long compare$offset() { - return compare$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUCompareFunction compare - * } - */ - public static int compare(MemorySegment struct) { - return struct.get(compare$LAYOUT, compare$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUCompareFunction compare - * } - */ - public static void compare(MemorySegment struct, int fieldValue) { - struct.set(compare$LAYOUT, compare$OFFSET, fieldValue); - } - - private static final OfInt failOp$LAYOUT = (OfInt)$LAYOUT.select(groupElement("failOp")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUStencilOperation failOp - * } - */ - public static final OfInt failOp$layout() { - return failOp$LAYOUT; - } - - private static final long failOp$OFFSET = 4; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUStencilOperation failOp - * } - */ - public static final long failOp$offset() { - return failOp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUStencilOperation failOp - * } - */ - public static int failOp(MemorySegment struct) { - return struct.get(failOp$LAYOUT, failOp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUStencilOperation failOp - * } - */ - public static void failOp(MemorySegment struct, int fieldValue) { - struct.set(failOp$LAYOUT, failOp$OFFSET, fieldValue); - } - - private static final OfInt depthFailOp$LAYOUT = (OfInt)$LAYOUT.select(groupElement("depthFailOp")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUStencilOperation depthFailOp - * } - */ - public static final OfInt depthFailOp$layout() { - return depthFailOp$LAYOUT; - } - - private static final long depthFailOp$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUStencilOperation depthFailOp - * } - */ - public static final long depthFailOp$offset() { - return depthFailOp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUStencilOperation depthFailOp - * } - */ - public static int depthFailOp(MemorySegment struct) { - return struct.get(depthFailOp$LAYOUT, depthFailOp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUStencilOperation depthFailOp - * } - */ - public static void depthFailOp(MemorySegment struct, int fieldValue) { - struct.set(depthFailOp$LAYOUT, depthFailOp$OFFSET, fieldValue); - } - - private static final OfInt passOp$LAYOUT = (OfInt)$LAYOUT.select(groupElement("passOp")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUStencilOperation passOp - * } - */ - public static final OfInt passOp$layout() { - return passOp$LAYOUT; - } - - private static final long passOp$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUStencilOperation passOp - * } - */ - public static final long passOp$offset() { - return passOp$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUStencilOperation passOp - * } - */ - public static int passOp(MemorySegment struct) { - return struct.get(passOp$LAYOUT, passOp$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUStencilOperation passOp - * } - */ - public static void passOp(MemorySegment struct, int fieldValue) { - struct.set(passOp$LAYOUT, passOp$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUStorageTextureBindingLayout.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUStorageTextureBindingLayout.java deleted file mode 100644 index 99a751ff7..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUStorageTextureBindingLayout.java +++ /dev/null @@ -1,266 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUStorageTextureBindingLayout { - * const WGPUChainedStruct *nextInChain; - * WGPUStorageTextureAccess access; - * WGPUTextureFormat format; - * WGPUTextureViewDimension viewDimension; - * } - * } - */ -public class WGPUStorageTextureBindingLayout { - - WGPUStorageTextureBindingLayout() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("access"), - WGPU.C_INT.withName("format"), - WGPU.C_INT.withName("viewDimension"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUStorageTextureBindingLayout"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt access$LAYOUT = (OfInt)$LAYOUT.select(groupElement("access")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUStorageTextureAccess access - * } - */ - public static final OfInt access$layout() { - return access$LAYOUT; - } - - private static final long access$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUStorageTextureAccess access - * } - */ - public static final long access$offset() { - return access$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUStorageTextureAccess access - * } - */ - public static int access(MemorySegment struct) { - return struct.get(access$LAYOUT, access$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUStorageTextureAccess access - * } - */ - public static void access(MemorySegment struct, int fieldValue) { - struct.set(access$LAYOUT, access$OFFSET, fieldValue); - } - - private static final OfInt format$LAYOUT = (OfInt)$LAYOUT.select(groupElement("format")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final OfInt format$layout() { - return format$LAYOUT; - } - - private static final long format$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final long format$offset() { - return format$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static int format(MemorySegment struct) { - return struct.get(format$LAYOUT, format$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static void format(MemorySegment struct, int fieldValue) { - struct.set(format$LAYOUT, format$OFFSET, fieldValue); - } - - private static final OfInt viewDimension$LAYOUT = (OfInt)$LAYOUT.select(groupElement("viewDimension")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureViewDimension viewDimension - * } - */ - public static final OfInt viewDimension$layout() { - return viewDimension$LAYOUT; - } - - private static final long viewDimension$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureViewDimension viewDimension - * } - */ - public static final long viewDimension$offset() { - return viewDimension$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureViewDimension viewDimension - * } - */ - public static int viewDimension(MemorySegment struct) { - return struct.get(viewDimension$LAYOUT, viewDimension$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureViewDimension viewDimension - * } - */ - public static void viewDimension(MemorySegment struct, int fieldValue) { - struct.set(viewDimension$LAYOUT, viewDimension$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSupportedLimits.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSupportedLimits.java deleted file mode 100644 index de4a0f05f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSupportedLimits.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSupportedLimits { - * WGPUChainedStructOut *nextInChain; - * WGPULimits limits; - * } - * } - */ -public class WGPUSupportedLimits { - - WGPUSupportedLimits() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPULimits.layout().withName("limits") - ).withName("WGPUSupportedLimits"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final GroupLayout limits$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("limits")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPULimits limits - * } - */ - public static final GroupLayout limits$layout() { - return limits$LAYOUT; - } - - private static final long limits$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPULimits limits - * } - */ - public static final long limits$offset() { - return limits$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPULimits limits - * } - */ - public static MemorySegment limits(MemorySegment struct) { - return struct.asSlice(limits$OFFSET, limits$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPULimits limits - * } - */ - public static void limits(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, limits$OFFSET, limits$LAYOUT.byteSize()); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSupportedLimitsExtras.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSupportedLimitsExtras.java deleted file mode 100644 index a7be9e6bf..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSupportedLimitsExtras.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSupportedLimitsExtras { - * WGPUChainedStructOut chain; - * WGPUNativeLimits limits; - * } - * } - */ -public class WGPUSupportedLimitsExtras { - - WGPUSupportedLimitsExtras() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStructOut.layout().withName("chain"), - WGPUNativeLimits.layout().withName("limits") - ).withName("WGPUSupportedLimitsExtras"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStructOut chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStructOut chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStructOut chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStructOut chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final GroupLayout limits$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("limits")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUNativeLimits limits - * } - */ - public static final GroupLayout limits$layout() { - return limits$LAYOUT; - } - - private static final long limits$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUNativeLimits limits - * } - */ - public static final long limits$offset() { - return limits$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUNativeLimits limits - * } - */ - public static MemorySegment limits(MemorySegment struct) { - return struct.asSlice(limits$OFFSET, limits$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUNativeLimits limits - * } - */ - public static void limits(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, limits$OFFSET, limits$LAYOUT.byteSize()); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceCapabilities.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceCapabilities.java deleted file mode 100644 index 8c9ea10a1..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceCapabilities.java +++ /dev/null @@ -1,403 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceCapabilities { - * WGPUChainedStructOut *nextInChain; - * size_t formatCount; - * WGPUTextureFormat *formats; - * size_t presentModeCount; - * WGPUPresentMode *presentModes; - * size_t alphaModeCount; - * WGPUCompositeAlphaMode *alphaModes; - * } - * } - */ -public class WGPUSurfaceCapabilities { - - WGPUSurfaceCapabilities() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_LONG_LONG.withName("formatCount"), - WGPU.C_POINTER.withName("formats"), - WGPU.C_LONG_LONG.withName("presentModeCount"), - WGPU.C_POINTER.withName("presentModes"), - WGPU.C_LONG_LONG.withName("alphaModeCount"), - WGPU.C_POINTER.withName("alphaModes") - ).withName("WGPUSurfaceCapabilities"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStructOut *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfLong formatCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("formatCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t formatCount - * } - */ - public static final OfLong formatCount$layout() { - return formatCount$LAYOUT; - } - - private static final long formatCount$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t formatCount - * } - */ - public static final long formatCount$offset() { - return formatCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t formatCount - * } - */ - public static long formatCount(MemorySegment struct) { - return struct.get(formatCount$LAYOUT, formatCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t formatCount - * } - */ - public static void formatCount(MemorySegment struct, long fieldValue) { - struct.set(formatCount$LAYOUT, formatCount$OFFSET, fieldValue); - } - - private static final AddressLayout formats$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("formats")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureFormat *formats - * } - */ - public static final AddressLayout formats$layout() { - return formats$LAYOUT; - } - - private static final long formats$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureFormat *formats - * } - */ - public static final long formats$offset() { - return formats$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureFormat *formats - * } - */ - public static MemorySegment formats(MemorySegment struct) { - return struct.get(formats$LAYOUT, formats$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureFormat *formats - * } - */ - public static void formats(MemorySegment struct, MemorySegment fieldValue) { - struct.set(formats$LAYOUT, formats$OFFSET, fieldValue); - } - - private static final OfLong presentModeCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("presentModeCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t presentModeCount - * } - */ - public static final OfLong presentModeCount$layout() { - return presentModeCount$LAYOUT; - } - - private static final long presentModeCount$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t presentModeCount - * } - */ - public static final long presentModeCount$offset() { - return presentModeCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t presentModeCount - * } - */ - public static long presentModeCount(MemorySegment struct) { - return struct.get(presentModeCount$LAYOUT, presentModeCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t presentModeCount - * } - */ - public static void presentModeCount(MemorySegment struct, long fieldValue) { - struct.set(presentModeCount$LAYOUT, presentModeCount$OFFSET, fieldValue); - } - - private static final AddressLayout presentModes$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("presentModes")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUPresentMode *presentModes - * } - */ - public static final AddressLayout presentModes$layout() { - return presentModes$LAYOUT; - } - - private static final long presentModes$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUPresentMode *presentModes - * } - */ - public static final long presentModes$offset() { - return presentModes$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUPresentMode *presentModes - * } - */ - public static MemorySegment presentModes(MemorySegment struct) { - return struct.get(presentModes$LAYOUT, presentModes$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUPresentMode *presentModes - * } - */ - public static void presentModes(MemorySegment struct, MemorySegment fieldValue) { - struct.set(presentModes$LAYOUT, presentModes$OFFSET, fieldValue); - } - - private static final OfLong alphaModeCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("alphaModeCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t alphaModeCount - * } - */ - public static final OfLong alphaModeCount$layout() { - return alphaModeCount$LAYOUT; - } - - private static final long alphaModeCount$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t alphaModeCount - * } - */ - public static final long alphaModeCount$offset() { - return alphaModeCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t alphaModeCount - * } - */ - public static long alphaModeCount(MemorySegment struct) { - return struct.get(alphaModeCount$LAYOUT, alphaModeCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t alphaModeCount - * } - */ - public static void alphaModeCount(MemorySegment struct, long fieldValue) { - struct.set(alphaModeCount$LAYOUT, alphaModeCount$OFFSET, fieldValue); - } - - private static final AddressLayout alphaModes$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("alphaModes")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUCompositeAlphaMode *alphaModes - * } - */ - public static final AddressLayout alphaModes$layout() { - return alphaModes$LAYOUT; - } - - private static final long alphaModes$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUCompositeAlphaMode *alphaModes - * } - */ - public static final long alphaModes$offset() { - return alphaModes$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUCompositeAlphaMode *alphaModes - * } - */ - public static MemorySegment alphaModes(MemorySegment struct) { - return struct.get(alphaModes$LAYOUT, alphaModes$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUCompositeAlphaMode *alphaModes - * } - */ - public static void alphaModes(MemorySegment struct, MemorySegment fieldValue) { - struct.set(alphaModes$LAYOUT, alphaModes$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceConfiguration.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceConfiguration.java deleted file mode 100644 index a3c4290c8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceConfiguration.java +++ /dev/null @@ -1,541 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceConfiguration { - * const WGPUChainedStruct *nextInChain; - * WGPUDevice device; - * WGPUTextureFormat format; - * WGPUTextureUsageFlags usage; - * size_t viewFormatCount; - * const WGPUTextureFormat *viewFormats; - * WGPUCompositeAlphaMode alphaMode; - * uint32_t width; - * uint32_t height; - * WGPUPresentMode presentMode; - * } - * } - */ -public class WGPUSurfaceConfiguration { - - WGPUSurfaceConfiguration() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("device"), - WGPU.C_INT.withName("format"), - WGPU.C_INT.withName("usage"), - WGPU.C_LONG_LONG.withName("viewFormatCount"), - WGPU.C_POINTER.withName("viewFormats"), - WGPU.C_INT.withName("alphaMode"), - WGPU.C_INT.withName("width"), - WGPU.C_INT.withName("height"), - WGPU.C_INT.withName("presentMode") - ).withName("WGPUSurfaceConfiguration"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout device$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("device")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUDevice device - * } - */ - public static final AddressLayout device$layout() { - return device$LAYOUT; - } - - private static final long device$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUDevice device - * } - */ - public static final long device$offset() { - return device$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUDevice device - * } - */ - public static MemorySegment device(MemorySegment struct) { - return struct.get(device$LAYOUT, device$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUDevice device - * } - */ - public static void device(MemorySegment struct, MemorySegment fieldValue) { - struct.set(device$LAYOUT, device$OFFSET, fieldValue); - } - - private static final OfInt format$LAYOUT = (OfInt)$LAYOUT.select(groupElement("format")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final OfInt format$layout() { - return format$LAYOUT; - } - - private static final long format$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final long format$offset() { - return format$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static int format(MemorySegment struct) { - return struct.get(format$LAYOUT, format$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static void format(MemorySegment struct, int fieldValue) { - struct.set(format$LAYOUT, format$OFFSET, fieldValue); - } - - private static final OfInt usage$LAYOUT = (OfInt)$LAYOUT.select(groupElement("usage")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureUsageFlags usage - * } - */ - public static final OfInt usage$layout() { - return usage$LAYOUT; - } - - private static final long usage$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureUsageFlags usage - * } - */ - public static final long usage$offset() { - return usage$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureUsageFlags usage - * } - */ - public static int usage(MemorySegment struct) { - return struct.get(usage$LAYOUT, usage$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureUsageFlags usage - * } - */ - public static void usage(MemorySegment struct, int fieldValue) { - struct.set(usage$LAYOUT, usage$OFFSET, fieldValue); - } - - private static final OfLong viewFormatCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("viewFormatCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t viewFormatCount - * } - */ - public static final OfLong viewFormatCount$layout() { - return viewFormatCount$LAYOUT; - } - - private static final long viewFormatCount$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t viewFormatCount - * } - */ - public static final long viewFormatCount$offset() { - return viewFormatCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t viewFormatCount - * } - */ - public static long viewFormatCount(MemorySegment struct) { - return struct.get(viewFormatCount$LAYOUT, viewFormatCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t viewFormatCount - * } - */ - public static void viewFormatCount(MemorySegment struct, long fieldValue) { - struct.set(viewFormatCount$LAYOUT, viewFormatCount$OFFSET, fieldValue); - } - - private static final AddressLayout viewFormats$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("viewFormats")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUTextureFormat *viewFormats - * } - */ - public static final AddressLayout viewFormats$layout() { - return viewFormats$LAYOUT; - } - - private static final long viewFormats$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUTextureFormat *viewFormats - * } - */ - public static final long viewFormats$offset() { - return viewFormats$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUTextureFormat *viewFormats - * } - */ - public static MemorySegment viewFormats(MemorySegment struct) { - return struct.get(viewFormats$LAYOUT, viewFormats$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUTextureFormat *viewFormats - * } - */ - public static void viewFormats(MemorySegment struct, MemorySegment fieldValue) { - struct.set(viewFormats$LAYOUT, viewFormats$OFFSET, fieldValue); - } - - private static final OfInt alphaMode$LAYOUT = (OfInt)$LAYOUT.select(groupElement("alphaMode")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUCompositeAlphaMode alphaMode - * } - */ - public static final OfInt alphaMode$layout() { - return alphaMode$LAYOUT; - } - - private static final long alphaMode$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUCompositeAlphaMode alphaMode - * } - */ - public static final long alphaMode$offset() { - return alphaMode$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUCompositeAlphaMode alphaMode - * } - */ - public static int alphaMode(MemorySegment struct) { - return struct.get(alphaMode$LAYOUT, alphaMode$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUCompositeAlphaMode alphaMode - * } - */ - public static void alphaMode(MemorySegment struct, int fieldValue) { - struct.set(alphaMode$LAYOUT, alphaMode$OFFSET, fieldValue); - } - - private static final OfInt width$LAYOUT = (OfInt)$LAYOUT.select(groupElement("width")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t width - * } - */ - public static final OfInt width$layout() { - return width$LAYOUT; - } - - private static final long width$OFFSET = 44; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t width - * } - */ - public static final long width$offset() { - return width$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t width - * } - */ - public static int width(MemorySegment struct) { - return struct.get(width$LAYOUT, width$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t width - * } - */ - public static void width(MemorySegment struct, int fieldValue) { - struct.set(width$LAYOUT, width$OFFSET, fieldValue); - } - - private static final OfInt height$LAYOUT = (OfInt)$LAYOUT.select(groupElement("height")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t height - * } - */ - public static final OfInt height$layout() { - return height$LAYOUT; - } - - private static final long height$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t height - * } - */ - public static final long height$offset() { - return height$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t height - * } - */ - public static int height(MemorySegment struct) { - return struct.get(height$LAYOUT, height$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t height - * } - */ - public static void height(MemorySegment struct, int fieldValue) { - struct.set(height$LAYOUT, height$OFFSET, fieldValue); - } - - private static final OfInt presentMode$LAYOUT = (OfInt)$LAYOUT.select(groupElement("presentMode")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUPresentMode presentMode - * } - */ - public static final OfInt presentMode$layout() { - return presentMode$LAYOUT; - } - - private static final long presentMode$OFFSET = 52; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUPresentMode presentMode - * } - */ - public static final long presentMode$offset() { - return presentMode$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUPresentMode presentMode - * } - */ - public static int presentMode(MemorySegment struct) { - return struct.get(presentMode$LAYOUT, presentMode$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUPresentMode presentMode - * } - */ - public static void presentMode(MemorySegment struct, int fieldValue) { - struct.set(presentMode$LAYOUT, presentMode$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceConfigurationExtras.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceConfigurationExtras.java deleted file mode 100644 index 17a65567f..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceConfigurationExtras.java +++ /dev/null @@ -1,174 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceConfigurationExtras { - * WGPUChainedStruct chain; - * WGPUBool desiredMaximumFrameLatency; - * } - * } - */ -public class WGPUSurfaceConfigurationExtras { - - WGPUSurfaceConfigurationExtras() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_INT.withName("desiredMaximumFrameLatency"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUSurfaceConfigurationExtras"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final OfInt desiredMaximumFrameLatency$LAYOUT = (OfInt)$LAYOUT.select(groupElement("desiredMaximumFrameLatency")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool desiredMaximumFrameLatency - * } - */ - public static final OfInt desiredMaximumFrameLatency$layout() { - return desiredMaximumFrameLatency$LAYOUT; - } - - private static final long desiredMaximumFrameLatency$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool desiredMaximumFrameLatency - * } - */ - public static final long desiredMaximumFrameLatency$offset() { - return desiredMaximumFrameLatency$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool desiredMaximumFrameLatency - * } - */ - public static int desiredMaximumFrameLatency(MemorySegment struct) { - return struct.get(desiredMaximumFrameLatency$LAYOUT, desiredMaximumFrameLatency$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool desiredMaximumFrameLatency - * } - */ - public static void desiredMaximumFrameLatency(MemorySegment struct, int fieldValue) { - struct.set(desiredMaximumFrameLatency$LAYOUT, desiredMaximumFrameLatency$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptor.java deleted file mode 100644 index 433217b77..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptor.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * } - * } - */ -public class WGPUSurfaceDescriptor { - - WGPUSurfaceDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label") - ).withName("WGPUSurfaceDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromAndroidNativeWindow.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromAndroidNativeWindow.java deleted file mode 100644 index a9c9507da..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromAndroidNativeWindow.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceDescriptorFromAndroidNativeWindow { - * WGPUChainedStruct chain; - * void *window; - * } - * } - */ -public class WGPUSurfaceDescriptorFromAndroidNativeWindow { - - WGPUSurfaceDescriptorFromAndroidNativeWindow() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("window") - ).withName("WGPUSurfaceDescriptorFromAndroidNativeWindow"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout window$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("window")); - - /** - * Layout for field: - * {@snippet lang=c : - * void *window - * } - */ - public static final AddressLayout window$layout() { - return window$LAYOUT; - } - - private static final long window$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * void *window - * } - */ - public static final long window$offset() { - return window$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * void *window - * } - */ - public static MemorySegment window(MemorySegment struct) { - return struct.get(window$LAYOUT, window$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * void *window - * } - */ - public static void window(MemorySegment struct, MemorySegment fieldValue) { - struct.set(window$LAYOUT, window$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromCanvasHTMLSelector.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromCanvasHTMLSelector.java deleted file mode 100644 index d587dcd87..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromCanvasHTMLSelector.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceDescriptorFromCanvasHTMLSelector { - * WGPUChainedStruct chain; - * const char *selector; - * } - * } - */ -public class WGPUSurfaceDescriptorFromCanvasHTMLSelector { - - WGPUSurfaceDescriptorFromCanvasHTMLSelector() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("selector") - ).withName("WGPUSurfaceDescriptorFromCanvasHTMLSelector"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout selector$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("selector")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *selector - * } - */ - public static final AddressLayout selector$layout() { - return selector$LAYOUT; - } - - private static final long selector$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *selector - * } - */ - public static final long selector$offset() { - return selector$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *selector - * } - */ - public static MemorySegment selector(MemorySegment struct) { - return struct.get(selector$LAYOUT, selector$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *selector - * } - */ - public static void selector(MemorySegment struct, MemorySegment fieldValue) { - struct.set(selector$LAYOUT, selector$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromMetalLayer.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromMetalLayer.java deleted file mode 100644 index 2688d70ea..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromMetalLayer.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceDescriptorFromMetalLayer { - * WGPUChainedStruct chain; - * void *layer; - * } - * } - */ -public class WGPUSurfaceDescriptorFromMetalLayer { - - WGPUSurfaceDescriptorFromMetalLayer() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("layer") - ).withName("WGPUSurfaceDescriptorFromMetalLayer"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout layer$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("layer")); - - /** - * Layout for field: - * {@snippet lang=c : - * void *layer - * } - */ - public static final AddressLayout layer$layout() { - return layer$LAYOUT; - } - - private static final long layer$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * void *layer - * } - */ - public static final long layer$offset() { - return layer$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * void *layer - * } - */ - public static MemorySegment layer(MemorySegment struct) { - return struct.get(layer$LAYOUT, layer$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * void *layer - * } - */ - public static void layer(MemorySegment struct, MemorySegment fieldValue) { - struct.set(layer$LAYOUT, layer$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromWaylandSurface.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromWaylandSurface.java deleted file mode 100644 index 5db6268cb..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromWaylandSurface.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceDescriptorFromWaylandSurface { - * WGPUChainedStruct chain; - * void *display; - * void *surface; - * } - * } - */ -public class WGPUSurfaceDescriptorFromWaylandSurface { - - WGPUSurfaceDescriptorFromWaylandSurface() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("display"), - WGPU.C_POINTER.withName("surface") - ).withName("WGPUSurfaceDescriptorFromWaylandSurface"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout display$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("display")); - - /** - * Layout for field: - * {@snippet lang=c : - * void *display - * } - */ - public static final AddressLayout display$layout() { - return display$LAYOUT; - } - - private static final long display$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * void *display - * } - */ - public static final long display$offset() { - return display$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * void *display - * } - */ - public static MemorySegment display(MemorySegment struct) { - return struct.get(display$LAYOUT, display$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * void *display - * } - */ - public static void display(MemorySegment struct, MemorySegment fieldValue) { - struct.set(display$LAYOUT, display$OFFSET, fieldValue); - } - - private static final AddressLayout surface$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("surface")); - - /** - * Layout for field: - * {@snippet lang=c : - * void *surface - * } - */ - public static final AddressLayout surface$layout() { - return surface$LAYOUT; - } - - private static final long surface$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * void *surface - * } - */ - public static final long surface$offset() { - return surface$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * void *surface - * } - */ - public static MemorySegment surface(MemorySegment struct) { - return struct.get(surface$LAYOUT, surface$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * void *surface - * } - */ - public static void surface(MemorySegment struct, MemorySegment fieldValue) { - struct.set(surface$LAYOUT, surface$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromWindowsHWND.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromWindowsHWND.java deleted file mode 100644 index 8e262cc62..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromWindowsHWND.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceDescriptorFromWindowsHWND { - * WGPUChainedStruct chain; - * void *hinstance; - * void *hwnd; - * } - * } - */ -public class WGPUSurfaceDescriptorFromWindowsHWND { - - WGPUSurfaceDescriptorFromWindowsHWND() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("hinstance"), - WGPU.C_POINTER.withName("hwnd") - ).withName("WGPUSurfaceDescriptorFromWindowsHWND"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout hinstance$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("hinstance")); - - /** - * Layout for field: - * {@snippet lang=c : - * void *hinstance - * } - */ - public static final AddressLayout hinstance$layout() { - return hinstance$LAYOUT; - } - - private static final long hinstance$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * void *hinstance - * } - */ - public static final long hinstance$offset() { - return hinstance$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * void *hinstance - * } - */ - public static MemorySegment hinstance(MemorySegment struct) { - return struct.get(hinstance$LAYOUT, hinstance$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * void *hinstance - * } - */ - public static void hinstance(MemorySegment struct, MemorySegment fieldValue) { - struct.set(hinstance$LAYOUT, hinstance$OFFSET, fieldValue); - } - - private static final AddressLayout hwnd$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("hwnd")); - - /** - * Layout for field: - * {@snippet lang=c : - * void *hwnd - * } - */ - public static final AddressLayout hwnd$layout() { - return hwnd$LAYOUT; - } - - private static final long hwnd$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * void *hwnd - * } - */ - public static final long hwnd$offset() { - return hwnd$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * void *hwnd - * } - */ - public static MemorySegment hwnd(MemorySegment struct) { - return struct.get(hwnd$LAYOUT, hwnd$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * void *hwnd - * } - */ - public static void hwnd(MemorySegment struct, MemorySegment fieldValue) { - struct.set(hwnd$LAYOUT, hwnd$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromXcbWindow.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromXcbWindow.java deleted file mode 100644 index e717392b8..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromXcbWindow.java +++ /dev/null @@ -1,220 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceDescriptorFromXcbWindow { - * WGPUChainedStruct chain; - * void *connection; - * uint32_t window; - * } - * } - */ -public class WGPUSurfaceDescriptorFromXcbWindow { - - WGPUSurfaceDescriptorFromXcbWindow() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("connection"), - WGPU.C_INT.withName("window"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUSurfaceDescriptorFromXcbWindow"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout connection$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("connection")); - - /** - * Layout for field: - * {@snippet lang=c : - * void *connection - * } - */ - public static final AddressLayout connection$layout() { - return connection$LAYOUT; - } - - private static final long connection$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * void *connection - * } - */ - public static final long connection$offset() { - return connection$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * void *connection - * } - */ - public static MemorySegment connection(MemorySegment struct) { - return struct.get(connection$LAYOUT, connection$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * void *connection - * } - */ - public static void connection(MemorySegment struct, MemorySegment fieldValue) { - struct.set(connection$LAYOUT, connection$OFFSET, fieldValue); - } - - private static final OfInt window$LAYOUT = (OfInt)$LAYOUT.select(groupElement("window")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t window - * } - */ - public static final OfInt window$layout() { - return window$LAYOUT; - } - - private static final long window$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t window - * } - */ - public static final long window$offset() { - return window$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t window - * } - */ - public static int window(MemorySegment struct) { - return struct.get(window$LAYOUT, window$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t window - * } - */ - public static void window(MemorySegment struct, int fieldValue) { - struct.set(window$LAYOUT, window$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromXlibWindow.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromXlibWindow.java deleted file mode 100644 index 1484711e2..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceDescriptorFromXlibWindow.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceDescriptorFromXlibWindow { - * WGPUChainedStruct chain; - * void *display; - * uint64_t window; - * } - * } - */ -public class WGPUSurfaceDescriptorFromXlibWindow { - - WGPUSurfaceDescriptorFromXlibWindow() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPUChainedStruct.layout().withName("chain"), - WGPU.C_POINTER.withName("display"), - WGPU.C_LONG_LONG.withName("window") - ).withName("WGPUSurfaceDescriptorFromXlibWindow"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final GroupLayout chain$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("chain")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final GroupLayout chain$layout() { - return chain$LAYOUT; - } - - private static final long chain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static final long chain$offset() { - return chain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static MemorySegment chain(MemorySegment struct) { - return struct.asSlice(chain$OFFSET, chain$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUChainedStruct chain - * } - */ - public static void chain(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, chain$OFFSET, chain$LAYOUT.byteSize()); - } - - private static final AddressLayout display$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("display")); - - /** - * Layout for field: - * {@snippet lang=c : - * void *display - * } - */ - public static final AddressLayout display$layout() { - return display$LAYOUT; - } - - private static final long display$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * void *display - * } - */ - public static final long display$offset() { - return display$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * void *display - * } - */ - public static MemorySegment display(MemorySegment struct) { - return struct.get(display$LAYOUT, display$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * void *display - * } - */ - public static void display(MemorySegment struct, MemorySegment fieldValue) { - struct.set(display$LAYOUT, display$OFFSET, fieldValue); - } - - private static final OfLong window$LAYOUT = (OfLong)$LAYOUT.select(groupElement("window")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t window - * } - */ - public static final OfLong window$layout() { - return window$LAYOUT; - } - - private static final long window$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t window - * } - */ - public static final long window$offset() { - return window$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t window - * } - */ - public static long window(MemorySegment struct) { - return struct.get(window$LAYOUT, window$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t window - * } - */ - public static void window(MemorySegment struct, long fieldValue) { - struct.set(window$LAYOUT, window$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceTexture.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceTexture.java deleted file mode 100644 index 5db8bedb1..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUSurfaceTexture.java +++ /dev/null @@ -1,219 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUSurfaceTexture { - * WGPUTexture texture; - * WGPUBool suboptimal; - * WGPUSurfaceGetCurrentTextureStatus status; - * } - * } - */ -public class WGPUSurfaceTexture { - - WGPUSurfaceTexture() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("texture"), - WGPU.C_INT.withName("suboptimal"), - WGPU.C_INT.withName("status") - ).withName("WGPUSurfaceTexture"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout texture$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("texture")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTexture texture - * } - */ - public static final AddressLayout texture$layout() { - return texture$LAYOUT; - } - - private static final long texture$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTexture texture - * } - */ - public static final long texture$offset() { - return texture$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTexture texture - * } - */ - public static MemorySegment texture(MemorySegment struct) { - return struct.get(texture$LAYOUT, texture$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTexture texture - * } - */ - public static void texture(MemorySegment struct, MemorySegment fieldValue) { - struct.set(texture$LAYOUT, texture$OFFSET, fieldValue); - } - - private static final OfInt suboptimal$LAYOUT = (OfInt)$LAYOUT.select(groupElement("suboptimal")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool suboptimal - * } - */ - public static final OfInt suboptimal$layout() { - return suboptimal$LAYOUT; - } - - private static final long suboptimal$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool suboptimal - * } - */ - public static final long suboptimal$offset() { - return suboptimal$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool suboptimal - * } - */ - public static int suboptimal(MemorySegment struct) { - return struct.get(suboptimal$LAYOUT, suboptimal$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool suboptimal - * } - */ - public static void suboptimal(MemorySegment struct, int fieldValue) { - struct.set(suboptimal$LAYOUT, suboptimal$OFFSET, fieldValue); - } - - private static final OfInt status$LAYOUT = (OfInt)$LAYOUT.select(groupElement("status")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUSurfaceGetCurrentTextureStatus status - * } - */ - public static final OfInt status$layout() { - return status$LAYOUT; - } - - private static final long status$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUSurfaceGetCurrentTextureStatus status - * } - */ - public static final long status$offset() { - return status$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUSurfaceGetCurrentTextureStatus status - * } - */ - public static int status(MemorySegment struct) { - return struct.get(status$LAYOUT, status$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUSurfaceGetCurrentTextureStatus status - * } - */ - public static void status(MemorySegment struct, int fieldValue) { - struct.set(status$LAYOUT, status$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureBindingLayout.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureBindingLayout.java deleted file mode 100644 index 7fdd634fb..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureBindingLayout.java +++ /dev/null @@ -1,266 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUTextureBindingLayout { - * const WGPUChainedStruct *nextInChain; - * WGPUTextureSampleType sampleType; - * WGPUTextureViewDimension viewDimension; - * WGPUBool multisampled; - * } - * } - */ -public class WGPUTextureBindingLayout { - - WGPUTextureBindingLayout() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_INT.withName("sampleType"), - WGPU.C_INT.withName("viewDimension"), - WGPU.C_INT.withName("multisampled"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUTextureBindingLayout"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfInt sampleType$LAYOUT = (OfInt)$LAYOUT.select(groupElement("sampleType")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureSampleType sampleType - * } - */ - public static final OfInt sampleType$layout() { - return sampleType$LAYOUT; - } - - private static final long sampleType$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureSampleType sampleType - * } - */ - public static final long sampleType$offset() { - return sampleType$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureSampleType sampleType - * } - */ - public static int sampleType(MemorySegment struct) { - return struct.get(sampleType$LAYOUT, sampleType$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureSampleType sampleType - * } - */ - public static void sampleType(MemorySegment struct, int fieldValue) { - struct.set(sampleType$LAYOUT, sampleType$OFFSET, fieldValue); - } - - private static final OfInt viewDimension$LAYOUT = (OfInt)$LAYOUT.select(groupElement("viewDimension")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureViewDimension viewDimension - * } - */ - public static final OfInt viewDimension$layout() { - return viewDimension$LAYOUT; - } - - private static final long viewDimension$OFFSET = 12; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureViewDimension viewDimension - * } - */ - public static final long viewDimension$offset() { - return viewDimension$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureViewDimension viewDimension - * } - */ - public static int viewDimension(MemorySegment struct) { - return struct.get(viewDimension$LAYOUT, viewDimension$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureViewDimension viewDimension - * } - */ - public static void viewDimension(MemorySegment struct, int fieldValue) { - struct.set(viewDimension$LAYOUT, viewDimension$OFFSET, fieldValue); - } - - private static final OfInt multisampled$LAYOUT = (OfInt)$LAYOUT.select(groupElement("multisampled")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUBool multisampled - * } - */ - public static final OfInt multisampled$layout() { - return multisampled$LAYOUT; - } - - private static final long multisampled$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUBool multisampled - * } - */ - public static final long multisampled$offset() { - return multisampled$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUBool multisampled - * } - */ - public static int multisampled(MemorySegment struct) { - return struct.get(multisampled$LAYOUT, multisampled$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUBool multisampled - * } - */ - public static void multisampled(MemorySegment struct, int fieldValue) { - struct.set(multisampled$LAYOUT, multisampled$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureDataLayout.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureDataLayout.java deleted file mode 100644 index 45d31696b..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureDataLayout.java +++ /dev/null @@ -1,265 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUTextureDataLayout { - * const WGPUChainedStruct *nextInChain; - * uint64_t offset; - * uint32_t bytesPerRow; - * uint32_t rowsPerImage; - * } - * } - */ -public class WGPUTextureDataLayout { - - WGPUTextureDataLayout() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_LONG_LONG.withName("offset"), - WGPU.C_INT.withName("bytesPerRow"), - WGPU.C_INT.withName("rowsPerImage") - ).withName("WGPUTextureDataLayout"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final OfLong offset$LAYOUT = (OfLong)$LAYOUT.select(groupElement("offset")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static final OfLong offset$layout() { - return offset$LAYOUT; - } - - private static final long offset$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static final long offset$offset() { - return offset$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static long offset(MemorySegment struct) { - return struct.get(offset$LAYOUT, offset$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static void offset(MemorySegment struct, long fieldValue) { - struct.set(offset$LAYOUT, offset$OFFSET, fieldValue); - } - - private static final OfInt bytesPerRow$LAYOUT = (OfInt)$LAYOUT.select(groupElement("bytesPerRow")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t bytesPerRow - * } - */ - public static final OfInt bytesPerRow$layout() { - return bytesPerRow$LAYOUT; - } - - private static final long bytesPerRow$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t bytesPerRow - * } - */ - public static final long bytesPerRow$offset() { - return bytesPerRow$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t bytesPerRow - * } - */ - public static int bytesPerRow(MemorySegment struct) { - return struct.get(bytesPerRow$LAYOUT, bytesPerRow$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t bytesPerRow - * } - */ - public static void bytesPerRow(MemorySegment struct, int fieldValue) { - struct.set(bytesPerRow$LAYOUT, bytesPerRow$OFFSET, fieldValue); - } - - private static final OfInt rowsPerImage$LAYOUT = (OfInt)$LAYOUT.select(groupElement("rowsPerImage")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t rowsPerImage - * } - */ - public static final OfInt rowsPerImage$layout() { - return rowsPerImage$LAYOUT; - } - - private static final long rowsPerImage$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t rowsPerImage - * } - */ - public static final long rowsPerImage$offset() { - return rowsPerImage$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t rowsPerImage - * } - */ - public static int rowsPerImage(MemorySegment struct) { - return struct.get(rowsPerImage$LAYOUT, rowsPerImage$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t rowsPerImage - * } - */ - public static void rowsPerImage(MemorySegment struct, int fieldValue) { - struct.set(rowsPerImage$LAYOUT, rowsPerImage$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureDescriptor.java deleted file mode 100644 index 55db0a7ef..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureDescriptor.java +++ /dev/null @@ -1,541 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUTextureDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * WGPUTextureUsageFlags usage; - * WGPUTextureDimension dimension; - * WGPUExtent3D size; - * WGPUTextureFormat format; - * uint32_t mipLevelCount; - * uint32_t sampleCount; - * size_t viewFormatCount; - * const WGPUTextureFormat *viewFormats; - * } - * } - */ -public class WGPUTextureDescriptor { - - WGPUTextureDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_INT.withName("usage"), - WGPU.C_INT.withName("dimension"), - WGPUExtent3D.layout().withName("size"), - WGPU.C_INT.withName("format"), - WGPU.C_INT.withName("mipLevelCount"), - WGPU.C_INT.withName("sampleCount"), - WGPU.C_LONG_LONG.withName("viewFormatCount"), - WGPU.C_POINTER.withName("viewFormats") - ).withName("WGPUTextureDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfInt usage$LAYOUT = (OfInt)$LAYOUT.select(groupElement("usage")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureUsageFlags usage - * } - */ - public static final OfInt usage$layout() { - return usage$LAYOUT; - } - - private static final long usage$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureUsageFlags usage - * } - */ - public static final long usage$offset() { - return usage$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureUsageFlags usage - * } - */ - public static int usage(MemorySegment struct) { - return struct.get(usage$LAYOUT, usage$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureUsageFlags usage - * } - */ - public static void usage(MemorySegment struct, int fieldValue) { - struct.set(usage$LAYOUT, usage$OFFSET, fieldValue); - } - - private static final OfInt dimension$LAYOUT = (OfInt)$LAYOUT.select(groupElement("dimension")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureDimension dimension - * } - */ - public static final OfInt dimension$layout() { - return dimension$LAYOUT; - } - - private static final long dimension$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureDimension dimension - * } - */ - public static final long dimension$offset() { - return dimension$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureDimension dimension - * } - */ - public static int dimension(MemorySegment struct) { - return struct.get(dimension$LAYOUT, dimension$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureDimension dimension - * } - */ - public static void dimension(MemorySegment struct, int fieldValue) { - struct.set(dimension$LAYOUT, dimension$OFFSET, fieldValue); - } - - private static final GroupLayout size$LAYOUT = (GroupLayout)$LAYOUT.select(groupElement("size")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUExtent3D size - * } - */ - public static final GroupLayout size$layout() { - return size$LAYOUT; - } - - private static final long size$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUExtent3D size - * } - */ - public static final long size$offset() { - return size$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUExtent3D size - * } - */ - public static MemorySegment size(MemorySegment struct) { - return struct.asSlice(size$OFFSET, size$LAYOUT.byteSize()); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUExtent3D size - * } - */ - public static void size(MemorySegment struct, MemorySegment fieldValue) { - MemorySegment.copy(fieldValue, 0L, struct, size$OFFSET, size$LAYOUT.byteSize()); - } - - private static final OfInt format$LAYOUT = (OfInt)$LAYOUT.select(groupElement("format")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final OfInt format$layout() { - return format$LAYOUT; - } - - private static final long format$OFFSET = 36; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final long format$offset() { - return format$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static int format(MemorySegment struct) { - return struct.get(format$LAYOUT, format$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static void format(MemorySegment struct, int fieldValue) { - struct.set(format$LAYOUT, format$OFFSET, fieldValue); - } - - private static final OfInt mipLevelCount$LAYOUT = (OfInt)$LAYOUT.select(groupElement("mipLevelCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t mipLevelCount - * } - */ - public static final OfInt mipLevelCount$layout() { - return mipLevelCount$LAYOUT; - } - - private static final long mipLevelCount$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t mipLevelCount - * } - */ - public static final long mipLevelCount$offset() { - return mipLevelCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t mipLevelCount - * } - */ - public static int mipLevelCount(MemorySegment struct) { - return struct.get(mipLevelCount$LAYOUT, mipLevelCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t mipLevelCount - * } - */ - public static void mipLevelCount(MemorySegment struct, int fieldValue) { - struct.set(mipLevelCount$LAYOUT, mipLevelCount$OFFSET, fieldValue); - } - - private static final OfInt sampleCount$LAYOUT = (OfInt)$LAYOUT.select(groupElement("sampleCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t sampleCount - * } - */ - public static final OfInt sampleCount$layout() { - return sampleCount$LAYOUT; - } - - private static final long sampleCount$OFFSET = 44; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t sampleCount - * } - */ - public static final long sampleCount$offset() { - return sampleCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t sampleCount - * } - */ - public static int sampleCount(MemorySegment struct) { - return struct.get(sampleCount$LAYOUT, sampleCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t sampleCount - * } - */ - public static void sampleCount(MemorySegment struct, int fieldValue) { - struct.set(sampleCount$LAYOUT, sampleCount$OFFSET, fieldValue); - } - - private static final OfLong viewFormatCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("viewFormatCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t viewFormatCount - * } - */ - public static final OfLong viewFormatCount$layout() { - return viewFormatCount$LAYOUT; - } - - private static final long viewFormatCount$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t viewFormatCount - * } - */ - public static final long viewFormatCount$offset() { - return viewFormatCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t viewFormatCount - * } - */ - public static long viewFormatCount(MemorySegment struct) { - return struct.get(viewFormatCount$LAYOUT, viewFormatCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t viewFormatCount - * } - */ - public static void viewFormatCount(MemorySegment struct, long fieldValue) { - struct.set(viewFormatCount$LAYOUT, viewFormatCount$OFFSET, fieldValue); - } - - private static final AddressLayout viewFormats$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("viewFormats")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUTextureFormat *viewFormats - * } - */ - public static final AddressLayout viewFormats$layout() { - return viewFormats$LAYOUT; - } - - private static final long viewFormats$OFFSET = 56; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUTextureFormat *viewFormats - * } - */ - public static final long viewFormats$offset() { - return viewFormats$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUTextureFormat *viewFormats - * } - */ - public static MemorySegment viewFormats(MemorySegment struct) { - return struct.get(viewFormats$LAYOUT, viewFormats$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUTextureFormat *viewFormats - * } - */ - public static void viewFormats(MemorySegment struct, MemorySegment fieldValue) { - struct.set(viewFormats$LAYOUT, viewFormats$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureViewDescriptor.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureViewDescriptor.java deleted file mode 100644 index de49ef5b1..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUTextureViewDescriptor.java +++ /dev/null @@ -1,496 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUTextureViewDescriptor { - * const WGPUChainedStruct *nextInChain; - * const char *label; - * WGPUTextureFormat format; - * WGPUTextureViewDimension dimension; - * uint32_t baseMipLevel; - * uint32_t mipLevelCount; - * uint32_t baseArrayLayer; - * uint32_t arrayLayerCount; - * WGPUTextureAspect aspect; - * } - * } - */ -public class WGPUTextureViewDescriptor { - - WGPUTextureViewDescriptor() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("label"), - WGPU.C_INT.withName("format"), - WGPU.C_INT.withName("dimension"), - WGPU.C_INT.withName("baseMipLevel"), - WGPU.C_INT.withName("mipLevelCount"), - WGPU.C_INT.withName("baseArrayLayer"), - WGPU.C_INT.withName("arrayLayerCount"), - WGPU.C_INT.withName("aspect"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUTextureViewDescriptor"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout label$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("label")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final AddressLayout label$layout() { - return label$LAYOUT; - } - - private static final long label$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static final long label$offset() { - return label$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static MemorySegment label(MemorySegment struct) { - return struct.get(label$LAYOUT, label$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *label - * } - */ - public static void label(MemorySegment struct, MemorySegment fieldValue) { - struct.set(label$LAYOUT, label$OFFSET, fieldValue); - } - - private static final OfInt format$LAYOUT = (OfInt)$LAYOUT.select(groupElement("format")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final OfInt format$layout() { - return format$LAYOUT; - } - - private static final long format$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static final long format$offset() { - return format$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static int format(MemorySegment struct) { - return struct.get(format$LAYOUT, format$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureFormat format - * } - */ - public static void format(MemorySegment struct, int fieldValue) { - struct.set(format$LAYOUT, format$OFFSET, fieldValue); - } - - private static final OfInt dimension$LAYOUT = (OfInt)$LAYOUT.select(groupElement("dimension")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureViewDimension dimension - * } - */ - public static final OfInt dimension$layout() { - return dimension$LAYOUT; - } - - private static final long dimension$OFFSET = 20; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureViewDimension dimension - * } - */ - public static final long dimension$offset() { - return dimension$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureViewDimension dimension - * } - */ - public static int dimension(MemorySegment struct) { - return struct.get(dimension$LAYOUT, dimension$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureViewDimension dimension - * } - */ - public static void dimension(MemorySegment struct, int fieldValue) { - struct.set(dimension$LAYOUT, dimension$OFFSET, fieldValue); - } - - private static final OfInt baseMipLevel$LAYOUT = (OfInt)$LAYOUT.select(groupElement("baseMipLevel")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t baseMipLevel - * } - */ - public static final OfInt baseMipLevel$layout() { - return baseMipLevel$LAYOUT; - } - - private static final long baseMipLevel$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t baseMipLevel - * } - */ - public static final long baseMipLevel$offset() { - return baseMipLevel$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t baseMipLevel - * } - */ - public static int baseMipLevel(MemorySegment struct) { - return struct.get(baseMipLevel$LAYOUT, baseMipLevel$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t baseMipLevel - * } - */ - public static void baseMipLevel(MemorySegment struct, int fieldValue) { - struct.set(baseMipLevel$LAYOUT, baseMipLevel$OFFSET, fieldValue); - } - - private static final OfInt mipLevelCount$LAYOUT = (OfInt)$LAYOUT.select(groupElement("mipLevelCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t mipLevelCount - * } - */ - public static final OfInt mipLevelCount$layout() { - return mipLevelCount$LAYOUT; - } - - private static final long mipLevelCount$OFFSET = 28; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t mipLevelCount - * } - */ - public static final long mipLevelCount$offset() { - return mipLevelCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t mipLevelCount - * } - */ - public static int mipLevelCount(MemorySegment struct) { - return struct.get(mipLevelCount$LAYOUT, mipLevelCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t mipLevelCount - * } - */ - public static void mipLevelCount(MemorySegment struct, int fieldValue) { - struct.set(mipLevelCount$LAYOUT, mipLevelCount$OFFSET, fieldValue); - } - - private static final OfInt baseArrayLayer$LAYOUT = (OfInt)$LAYOUT.select(groupElement("baseArrayLayer")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t baseArrayLayer - * } - */ - public static final OfInt baseArrayLayer$layout() { - return baseArrayLayer$LAYOUT; - } - - private static final long baseArrayLayer$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t baseArrayLayer - * } - */ - public static final long baseArrayLayer$offset() { - return baseArrayLayer$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t baseArrayLayer - * } - */ - public static int baseArrayLayer(MemorySegment struct) { - return struct.get(baseArrayLayer$LAYOUT, baseArrayLayer$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t baseArrayLayer - * } - */ - public static void baseArrayLayer(MemorySegment struct, int fieldValue) { - struct.set(baseArrayLayer$LAYOUT, baseArrayLayer$OFFSET, fieldValue); - } - - private static final OfInt arrayLayerCount$LAYOUT = (OfInt)$LAYOUT.select(groupElement("arrayLayerCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t arrayLayerCount - * } - */ - public static final OfInt arrayLayerCount$layout() { - return arrayLayerCount$LAYOUT; - } - - private static final long arrayLayerCount$OFFSET = 36; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t arrayLayerCount - * } - */ - public static final long arrayLayerCount$offset() { - return arrayLayerCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t arrayLayerCount - * } - */ - public static int arrayLayerCount(MemorySegment struct) { - return struct.get(arrayLayerCount$LAYOUT, arrayLayerCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t arrayLayerCount - * } - */ - public static void arrayLayerCount(MemorySegment struct, int fieldValue) { - struct.set(arrayLayerCount$LAYOUT, arrayLayerCount$OFFSET, fieldValue); - } - - private static final OfInt aspect$LAYOUT = (OfInt)$LAYOUT.select(groupElement("aspect")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUTextureAspect aspect - * } - */ - public static final OfInt aspect$layout() { - return aspect$LAYOUT; - } - - private static final long aspect$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUTextureAspect aspect - * } - */ - public static final long aspect$offset() { - return aspect$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUTextureAspect aspect - * } - */ - public static int aspect(MemorySegment struct) { - return struct.get(aspect$LAYOUT, aspect$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUTextureAspect aspect - * } - */ - public static void aspect(MemorySegment struct, int fieldValue) { - struct.set(aspect$LAYOUT, aspect$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexAttribute.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexAttribute.java deleted file mode 100644 index 8237616b5..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexAttribute.java +++ /dev/null @@ -1,221 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUVertexAttribute { - * WGPUVertexFormat format; - * uint64_t offset; - * uint32_t shaderLocation; - * } - * } - */ -public class WGPUVertexAttribute { - - WGPUVertexAttribute() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_INT.withName("format"), - MemoryLayout.paddingLayout(4), - WGPU.C_LONG_LONG.withName("offset"), - WGPU.C_INT.withName("shaderLocation"), - MemoryLayout.paddingLayout(4) - ).withName("WGPUVertexAttribute"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfInt format$LAYOUT = (OfInt)$LAYOUT.select(groupElement("format")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUVertexFormat format - * } - */ - public static final OfInt format$layout() { - return format$LAYOUT; - } - - private static final long format$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUVertexFormat format - * } - */ - public static final long format$offset() { - return format$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUVertexFormat format - * } - */ - public static int format(MemorySegment struct) { - return struct.get(format$LAYOUT, format$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUVertexFormat format - * } - */ - public static void format(MemorySegment struct, int fieldValue) { - struct.set(format$LAYOUT, format$OFFSET, fieldValue); - } - - private static final OfLong offset$LAYOUT = (OfLong)$LAYOUT.select(groupElement("offset")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static final OfLong offset$layout() { - return offset$LAYOUT; - } - - private static final long offset$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static final long offset$offset() { - return offset$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static long offset(MemorySegment struct) { - return struct.get(offset$LAYOUT, offset$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t offset - * } - */ - public static void offset(MemorySegment struct, long fieldValue) { - struct.set(offset$LAYOUT, offset$OFFSET, fieldValue); - } - - private static final OfInt shaderLocation$LAYOUT = (OfInt)$LAYOUT.select(groupElement("shaderLocation")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint32_t shaderLocation - * } - */ - public static final OfInt shaderLocation$layout() { - return shaderLocation$LAYOUT; - } - - private static final long shaderLocation$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * uint32_t shaderLocation - * } - */ - public static final long shaderLocation$offset() { - return shaderLocation$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint32_t shaderLocation - * } - */ - public static int shaderLocation(MemorySegment struct) { - return struct.get(shaderLocation$LAYOUT, shaderLocation$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint32_t shaderLocation - * } - */ - public static void shaderLocation(MemorySegment struct, int fieldValue) { - struct.set(shaderLocation$LAYOUT, shaderLocation$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexBufferLayout.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexBufferLayout.java deleted file mode 100644 index d72c6f2f1..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexBufferLayout.java +++ /dev/null @@ -1,266 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUVertexBufferLayout { - * uint64_t arrayStride; - * WGPUVertexStepMode stepMode; - * size_t attributeCount; - * const WGPUVertexAttribute *attributes; - * } - * } - */ -public class WGPUVertexBufferLayout { - - WGPUVertexBufferLayout() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_LONG_LONG.withName("arrayStride"), - WGPU.C_INT.withName("stepMode"), - MemoryLayout.paddingLayout(4), - WGPU.C_LONG_LONG.withName("attributeCount"), - WGPU.C_POINTER.withName("attributes") - ).withName("WGPUVertexBufferLayout"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final OfLong arrayStride$LAYOUT = (OfLong)$LAYOUT.select(groupElement("arrayStride")); - - /** - * Layout for field: - * {@snippet lang=c : - * uint64_t arrayStride - * } - */ - public static final OfLong arrayStride$layout() { - return arrayStride$LAYOUT; - } - - private static final long arrayStride$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * uint64_t arrayStride - * } - */ - public static final long arrayStride$offset() { - return arrayStride$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * uint64_t arrayStride - * } - */ - public static long arrayStride(MemorySegment struct) { - return struct.get(arrayStride$LAYOUT, arrayStride$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * uint64_t arrayStride - * } - */ - public static void arrayStride(MemorySegment struct, long fieldValue) { - struct.set(arrayStride$LAYOUT, arrayStride$OFFSET, fieldValue); - } - - private static final OfInt stepMode$LAYOUT = (OfInt)$LAYOUT.select(groupElement("stepMode")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUVertexStepMode stepMode - * } - */ - public static final OfInt stepMode$layout() { - return stepMode$LAYOUT; - } - - private static final long stepMode$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUVertexStepMode stepMode - * } - */ - public static final long stepMode$offset() { - return stepMode$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUVertexStepMode stepMode - * } - */ - public static int stepMode(MemorySegment struct) { - return struct.get(stepMode$LAYOUT, stepMode$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUVertexStepMode stepMode - * } - */ - public static void stepMode(MemorySegment struct, int fieldValue) { - struct.set(stepMode$LAYOUT, stepMode$OFFSET, fieldValue); - } - - private static final OfLong attributeCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("attributeCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t attributeCount - * } - */ - public static final OfLong attributeCount$layout() { - return attributeCount$LAYOUT; - } - - private static final long attributeCount$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t attributeCount - * } - */ - public static final long attributeCount$offset() { - return attributeCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t attributeCount - * } - */ - public static long attributeCount(MemorySegment struct) { - return struct.get(attributeCount$LAYOUT, attributeCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t attributeCount - * } - */ - public static void attributeCount(MemorySegment struct, long fieldValue) { - struct.set(attributeCount$LAYOUT, attributeCount$OFFSET, fieldValue); - } - - private static final AddressLayout attributes$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("attributes")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUVertexAttribute *attributes - * } - */ - public static final AddressLayout attributes$layout() { - return attributes$LAYOUT; - } - - private static final long attributes$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUVertexAttribute *attributes - * } - */ - public static final long attributes$offset() { - return attributes$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUVertexAttribute *attributes - * } - */ - public static MemorySegment attributes(MemorySegment struct) { - return struct.get(attributes$LAYOUT, attributes$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUVertexAttribute *attributes - * } - */ - public static void attributes(MemorySegment struct, MemorySegment fieldValue) { - struct.set(attributes$LAYOUT, attributes$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexState.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexState.java deleted file mode 100644 index 1d53f1857..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUVertexState.java +++ /dev/null @@ -1,403 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUVertexState { - * const WGPUChainedStruct *nextInChain; - * WGPUShaderModule module; - * const char *entryPoint; - * size_t constantCount; - * const WGPUConstantEntry *constants; - * size_t bufferCount; - * const WGPUVertexBufferLayout *buffers; - * } - * } - */ -public class WGPUVertexState { - - WGPUVertexState() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("nextInChain"), - WGPU.C_POINTER.withName("module"), - WGPU.C_POINTER.withName("entryPoint"), - WGPU.C_LONG_LONG.withName("constantCount"), - WGPU.C_POINTER.withName("constants"), - WGPU.C_LONG_LONG.withName("bufferCount"), - WGPU.C_POINTER.withName("buffers") - ).withName("WGPUVertexState"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout nextInChain$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("nextInChain")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final AddressLayout nextInChain$layout() { - return nextInChain$LAYOUT; - } - - private static final long nextInChain$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static final long nextInChain$offset() { - return nextInChain$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static MemorySegment nextInChain(MemorySegment struct) { - return struct.get(nextInChain$LAYOUT, nextInChain$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUChainedStruct *nextInChain - * } - */ - public static void nextInChain(MemorySegment struct, MemorySegment fieldValue) { - struct.set(nextInChain$LAYOUT, nextInChain$OFFSET, fieldValue); - } - - private static final AddressLayout module$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("module")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static final AddressLayout module$layout() { - return module$LAYOUT; - } - - private static final long module$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static final long module$offset() { - return module$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static MemorySegment module(MemorySegment struct) { - return struct.get(module$LAYOUT, module$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUShaderModule module - * } - */ - public static void module(MemorySegment struct, MemorySegment fieldValue) { - struct.set(module$LAYOUT, module$OFFSET, fieldValue); - } - - private static final AddressLayout entryPoint$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("entryPoint")); - - /** - * Layout for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static final AddressLayout entryPoint$layout() { - return entryPoint$LAYOUT; - } - - private static final long entryPoint$OFFSET = 16; - - /** - * Offset for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static final long entryPoint$offset() { - return entryPoint$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static MemorySegment entryPoint(MemorySegment struct) { - return struct.get(entryPoint$LAYOUT, entryPoint$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const char *entryPoint - * } - */ - public static void entryPoint(MemorySegment struct, MemorySegment fieldValue) { - struct.set(entryPoint$LAYOUT, entryPoint$OFFSET, fieldValue); - } - - private static final OfLong constantCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("constantCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static final OfLong constantCount$layout() { - return constantCount$LAYOUT; - } - - private static final long constantCount$OFFSET = 24; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static final long constantCount$offset() { - return constantCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static long constantCount(MemorySegment struct) { - return struct.get(constantCount$LAYOUT, constantCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t constantCount - * } - */ - public static void constantCount(MemorySegment struct, long fieldValue) { - struct.set(constantCount$LAYOUT, constantCount$OFFSET, fieldValue); - } - - private static final AddressLayout constants$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("constants")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static final AddressLayout constants$layout() { - return constants$LAYOUT; - } - - private static final long constants$OFFSET = 32; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static final long constants$offset() { - return constants$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static MemorySegment constants(MemorySegment struct) { - return struct.get(constants$LAYOUT, constants$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUConstantEntry *constants - * } - */ - public static void constants(MemorySegment struct, MemorySegment fieldValue) { - struct.set(constants$LAYOUT, constants$OFFSET, fieldValue); - } - - private static final OfLong bufferCount$LAYOUT = (OfLong)$LAYOUT.select(groupElement("bufferCount")); - - /** - * Layout for field: - * {@snippet lang=c : - * size_t bufferCount - * } - */ - public static final OfLong bufferCount$layout() { - return bufferCount$LAYOUT; - } - - private static final long bufferCount$OFFSET = 40; - - /** - * Offset for field: - * {@snippet lang=c : - * size_t bufferCount - * } - */ - public static final long bufferCount$offset() { - return bufferCount$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * size_t bufferCount - * } - */ - public static long bufferCount(MemorySegment struct) { - return struct.get(bufferCount$LAYOUT, bufferCount$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * size_t bufferCount - * } - */ - public static void bufferCount(MemorySegment struct, long fieldValue) { - struct.set(bufferCount$LAYOUT, bufferCount$OFFSET, fieldValue); - } - - private static final AddressLayout buffers$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("buffers")); - - /** - * Layout for field: - * {@snippet lang=c : - * const WGPUVertexBufferLayout *buffers - * } - */ - public static final AddressLayout buffers$layout() { - return buffers$LAYOUT; - } - - private static final long buffers$OFFSET = 48; - - /** - * Offset for field: - * {@snippet lang=c : - * const WGPUVertexBufferLayout *buffers - * } - */ - public static final long buffers$offset() { - return buffers$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * const WGPUVertexBufferLayout *buffers - * } - */ - public static MemorySegment buffers(MemorySegment struct) { - return struct.get(buffers$LAYOUT, buffers$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * const WGPUVertexBufferLayout *buffers - * } - */ - public static void buffers(MemorySegment struct, MemorySegment fieldValue) { - struct.set(buffers$LAYOUT, buffers$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUWrappedSubmissionIndex.java b/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUWrappedSubmissionIndex.java deleted file mode 100644 index ed45aa376..000000000 --- a/wgpu-ffm/src/main/java/com/littlekt/wgpu/WGPUWrappedSubmissionIndex.java +++ /dev/null @@ -1,173 +0,0 @@ -// Generated by jextract - -package com.littlekt.wgpu; - -import java.lang.invoke.*; -import java.lang.foreign.*; -import java.nio.ByteOrder; -import java.util.*; -import java.util.function.*; -import java.util.stream.*; - -import static java.lang.foreign.ValueLayout.*; -import static java.lang.foreign.MemoryLayout.PathElement.*; - -/** - * {@snippet lang=c : - * struct WGPUWrappedSubmissionIndex { - * WGPUQueue queue; - * WGPUSubmissionIndex submissionIndex; - * } - * } - */ -public class WGPUWrappedSubmissionIndex { - - WGPUWrappedSubmissionIndex() { - // Should not be called directly - } - - private static final GroupLayout $LAYOUT = MemoryLayout.structLayout( - WGPU.C_POINTER.withName("queue"), - WGPU.C_LONG_LONG.withName("submissionIndex") - ).withName("WGPUWrappedSubmissionIndex"); - - /** - * The layout of this struct - */ - public static final GroupLayout layout() { - return $LAYOUT; - } - - private static final AddressLayout queue$LAYOUT = (AddressLayout)$LAYOUT.select(groupElement("queue")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUQueue queue - * } - */ - public static final AddressLayout queue$layout() { - return queue$LAYOUT; - } - - private static final long queue$OFFSET = 0; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUQueue queue - * } - */ - public static final long queue$offset() { - return queue$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUQueue queue - * } - */ - public static MemorySegment queue(MemorySegment struct) { - return struct.get(queue$LAYOUT, queue$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUQueue queue - * } - */ - public static void queue(MemorySegment struct, MemorySegment fieldValue) { - struct.set(queue$LAYOUT, queue$OFFSET, fieldValue); - } - - private static final OfLong submissionIndex$LAYOUT = (OfLong)$LAYOUT.select(groupElement("submissionIndex")); - - /** - * Layout for field: - * {@snippet lang=c : - * WGPUSubmissionIndex submissionIndex - * } - */ - public static final OfLong submissionIndex$layout() { - return submissionIndex$LAYOUT; - } - - private static final long submissionIndex$OFFSET = 8; - - /** - * Offset for field: - * {@snippet lang=c : - * WGPUSubmissionIndex submissionIndex - * } - */ - public static final long submissionIndex$offset() { - return submissionIndex$OFFSET; - } - - /** - * Getter for field: - * {@snippet lang=c : - * WGPUSubmissionIndex submissionIndex - * } - */ - public static long submissionIndex(MemorySegment struct) { - return struct.get(submissionIndex$LAYOUT, submissionIndex$OFFSET); - } - - /** - * Setter for field: - * {@snippet lang=c : - * WGPUSubmissionIndex submissionIndex - * } - */ - public static void submissionIndex(MemorySegment struct, long fieldValue) { - struct.set(submissionIndex$LAYOUT, submissionIndex$OFFSET, fieldValue); - } - - /** - * Obtains a slice of {@code arrayParam} which selects the array element at {@code index}. - * The returned segment has address {@code arrayParam.address() + index * layout().byteSize()} - */ - public static MemorySegment asSlice(MemorySegment array, long index) { - return array.asSlice(layout().byteSize() * index); - } - - /** - * The size (in bytes) of this struct - */ - public static long sizeof() { return layout().byteSize(); } - - /** - * Allocate a segment of size {@code layout().byteSize()} using {@code allocator} - */ - public static MemorySegment allocate(SegmentAllocator allocator) { - return allocator.allocate(layout()); - } - - /** - * Allocate an array of size {@code elementCount} using {@code allocator}. - * The returned segment has size {@code elementCount * layout().byteSize()}. - */ - public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator) { - return allocator.allocate(MemoryLayout.sequenceLayout(elementCount, layout())); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer cleanup) { - return reinterpret(addr, 1, arena, cleanup); - } - - /** - * Reinterprets {@code addr} using target {@code arena} and {@code cleanupAction} (if any). - * The returned segment has size {@code elementCount * layout().byteSize()} - */ - public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer cleanup) { - return addr.reinterpret(layout().byteSize() * elementCount, arena, cleanup); - } -} - diff --git a/wgpu-natives/build.gradle.kts b/wgpu-natives/build.gradle.kts deleted file mode 100644 index 9962ec5ed..000000000 --- a/wgpu-natives/build.gradle.kts +++ /dev/null @@ -1,79 +0,0 @@ -import de.undercouch.gradle.tasks.download.Download - -plugins { - alias(libs.plugins.kotlin.jvm) - alias(libs.plugins.download) - id("module.publication") -} - -tasks { - register("downloadWgpuNativeHeaders", Download::class) { - val webgpuHeadersSHA: String by rootProject.extra - val wgpuNativeVersion: String by rootProject.extra - val webgpuHeaderUrl = - "https://raw.githubusercontent.com/webgpu-native/webgpu-headers/$webgpuHeadersSHA/webgpu.h" - val wgpuHeaderUrl = - "https://raw.githubusercontent.com/gfx-rs/wgpu-native/v$wgpuNativeVersion/ffi/wgpu.h" - - onlyIfModified(true) - src(listOf(webgpuHeaderUrl, wgpuHeaderUrl)) - dest("${layout.buildDirectory.asFile.get().path}/wgpu_headers") - } - - register("installWgpuNativeHeaders", Copy::class) { - dependsOn("downloadWgpuNativeHeaders") - val buildDir = layout.buildDirectory.asFile.get().path - - from("$buildDir/wgpu_headers") { include("**.h") } - into("$projectDir/src/main/c") - } - - register("downloadWgpuNativeBinaries", Download::class) { - val wgpuNativeVersion: String by rootProject.extra - val baseUrl = "https://github.com/gfx-rs/wgpu-native/releases/download/v$wgpuNativeVersion" - onlyIfModified(true) - src( - listOf( - "$baseUrl/wgpu-windows-x86_64-release.zip", - "$baseUrl/wgpu-macos-x86_64-release.zip ", - "$baseUrl/wgpu-macos-aarch64-release.zip ", - "$baseUrl/wgpu-linux-x86_64-release.zip" - ) - ) - dest(layout.buildDirectory.asFile.get()) - } - - register("installWgpuNativeBinaries", Copy::class) { - dependsOn("downloadWgpuNativeBinaries") - val buildDir = layout.buildDirectory.asFile.get().path - - from(zipTree("$buildDir/wgpu-windows-x86_64-release.zip")) { include("**.dll") } - from(zipTree("$buildDir/wgpu-macos-x86_64-release.zip")) { include("**.dylib") } - from(zipTree("$buildDir/wgpu-macos-aarch64-release.zip")) { - include("**.dylib") - rename { it.replace(".dylib", "_aarch64.dylib") } - } - from(zipTree("$buildDir/wgpu-linux-x86_64-release.zip")) { include("**.so") } - - into("$projectDir/src/main/resources") - } - - register("downloadAndInstallWgpuNativeBinariesAndHeaders") { - dependsOn("installWgpuNativeHeaders") - dependsOn("installWgpuNativeBinaries") - } - - val compileJava by getting { dependsOn("downloadAndInstallWgpuNativeBinariesAndHeaders") } - - val processResources by getting { dependsOn("downloadAndInstallWgpuNativeBinariesAndHeaders") } -} - -kotlin { - dependencies { testImplementation(libs.kotlin.test) } - - tasks.test { useJUnitPlatform() } -} - -publishing { - publications { create("wgpu-natives") { from(components["java"]) } } -} diff --git a/wgpu-natives/src/main/c/webgpu.h b/wgpu-natives/src/main/c/webgpu.h deleted file mode 100644 index d25335135..000000000 --- a/wgpu-natives/src/main/c/webgpu.h +++ /dev/null @@ -1,1806 +0,0 @@ -// BSD 3-Clause License -// -// Copyright (c) 2019, "WebGPU native" developers -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// 1. Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// 2. Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following disclaimer in the documentation -// and/or other materials provided with the distribution. -// -// 3. Neither the name of the copyright holder nor the names of its -// contributors may be used to endorse or promote products derived from -// this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -#ifndef WEBGPU_H_ -#define WEBGPU_H_ - -#if defined(WGPU_SHARED_LIBRARY) -# if defined(_WIN32) -# if defined(WGPU_IMPLEMENTATION) -# define WGPU_EXPORT __declspec(dllexport) -# else -# define WGPU_EXPORT __declspec(dllimport) -# endif -# else // defined(_WIN32) -# if defined(WGPU_IMPLEMENTATION) -# define WGPU_EXPORT __attribute__((visibility("default"))) -# else -# define WGPU_EXPORT -# endif -# endif // defined(_WIN32) -#else // defined(WGPU_SHARED_LIBRARY) -# define WGPU_EXPORT -#endif // defined(WGPU_SHARED_LIBRARY) - -#if !defined(WGPU_OBJECT_ATTRIBUTE) -#define WGPU_OBJECT_ATTRIBUTE -#endif -#if !defined(WGPU_ENUM_ATTRIBUTE) -#define WGPU_ENUM_ATTRIBUTE -#endif -#if !defined(WGPU_STRUCTURE_ATTRIBUTE) -#define WGPU_STRUCTURE_ATTRIBUTE -#endif -#if !defined(WGPU_FUNCTION_ATTRIBUTE) -#define WGPU_FUNCTION_ATTRIBUTE -#endif -#if !defined(WGPU_NULLABLE) -#define WGPU_NULLABLE -#endif - -#include -#include - -#define WGPU_ARRAY_LAYER_COUNT_UNDEFINED (0xffffffffUL) -#define WGPU_COPY_STRIDE_UNDEFINED (0xffffffffUL) -#define WGPU_LIMIT_U32_UNDEFINED (0xffffffffUL) -#define WGPU_LIMIT_U64_UNDEFINED (0xffffffffffffffffULL) -#define WGPU_MIP_LEVEL_COUNT_UNDEFINED (0xffffffffUL) -#define WGPU_QUERY_SET_INDEX_UNDEFINED (0xffffffffUL) -#define WGPU_WHOLE_MAP_SIZE SIZE_MAX -#define WGPU_WHOLE_SIZE (0xffffffffffffffffULL) - -typedef uint32_t WGPUFlags; -typedef uint32_t WGPUBool; - -typedef struct WGPUAdapterImpl* WGPUAdapter WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUBindGroupImpl* WGPUBindGroup WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUBindGroupLayoutImpl* WGPUBindGroupLayout WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUBufferImpl* WGPUBuffer WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUCommandBufferImpl* WGPUCommandBuffer WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUCommandEncoderImpl* WGPUCommandEncoder WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUComputePassEncoderImpl* WGPUComputePassEncoder WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUComputePipelineImpl* WGPUComputePipeline WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUDeviceImpl* WGPUDevice WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUInstanceImpl* WGPUInstance WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUPipelineLayoutImpl* WGPUPipelineLayout WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUQuerySetImpl* WGPUQuerySet WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUQueueImpl* WGPUQueue WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPURenderBundleImpl* WGPURenderBundle WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPURenderBundleEncoderImpl* WGPURenderBundleEncoder WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPURenderPassEncoderImpl* WGPURenderPassEncoder WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPURenderPipelineImpl* WGPURenderPipeline WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUSamplerImpl* WGPUSampler WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUShaderModuleImpl* WGPUShaderModule WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUSurfaceImpl* WGPUSurface WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUTextureImpl* WGPUTexture WGPU_OBJECT_ATTRIBUTE; -typedef struct WGPUTextureViewImpl* WGPUTextureView WGPU_OBJECT_ATTRIBUTE; - -// Structure forward declarations -struct WGPUAdapterProperties; -struct WGPUBindGroupEntry; -struct WGPUBlendComponent; -struct WGPUBufferBindingLayout; -struct WGPUBufferDescriptor; -struct WGPUColor; -struct WGPUCommandBufferDescriptor; -struct WGPUCommandEncoderDescriptor; -struct WGPUCompilationMessage; -struct WGPUComputePassTimestampWrites; -struct WGPUConstantEntry; -struct WGPUExtent3D; -struct WGPUInstanceDescriptor; -struct WGPULimits; -struct WGPUMultisampleState; -struct WGPUOrigin3D; -struct WGPUPipelineLayoutDescriptor; -struct WGPUPrimitiveDepthClipControl; -struct WGPUPrimitiveState; -struct WGPUQuerySetDescriptor; -struct WGPUQueueDescriptor; -struct WGPURenderBundleDescriptor; -struct WGPURenderBundleEncoderDescriptor; -struct WGPURenderPassDepthStencilAttachment; -struct WGPURenderPassDescriptorMaxDrawCount; -struct WGPURenderPassTimestampWrites; -struct WGPURequestAdapterOptions; -struct WGPUSamplerBindingLayout; -struct WGPUSamplerDescriptor; -struct WGPUShaderModuleCompilationHint; -struct WGPUShaderModuleSPIRVDescriptor; -struct WGPUShaderModuleWGSLDescriptor; -struct WGPUStencilFaceState; -struct WGPUStorageTextureBindingLayout; -struct WGPUSurfaceCapabilities; -struct WGPUSurfaceConfiguration; -struct WGPUSurfaceDescriptor; -struct WGPUSurfaceDescriptorFromAndroidNativeWindow; -struct WGPUSurfaceDescriptorFromCanvasHTMLSelector; -struct WGPUSurfaceDescriptorFromMetalLayer; -struct WGPUSurfaceDescriptorFromWaylandSurface; -struct WGPUSurfaceDescriptorFromWindowsHWND; -struct WGPUSurfaceDescriptorFromXcbWindow; -struct WGPUSurfaceDescriptorFromXlibWindow; -struct WGPUSurfaceTexture; -struct WGPUTextureBindingLayout; -struct WGPUTextureDataLayout; -struct WGPUTextureViewDescriptor; -struct WGPUVertexAttribute; -struct WGPUBindGroupDescriptor; -struct WGPUBindGroupLayoutEntry; -struct WGPUBlendState; -struct WGPUCompilationInfo; -struct WGPUComputePassDescriptor; -struct WGPUDepthStencilState; -struct WGPUImageCopyBuffer; -struct WGPUImageCopyTexture; -struct WGPUProgrammableStageDescriptor; -struct WGPURenderPassColorAttachment; -struct WGPURequiredLimits; -struct WGPUShaderModuleDescriptor; -struct WGPUSupportedLimits; -struct WGPUTextureDescriptor; -struct WGPUVertexBufferLayout; -struct WGPUBindGroupLayoutDescriptor; -struct WGPUColorTargetState; -struct WGPUComputePipelineDescriptor; -struct WGPUDeviceDescriptor; -struct WGPURenderPassDescriptor; -struct WGPUVertexState; -struct WGPUFragmentState; -struct WGPURenderPipelineDescriptor; - -typedef enum WGPUAdapterType { - WGPUAdapterType_DiscreteGPU = 0x00000000, - WGPUAdapterType_IntegratedGPU = 0x00000001, - WGPUAdapterType_CPU = 0x00000002, - WGPUAdapterType_Unknown = 0x00000003, - WGPUAdapterType_Force32 = 0x7FFFFFFF -} WGPUAdapterType WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUAddressMode { - WGPUAddressMode_Repeat = 0x00000000, - WGPUAddressMode_MirrorRepeat = 0x00000001, - WGPUAddressMode_ClampToEdge = 0x00000002, - WGPUAddressMode_Force32 = 0x7FFFFFFF -} WGPUAddressMode WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUBackendType { - WGPUBackendType_Undefined = 0x00000000, - WGPUBackendType_Null = 0x00000001, - WGPUBackendType_WebGPU = 0x00000002, - WGPUBackendType_D3D11 = 0x00000003, - WGPUBackendType_D3D12 = 0x00000004, - WGPUBackendType_Metal = 0x00000005, - WGPUBackendType_Vulkan = 0x00000006, - WGPUBackendType_OpenGL = 0x00000007, - WGPUBackendType_OpenGLES = 0x00000008, - WGPUBackendType_Force32 = 0x7FFFFFFF -} WGPUBackendType WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUBlendFactor { - WGPUBlendFactor_Zero = 0x00000000, - WGPUBlendFactor_One = 0x00000001, - WGPUBlendFactor_Src = 0x00000002, - WGPUBlendFactor_OneMinusSrc = 0x00000003, - WGPUBlendFactor_SrcAlpha = 0x00000004, - WGPUBlendFactor_OneMinusSrcAlpha = 0x00000005, - WGPUBlendFactor_Dst = 0x00000006, - WGPUBlendFactor_OneMinusDst = 0x00000007, - WGPUBlendFactor_DstAlpha = 0x00000008, - WGPUBlendFactor_OneMinusDstAlpha = 0x00000009, - WGPUBlendFactor_SrcAlphaSaturated = 0x0000000A, - WGPUBlendFactor_Constant = 0x0000000B, - WGPUBlendFactor_OneMinusConstant = 0x0000000C, - WGPUBlendFactor_Force32 = 0x7FFFFFFF -} WGPUBlendFactor WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUBlendOperation { - WGPUBlendOperation_Add = 0x00000000, - WGPUBlendOperation_Subtract = 0x00000001, - WGPUBlendOperation_ReverseSubtract = 0x00000002, - WGPUBlendOperation_Min = 0x00000003, - WGPUBlendOperation_Max = 0x00000004, - WGPUBlendOperation_Force32 = 0x7FFFFFFF -} WGPUBlendOperation WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUBufferBindingType { - WGPUBufferBindingType_Undefined = 0x00000000, - WGPUBufferBindingType_Uniform = 0x00000001, - WGPUBufferBindingType_Storage = 0x00000002, - WGPUBufferBindingType_ReadOnlyStorage = 0x00000003, - WGPUBufferBindingType_Force32 = 0x7FFFFFFF -} WGPUBufferBindingType WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUBufferMapAsyncStatus { - WGPUBufferMapAsyncStatus_Success = 0x00000000, - WGPUBufferMapAsyncStatus_ValidationError = 0x00000001, - WGPUBufferMapAsyncStatus_Unknown = 0x00000002, - WGPUBufferMapAsyncStatus_DeviceLost = 0x00000003, - WGPUBufferMapAsyncStatus_DestroyedBeforeCallback = 0x00000004, - WGPUBufferMapAsyncStatus_UnmappedBeforeCallback = 0x00000005, - WGPUBufferMapAsyncStatus_MappingAlreadyPending = 0x00000006, - WGPUBufferMapAsyncStatus_OffsetOutOfRange = 0x00000007, - WGPUBufferMapAsyncStatus_SizeOutOfRange = 0x00000008, - WGPUBufferMapAsyncStatus_Force32 = 0x7FFFFFFF -} WGPUBufferMapAsyncStatus WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUBufferMapState { - WGPUBufferMapState_Unmapped = 0x00000000, - WGPUBufferMapState_Pending = 0x00000001, - WGPUBufferMapState_Mapped = 0x00000002, - WGPUBufferMapState_Force32 = 0x7FFFFFFF -} WGPUBufferMapState WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUCompareFunction { - WGPUCompareFunction_Undefined = 0x00000000, - WGPUCompareFunction_Never = 0x00000001, - WGPUCompareFunction_Less = 0x00000002, - WGPUCompareFunction_LessEqual = 0x00000003, - WGPUCompareFunction_Greater = 0x00000004, - WGPUCompareFunction_GreaterEqual = 0x00000005, - WGPUCompareFunction_Equal = 0x00000006, - WGPUCompareFunction_NotEqual = 0x00000007, - WGPUCompareFunction_Always = 0x00000008, - WGPUCompareFunction_Force32 = 0x7FFFFFFF -} WGPUCompareFunction WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUCompilationInfoRequestStatus { - WGPUCompilationInfoRequestStatus_Success = 0x00000000, - WGPUCompilationInfoRequestStatus_Error = 0x00000001, - WGPUCompilationInfoRequestStatus_DeviceLost = 0x00000002, - WGPUCompilationInfoRequestStatus_Unknown = 0x00000003, - WGPUCompilationInfoRequestStatus_Force32 = 0x7FFFFFFF -} WGPUCompilationInfoRequestStatus WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUCompilationMessageType { - WGPUCompilationMessageType_Error = 0x00000000, - WGPUCompilationMessageType_Warning = 0x00000001, - WGPUCompilationMessageType_Info = 0x00000002, - WGPUCompilationMessageType_Force32 = 0x7FFFFFFF -} WGPUCompilationMessageType WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUCompositeAlphaMode { - WGPUCompositeAlphaMode_Auto = 0x00000000, - WGPUCompositeAlphaMode_Opaque = 0x00000001, - WGPUCompositeAlphaMode_Premultiplied = 0x00000002, - WGPUCompositeAlphaMode_Unpremultiplied = 0x00000003, - WGPUCompositeAlphaMode_Inherit = 0x00000004, - WGPUCompositeAlphaMode_Force32 = 0x7FFFFFFF -} WGPUCompositeAlphaMode WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUCreatePipelineAsyncStatus { - WGPUCreatePipelineAsyncStatus_Success = 0x00000000, - WGPUCreatePipelineAsyncStatus_ValidationError = 0x00000001, - WGPUCreatePipelineAsyncStatus_InternalError = 0x00000002, - WGPUCreatePipelineAsyncStatus_DeviceLost = 0x00000003, - WGPUCreatePipelineAsyncStatus_DeviceDestroyed = 0x00000004, - WGPUCreatePipelineAsyncStatus_Unknown = 0x00000005, - WGPUCreatePipelineAsyncStatus_Force32 = 0x7FFFFFFF -} WGPUCreatePipelineAsyncStatus WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUCullMode { - WGPUCullMode_None = 0x00000000, - WGPUCullMode_Front = 0x00000001, - WGPUCullMode_Back = 0x00000002, - WGPUCullMode_Force32 = 0x7FFFFFFF -} WGPUCullMode WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUDeviceLostReason { - WGPUDeviceLostReason_Undefined = 0x00000000, - WGPUDeviceLostReason_Destroyed = 0x00000001, - WGPUDeviceLostReason_Force32 = 0x7FFFFFFF -} WGPUDeviceLostReason WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUErrorFilter { - WGPUErrorFilter_Validation = 0x00000000, - WGPUErrorFilter_OutOfMemory = 0x00000001, - WGPUErrorFilter_Internal = 0x00000002, - WGPUErrorFilter_Force32 = 0x7FFFFFFF -} WGPUErrorFilter WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUErrorType { - WGPUErrorType_NoError = 0x00000000, - WGPUErrorType_Validation = 0x00000001, - WGPUErrorType_OutOfMemory = 0x00000002, - WGPUErrorType_Internal = 0x00000003, - WGPUErrorType_Unknown = 0x00000004, - WGPUErrorType_DeviceLost = 0x00000005, - WGPUErrorType_Force32 = 0x7FFFFFFF -} WGPUErrorType WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUFeatureName { - WGPUFeatureName_Undefined = 0x00000000, - WGPUFeatureName_DepthClipControl = 0x00000001, - WGPUFeatureName_Depth32FloatStencil8 = 0x00000002, - WGPUFeatureName_TimestampQuery = 0x00000003, - WGPUFeatureName_TextureCompressionBC = 0x00000004, - WGPUFeatureName_TextureCompressionETC2 = 0x00000005, - WGPUFeatureName_TextureCompressionASTC = 0x00000006, - WGPUFeatureName_IndirectFirstInstance = 0x00000007, - WGPUFeatureName_ShaderF16 = 0x00000008, - WGPUFeatureName_RG11B10UfloatRenderable = 0x00000009, - WGPUFeatureName_BGRA8UnormStorage = 0x0000000A, - WGPUFeatureName_Float32Filterable = 0x0000000B, - WGPUFeatureName_Force32 = 0x7FFFFFFF -} WGPUFeatureName WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUFilterMode { - WGPUFilterMode_Nearest = 0x00000000, - WGPUFilterMode_Linear = 0x00000001, - WGPUFilterMode_Force32 = 0x7FFFFFFF -} WGPUFilterMode WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUFrontFace { - WGPUFrontFace_CCW = 0x00000000, - WGPUFrontFace_CW = 0x00000001, - WGPUFrontFace_Force32 = 0x7FFFFFFF -} WGPUFrontFace WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUIndexFormat { - WGPUIndexFormat_Undefined = 0x00000000, - WGPUIndexFormat_Uint16 = 0x00000001, - WGPUIndexFormat_Uint32 = 0x00000002, - WGPUIndexFormat_Force32 = 0x7FFFFFFF -} WGPUIndexFormat WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPULoadOp { - WGPULoadOp_Undefined = 0x00000000, - WGPULoadOp_Clear = 0x00000001, - WGPULoadOp_Load = 0x00000002, - WGPULoadOp_Force32 = 0x7FFFFFFF -} WGPULoadOp WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUMipmapFilterMode { - WGPUMipmapFilterMode_Nearest = 0x00000000, - WGPUMipmapFilterMode_Linear = 0x00000001, - WGPUMipmapFilterMode_Force32 = 0x7FFFFFFF -} WGPUMipmapFilterMode WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUPowerPreference { - WGPUPowerPreference_Undefined = 0x00000000, - WGPUPowerPreference_LowPower = 0x00000001, - WGPUPowerPreference_HighPerformance = 0x00000002, - WGPUPowerPreference_Force32 = 0x7FFFFFFF -} WGPUPowerPreference WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUPresentMode { - WGPUPresentMode_Fifo = 0x00000000, - WGPUPresentMode_FifoRelaxed = 0x00000001, - WGPUPresentMode_Immediate = 0x00000002, - WGPUPresentMode_Mailbox = 0x00000003, - WGPUPresentMode_Force32 = 0x7FFFFFFF -} WGPUPresentMode WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUPrimitiveTopology { - WGPUPrimitiveTopology_PointList = 0x00000000, - WGPUPrimitiveTopology_LineList = 0x00000001, - WGPUPrimitiveTopology_LineStrip = 0x00000002, - WGPUPrimitiveTopology_TriangleList = 0x00000003, - WGPUPrimitiveTopology_TriangleStrip = 0x00000004, - WGPUPrimitiveTopology_Force32 = 0x7FFFFFFF -} WGPUPrimitiveTopology WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUQueryType { - WGPUQueryType_Occlusion = 0x00000000, - WGPUQueryType_Timestamp = 0x00000001, - WGPUQueryType_Force32 = 0x7FFFFFFF -} WGPUQueryType WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUQueueWorkDoneStatus { - WGPUQueueWorkDoneStatus_Success = 0x00000000, - WGPUQueueWorkDoneStatus_Error = 0x00000001, - WGPUQueueWorkDoneStatus_Unknown = 0x00000002, - WGPUQueueWorkDoneStatus_DeviceLost = 0x00000003, - WGPUQueueWorkDoneStatus_Force32 = 0x7FFFFFFF -} WGPUQueueWorkDoneStatus WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPURequestAdapterStatus { - WGPURequestAdapterStatus_Success = 0x00000000, - WGPURequestAdapterStatus_Unavailable = 0x00000001, - WGPURequestAdapterStatus_Error = 0x00000002, - WGPURequestAdapterStatus_Unknown = 0x00000003, - WGPURequestAdapterStatus_Force32 = 0x7FFFFFFF -} WGPURequestAdapterStatus WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPURequestDeviceStatus { - WGPURequestDeviceStatus_Success = 0x00000000, - WGPURequestDeviceStatus_Error = 0x00000001, - WGPURequestDeviceStatus_Unknown = 0x00000002, - WGPURequestDeviceStatus_Force32 = 0x7FFFFFFF -} WGPURequestDeviceStatus WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUSType { - WGPUSType_Invalid = 0x00000000, - WGPUSType_SurfaceDescriptorFromMetalLayer = 0x00000001, - WGPUSType_SurfaceDescriptorFromWindowsHWND = 0x00000002, - WGPUSType_SurfaceDescriptorFromXlibWindow = 0x00000003, - WGPUSType_SurfaceDescriptorFromCanvasHTMLSelector = 0x00000004, - WGPUSType_ShaderModuleSPIRVDescriptor = 0x00000005, - WGPUSType_ShaderModuleWGSLDescriptor = 0x00000006, - WGPUSType_PrimitiveDepthClipControl = 0x00000007, - WGPUSType_SurfaceDescriptorFromWaylandSurface = 0x00000008, - WGPUSType_SurfaceDescriptorFromAndroidNativeWindow = 0x00000009, - WGPUSType_SurfaceDescriptorFromXcbWindow = 0x0000000A, - WGPUSType_RenderPassDescriptorMaxDrawCount = 0x0000000F, - WGPUSType_Force32 = 0x7FFFFFFF -} WGPUSType WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUSamplerBindingType { - WGPUSamplerBindingType_Undefined = 0x00000000, - WGPUSamplerBindingType_Filtering = 0x00000001, - WGPUSamplerBindingType_NonFiltering = 0x00000002, - WGPUSamplerBindingType_Comparison = 0x00000003, - WGPUSamplerBindingType_Force32 = 0x7FFFFFFF -} WGPUSamplerBindingType WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUStencilOperation { - WGPUStencilOperation_Keep = 0x00000000, - WGPUStencilOperation_Zero = 0x00000001, - WGPUStencilOperation_Replace = 0x00000002, - WGPUStencilOperation_Invert = 0x00000003, - WGPUStencilOperation_IncrementClamp = 0x00000004, - WGPUStencilOperation_DecrementClamp = 0x00000005, - WGPUStencilOperation_IncrementWrap = 0x00000006, - WGPUStencilOperation_DecrementWrap = 0x00000007, - WGPUStencilOperation_Force32 = 0x7FFFFFFF -} WGPUStencilOperation WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUStorageTextureAccess { - WGPUStorageTextureAccess_Undefined = 0x00000000, - WGPUStorageTextureAccess_WriteOnly = 0x00000001, - WGPUStorageTextureAccess_ReadOnly = 0x00000002, - WGPUStorageTextureAccess_ReadWrite = 0x00000003, - WGPUStorageTextureAccess_Force32 = 0x7FFFFFFF -} WGPUStorageTextureAccess WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUStoreOp { - WGPUStoreOp_Undefined = 0x00000000, - WGPUStoreOp_Store = 0x00000001, - WGPUStoreOp_Discard = 0x00000002, - WGPUStoreOp_Force32 = 0x7FFFFFFF -} WGPUStoreOp WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUSurfaceGetCurrentTextureStatus { - WGPUSurfaceGetCurrentTextureStatus_Success = 0x00000000, - WGPUSurfaceGetCurrentTextureStatus_Timeout = 0x00000001, - WGPUSurfaceGetCurrentTextureStatus_Outdated = 0x00000002, - WGPUSurfaceGetCurrentTextureStatus_Lost = 0x00000003, - WGPUSurfaceGetCurrentTextureStatus_OutOfMemory = 0x00000004, - WGPUSurfaceGetCurrentTextureStatus_DeviceLost = 0x00000005, - WGPUSurfaceGetCurrentTextureStatus_Force32 = 0x7FFFFFFF -} WGPUSurfaceGetCurrentTextureStatus WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUTextureAspect { - WGPUTextureAspect_All = 0x00000000, - WGPUTextureAspect_StencilOnly = 0x00000001, - WGPUTextureAspect_DepthOnly = 0x00000002, - WGPUTextureAspect_Force32 = 0x7FFFFFFF -} WGPUTextureAspect WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUTextureDimension { - WGPUTextureDimension_1D = 0x00000000, - WGPUTextureDimension_2D = 0x00000001, - WGPUTextureDimension_3D = 0x00000002, - WGPUTextureDimension_Force32 = 0x7FFFFFFF -} WGPUTextureDimension WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUTextureFormat { - WGPUTextureFormat_Undefined = 0x00000000, - WGPUTextureFormat_R8Unorm = 0x00000001, - WGPUTextureFormat_R8Snorm = 0x00000002, - WGPUTextureFormat_R8Uint = 0x00000003, - WGPUTextureFormat_R8Sint = 0x00000004, - WGPUTextureFormat_R16Uint = 0x00000005, - WGPUTextureFormat_R16Sint = 0x00000006, - WGPUTextureFormat_R16Float = 0x00000007, - WGPUTextureFormat_RG8Unorm = 0x00000008, - WGPUTextureFormat_RG8Snorm = 0x00000009, - WGPUTextureFormat_RG8Uint = 0x0000000A, - WGPUTextureFormat_RG8Sint = 0x0000000B, - WGPUTextureFormat_R32Float = 0x0000000C, - WGPUTextureFormat_R32Uint = 0x0000000D, - WGPUTextureFormat_R32Sint = 0x0000000E, - WGPUTextureFormat_RG16Uint = 0x0000000F, - WGPUTextureFormat_RG16Sint = 0x00000010, - WGPUTextureFormat_RG16Float = 0x00000011, - WGPUTextureFormat_RGBA8Unorm = 0x00000012, - WGPUTextureFormat_RGBA8UnormSrgb = 0x00000013, - WGPUTextureFormat_RGBA8Snorm = 0x00000014, - WGPUTextureFormat_RGBA8Uint = 0x00000015, - WGPUTextureFormat_RGBA8Sint = 0x00000016, - WGPUTextureFormat_BGRA8Unorm = 0x00000017, - WGPUTextureFormat_BGRA8UnormSrgb = 0x00000018, - WGPUTextureFormat_RGB10A2Uint = 0x00000019, - WGPUTextureFormat_RGB10A2Unorm = 0x0000001A, - WGPUTextureFormat_RG11B10Ufloat = 0x0000001B, - WGPUTextureFormat_RGB9E5Ufloat = 0x0000001C, - WGPUTextureFormat_RG32Float = 0x0000001D, - WGPUTextureFormat_RG32Uint = 0x0000001E, - WGPUTextureFormat_RG32Sint = 0x0000001F, - WGPUTextureFormat_RGBA16Uint = 0x00000020, - WGPUTextureFormat_RGBA16Sint = 0x00000021, - WGPUTextureFormat_RGBA16Float = 0x00000022, - WGPUTextureFormat_RGBA32Float = 0x00000023, - WGPUTextureFormat_RGBA32Uint = 0x00000024, - WGPUTextureFormat_RGBA32Sint = 0x00000025, - WGPUTextureFormat_Stencil8 = 0x00000026, - WGPUTextureFormat_Depth16Unorm = 0x00000027, - WGPUTextureFormat_Depth24Plus = 0x00000028, - WGPUTextureFormat_Depth24PlusStencil8 = 0x00000029, - WGPUTextureFormat_Depth32Float = 0x0000002A, - WGPUTextureFormat_Depth32FloatStencil8 = 0x0000002B, - WGPUTextureFormat_BC1RGBAUnorm = 0x0000002C, - WGPUTextureFormat_BC1RGBAUnormSrgb = 0x0000002D, - WGPUTextureFormat_BC2RGBAUnorm = 0x0000002E, - WGPUTextureFormat_BC2RGBAUnormSrgb = 0x0000002F, - WGPUTextureFormat_BC3RGBAUnorm = 0x00000030, - WGPUTextureFormat_BC3RGBAUnormSrgb = 0x00000031, - WGPUTextureFormat_BC4RUnorm = 0x00000032, - WGPUTextureFormat_BC4RSnorm = 0x00000033, - WGPUTextureFormat_BC5RGUnorm = 0x00000034, - WGPUTextureFormat_BC5RGSnorm = 0x00000035, - WGPUTextureFormat_BC6HRGBUfloat = 0x00000036, - WGPUTextureFormat_BC6HRGBFloat = 0x00000037, - WGPUTextureFormat_BC7RGBAUnorm = 0x00000038, - WGPUTextureFormat_BC7RGBAUnormSrgb = 0x00000039, - WGPUTextureFormat_ETC2RGB8Unorm = 0x0000003A, - WGPUTextureFormat_ETC2RGB8UnormSrgb = 0x0000003B, - WGPUTextureFormat_ETC2RGB8A1Unorm = 0x0000003C, - WGPUTextureFormat_ETC2RGB8A1UnormSrgb = 0x0000003D, - WGPUTextureFormat_ETC2RGBA8Unorm = 0x0000003E, - WGPUTextureFormat_ETC2RGBA8UnormSrgb = 0x0000003F, - WGPUTextureFormat_EACR11Unorm = 0x00000040, - WGPUTextureFormat_EACR11Snorm = 0x00000041, - WGPUTextureFormat_EACRG11Unorm = 0x00000042, - WGPUTextureFormat_EACRG11Snorm = 0x00000043, - WGPUTextureFormat_ASTC4x4Unorm = 0x00000044, - WGPUTextureFormat_ASTC4x4UnormSrgb = 0x00000045, - WGPUTextureFormat_ASTC5x4Unorm = 0x00000046, - WGPUTextureFormat_ASTC5x4UnormSrgb = 0x00000047, - WGPUTextureFormat_ASTC5x5Unorm = 0x00000048, - WGPUTextureFormat_ASTC5x5UnormSrgb = 0x00000049, - WGPUTextureFormat_ASTC6x5Unorm = 0x0000004A, - WGPUTextureFormat_ASTC6x5UnormSrgb = 0x0000004B, - WGPUTextureFormat_ASTC6x6Unorm = 0x0000004C, - WGPUTextureFormat_ASTC6x6UnormSrgb = 0x0000004D, - WGPUTextureFormat_ASTC8x5Unorm = 0x0000004E, - WGPUTextureFormat_ASTC8x5UnormSrgb = 0x0000004F, - WGPUTextureFormat_ASTC8x6Unorm = 0x00000050, - WGPUTextureFormat_ASTC8x6UnormSrgb = 0x00000051, - WGPUTextureFormat_ASTC8x8Unorm = 0x00000052, - WGPUTextureFormat_ASTC8x8UnormSrgb = 0x00000053, - WGPUTextureFormat_ASTC10x5Unorm = 0x00000054, - WGPUTextureFormat_ASTC10x5UnormSrgb = 0x00000055, - WGPUTextureFormat_ASTC10x6Unorm = 0x00000056, - WGPUTextureFormat_ASTC10x6UnormSrgb = 0x00000057, - WGPUTextureFormat_ASTC10x8Unorm = 0x00000058, - WGPUTextureFormat_ASTC10x8UnormSrgb = 0x00000059, - WGPUTextureFormat_ASTC10x10Unorm = 0x0000005A, - WGPUTextureFormat_ASTC10x10UnormSrgb = 0x0000005B, - WGPUTextureFormat_ASTC12x10Unorm = 0x0000005C, - WGPUTextureFormat_ASTC12x10UnormSrgb = 0x0000005D, - WGPUTextureFormat_ASTC12x12Unorm = 0x0000005E, - WGPUTextureFormat_ASTC12x12UnormSrgb = 0x0000005F, - WGPUTextureFormat_Force32 = 0x7FFFFFFF -} WGPUTextureFormat WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUTextureSampleType { - WGPUTextureSampleType_Undefined = 0x00000000, - WGPUTextureSampleType_Float = 0x00000001, - WGPUTextureSampleType_UnfilterableFloat = 0x00000002, - WGPUTextureSampleType_Depth = 0x00000003, - WGPUTextureSampleType_Sint = 0x00000004, - WGPUTextureSampleType_Uint = 0x00000005, - WGPUTextureSampleType_Force32 = 0x7FFFFFFF -} WGPUTextureSampleType WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUTextureViewDimension { - WGPUTextureViewDimension_Undefined = 0x00000000, - WGPUTextureViewDimension_1D = 0x00000001, - WGPUTextureViewDimension_2D = 0x00000002, - WGPUTextureViewDimension_2DArray = 0x00000003, - WGPUTextureViewDimension_Cube = 0x00000004, - WGPUTextureViewDimension_CubeArray = 0x00000005, - WGPUTextureViewDimension_3D = 0x00000006, - WGPUTextureViewDimension_Force32 = 0x7FFFFFFF -} WGPUTextureViewDimension WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUVertexFormat { - WGPUVertexFormat_Undefined = 0x00000000, - WGPUVertexFormat_Uint8x2 = 0x00000001, - WGPUVertexFormat_Uint8x4 = 0x00000002, - WGPUVertexFormat_Sint8x2 = 0x00000003, - WGPUVertexFormat_Sint8x4 = 0x00000004, - WGPUVertexFormat_Unorm8x2 = 0x00000005, - WGPUVertexFormat_Unorm8x4 = 0x00000006, - WGPUVertexFormat_Snorm8x2 = 0x00000007, - WGPUVertexFormat_Snorm8x4 = 0x00000008, - WGPUVertexFormat_Uint16x2 = 0x00000009, - WGPUVertexFormat_Uint16x4 = 0x0000000A, - WGPUVertexFormat_Sint16x2 = 0x0000000B, - WGPUVertexFormat_Sint16x4 = 0x0000000C, - WGPUVertexFormat_Unorm16x2 = 0x0000000D, - WGPUVertexFormat_Unorm16x4 = 0x0000000E, - WGPUVertexFormat_Snorm16x2 = 0x0000000F, - WGPUVertexFormat_Snorm16x4 = 0x00000010, - WGPUVertexFormat_Float16x2 = 0x00000011, - WGPUVertexFormat_Float16x4 = 0x00000012, - WGPUVertexFormat_Float32 = 0x00000013, - WGPUVertexFormat_Float32x2 = 0x00000014, - WGPUVertexFormat_Float32x3 = 0x00000015, - WGPUVertexFormat_Float32x4 = 0x00000016, - WGPUVertexFormat_Uint32 = 0x00000017, - WGPUVertexFormat_Uint32x2 = 0x00000018, - WGPUVertexFormat_Uint32x3 = 0x00000019, - WGPUVertexFormat_Uint32x4 = 0x0000001A, - WGPUVertexFormat_Sint32 = 0x0000001B, - WGPUVertexFormat_Sint32x2 = 0x0000001C, - WGPUVertexFormat_Sint32x3 = 0x0000001D, - WGPUVertexFormat_Sint32x4 = 0x0000001E, - WGPUVertexFormat_Force32 = 0x7FFFFFFF -} WGPUVertexFormat WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUVertexStepMode { - WGPUVertexStepMode_Vertex = 0x00000000, - WGPUVertexStepMode_Instance = 0x00000001, - WGPUVertexStepMode_VertexBufferNotUsed = 0x00000002, - WGPUVertexStepMode_Force32 = 0x7FFFFFFF -} WGPUVertexStepMode WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUBufferUsage { - WGPUBufferUsage_None = 0x00000000, - WGPUBufferUsage_MapRead = 0x00000001, - WGPUBufferUsage_MapWrite = 0x00000002, - WGPUBufferUsage_CopySrc = 0x00000004, - WGPUBufferUsage_CopyDst = 0x00000008, - WGPUBufferUsage_Index = 0x00000010, - WGPUBufferUsage_Vertex = 0x00000020, - WGPUBufferUsage_Uniform = 0x00000040, - WGPUBufferUsage_Storage = 0x00000080, - WGPUBufferUsage_Indirect = 0x00000100, - WGPUBufferUsage_QueryResolve = 0x00000200, - WGPUBufferUsage_Force32 = 0x7FFFFFFF -} WGPUBufferUsage WGPU_ENUM_ATTRIBUTE; -typedef WGPUFlags WGPUBufferUsageFlags WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUColorWriteMask { - WGPUColorWriteMask_None = 0x00000000, - WGPUColorWriteMask_Red = 0x00000001, - WGPUColorWriteMask_Green = 0x00000002, - WGPUColorWriteMask_Blue = 0x00000004, - WGPUColorWriteMask_Alpha = 0x00000008, - WGPUColorWriteMask_All = 0x0000000F, - WGPUColorWriteMask_Force32 = 0x7FFFFFFF -} WGPUColorWriteMask WGPU_ENUM_ATTRIBUTE; -typedef WGPUFlags WGPUColorWriteMaskFlags WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUMapMode { - WGPUMapMode_None = 0x00000000, - WGPUMapMode_Read = 0x00000001, - WGPUMapMode_Write = 0x00000002, - WGPUMapMode_Force32 = 0x7FFFFFFF -} WGPUMapMode WGPU_ENUM_ATTRIBUTE; -typedef WGPUFlags WGPUMapModeFlags WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUShaderStage { - WGPUShaderStage_None = 0x00000000, - WGPUShaderStage_Vertex = 0x00000001, - WGPUShaderStage_Fragment = 0x00000002, - WGPUShaderStage_Compute = 0x00000004, - WGPUShaderStage_Force32 = 0x7FFFFFFF -} WGPUShaderStage WGPU_ENUM_ATTRIBUTE; -typedef WGPUFlags WGPUShaderStageFlags WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUTextureUsage { - WGPUTextureUsage_None = 0x00000000, - WGPUTextureUsage_CopySrc = 0x00000001, - WGPUTextureUsage_CopyDst = 0x00000002, - WGPUTextureUsage_TextureBinding = 0x00000004, - WGPUTextureUsage_StorageBinding = 0x00000008, - WGPUTextureUsage_RenderAttachment = 0x00000010, - WGPUTextureUsage_Force32 = 0x7FFFFFFF -} WGPUTextureUsage WGPU_ENUM_ATTRIBUTE; -typedef WGPUFlags WGPUTextureUsageFlags WGPU_ENUM_ATTRIBUTE; - -typedef void (*WGPUBufferMapCallback)(WGPUBufferMapAsyncStatus status, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUCompilationInfoCallback)(WGPUCompilationInfoRequestStatus status, struct WGPUCompilationInfo const * compilationInfo, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUCreateComputePipelineAsyncCallback)(WGPUCreatePipelineAsyncStatus status, WGPUComputePipeline pipeline, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUCreateRenderPipelineAsyncCallback)(WGPUCreatePipelineAsyncStatus status, WGPURenderPipeline pipeline, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUDeviceLostCallback)(WGPUDeviceLostReason reason, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUErrorCallback)(WGPUErrorType type, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProc)(void) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUQueueWorkDoneCallback)(WGPUQueueWorkDoneStatus status, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPURequestAdapterCallback)(WGPURequestAdapterStatus status, WGPUAdapter adapter, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPURequestDeviceCallback)(WGPURequestDeviceStatus status, WGPUDevice device, char const * message, void * userdata) WGPU_FUNCTION_ATTRIBUTE; - -typedef struct WGPUChainedStruct { - struct WGPUChainedStruct const * next; - WGPUSType sType; -} WGPUChainedStruct WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUChainedStructOut { - struct WGPUChainedStructOut * next; - WGPUSType sType; -} WGPUChainedStructOut WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUAdapterProperties { - WGPUChainedStructOut * nextInChain; - uint32_t vendorID; - char const * vendorName; - char const * architecture; - uint32_t deviceID; - char const * name; - char const * driverDescription; - WGPUAdapterType adapterType; - WGPUBackendType backendType; -} WGPUAdapterProperties WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUBindGroupEntry { - WGPUChainedStruct const * nextInChain; - uint32_t binding; - WGPU_NULLABLE WGPUBuffer buffer; - uint64_t offset; - uint64_t size; - WGPU_NULLABLE WGPUSampler sampler; - WGPU_NULLABLE WGPUTextureView textureView; -} WGPUBindGroupEntry WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUBlendComponent { - WGPUBlendOperation operation; - WGPUBlendFactor srcFactor; - WGPUBlendFactor dstFactor; -} WGPUBlendComponent WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUBufferBindingLayout { - WGPUChainedStruct const * nextInChain; - WGPUBufferBindingType type; - WGPUBool hasDynamicOffset; - uint64_t minBindingSize; -} WGPUBufferBindingLayout WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUBufferDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - WGPUBufferUsageFlags usage; - uint64_t size; - WGPUBool mappedAtCreation; -} WGPUBufferDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUColor { - double r; - double g; - double b; - double a; -} WGPUColor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUCommandBufferDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; -} WGPUCommandBufferDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUCommandEncoderDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; -} WGPUCommandEncoderDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUCompilationMessage { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * message; - WGPUCompilationMessageType type; - uint64_t lineNum; - uint64_t linePos; - uint64_t offset; - uint64_t length; - uint64_t utf16LinePos; - uint64_t utf16Offset; - uint64_t utf16Length; -} WGPUCompilationMessage WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUComputePassTimestampWrites { - WGPUQuerySet querySet; - uint32_t beginningOfPassWriteIndex; - uint32_t endOfPassWriteIndex; -} WGPUComputePassTimestampWrites WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUConstantEntry { - WGPUChainedStruct const * nextInChain; - char const * key; - double value; -} WGPUConstantEntry WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUExtent3D { - uint32_t width; - uint32_t height; - uint32_t depthOrArrayLayers; -} WGPUExtent3D WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUInstanceDescriptor { - WGPUChainedStruct const * nextInChain; -} WGPUInstanceDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPULimits { - uint32_t maxTextureDimension1D; - uint32_t maxTextureDimension2D; - uint32_t maxTextureDimension3D; - uint32_t maxTextureArrayLayers; - uint32_t maxBindGroups; - uint32_t maxBindGroupsPlusVertexBuffers; - uint32_t maxBindingsPerBindGroup; - uint32_t maxDynamicUniformBuffersPerPipelineLayout; - uint32_t maxDynamicStorageBuffersPerPipelineLayout; - uint32_t maxSampledTexturesPerShaderStage; - uint32_t maxSamplersPerShaderStage; - uint32_t maxStorageBuffersPerShaderStage; - uint32_t maxStorageTexturesPerShaderStage; - uint32_t maxUniformBuffersPerShaderStage; - uint64_t maxUniformBufferBindingSize; - uint64_t maxStorageBufferBindingSize; - uint32_t minUniformBufferOffsetAlignment; - uint32_t minStorageBufferOffsetAlignment; - uint32_t maxVertexBuffers; - uint64_t maxBufferSize; - uint32_t maxVertexAttributes; - uint32_t maxVertexBufferArrayStride; - uint32_t maxInterStageShaderComponents; - uint32_t maxInterStageShaderVariables; - uint32_t maxColorAttachments; - uint32_t maxColorAttachmentBytesPerSample; - uint32_t maxComputeWorkgroupStorageSize; - uint32_t maxComputeInvocationsPerWorkgroup; - uint32_t maxComputeWorkgroupSizeX; - uint32_t maxComputeWorkgroupSizeY; - uint32_t maxComputeWorkgroupSizeZ; - uint32_t maxComputeWorkgroupsPerDimension; -} WGPULimits WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUMultisampleState { - WGPUChainedStruct const * nextInChain; - uint32_t count; - uint32_t mask; - WGPUBool alphaToCoverageEnabled; -} WGPUMultisampleState WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUOrigin3D { - uint32_t x; - uint32_t y; - uint32_t z; -} WGPUOrigin3D WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUPipelineLayoutDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - size_t bindGroupLayoutCount; - WGPUBindGroupLayout const * bindGroupLayouts; -} WGPUPipelineLayoutDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPUPrimitiveState -typedef struct WGPUPrimitiveDepthClipControl { - WGPUChainedStruct chain; - WGPUBool unclippedDepth; -} WGPUPrimitiveDepthClipControl WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUPrimitiveState { - WGPUChainedStruct const * nextInChain; - WGPUPrimitiveTopology topology; - WGPUIndexFormat stripIndexFormat; - WGPUFrontFace frontFace; - WGPUCullMode cullMode; -} WGPUPrimitiveState WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUQuerySetDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - WGPUQueryType type; - uint32_t count; -} WGPUQuerySetDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUQueueDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; -} WGPUQueueDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPURenderBundleDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; -} WGPURenderBundleDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPURenderBundleEncoderDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - size_t colorFormatCount; - WGPUTextureFormat const * colorFormats; - WGPUTextureFormat depthStencilFormat; - uint32_t sampleCount; - WGPUBool depthReadOnly; - WGPUBool stencilReadOnly; -} WGPURenderBundleEncoderDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPURenderPassDepthStencilAttachment { - WGPUTextureView view; - WGPULoadOp depthLoadOp; - WGPUStoreOp depthStoreOp; - float depthClearValue; - WGPUBool depthReadOnly; - WGPULoadOp stencilLoadOp; - WGPUStoreOp stencilStoreOp; - uint32_t stencilClearValue; - WGPUBool stencilReadOnly; -} WGPURenderPassDepthStencilAttachment WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPURenderPassDescriptor -typedef struct WGPURenderPassDescriptorMaxDrawCount { - WGPUChainedStruct chain; - uint64_t maxDrawCount; -} WGPURenderPassDescriptorMaxDrawCount WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPURenderPassTimestampWrites { - WGPUQuerySet querySet; - uint32_t beginningOfPassWriteIndex; - uint32_t endOfPassWriteIndex; -} WGPURenderPassTimestampWrites WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPURequestAdapterOptions { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE WGPUSurface compatibleSurface; - WGPUPowerPreference powerPreference; - WGPUBackendType backendType; - WGPUBool forceFallbackAdapter; -} WGPURequestAdapterOptions WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUSamplerBindingLayout { - WGPUChainedStruct const * nextInChain; - WGPUSamplerBindingType type; -} WGPUSamplerBindingLayout WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUSamplerDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - WGPUAddressMode addressModeU; - WGPUAddressMode addressModeV; - WGPUAddressMode addressModeW; - WGPUFilterMode magFilter; - WGPUFilterMode minFilter; - WGPUMipmapFilterMode mipmapFilter; - float lodMinClamp; - float lodMaxClamp; - WGPUCompareFunction compare; - uint16_t maxAnisotropy; -} WGPUSamplerDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUShaderModuleCompilationHint { - WGPUChainedStruct const * nextInChain; - char const * entryPoint; - WGPUPipelineLayout layout; -} WGPUShaderModuleCompilationHint WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPUShaderModuleDescriptor -typedef struct WGPUShaderModuleSPIRVDescriptor { - WGPUChainedStruct chain; - uint32_t codeSize; - uint32_t const * code; -} WGPUShaderModuleSPIRVDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPUShaderModuleDescriptor -typedef struct WGPUShaderModuleWGSLDescriptor { - WGPUChainedStruct chain; - char const * code; -} WGPUShaderModuleWGSLDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUStencilFaceState { - WGPUCompareFunction compare; - WGPUStencilOperation failOp; - WGPUStencilOperation depthFailOp; - WGPUStencilOperation passOp; -} WGPUStencilFaceState WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUStorageTextureBindingLayout { - WGPUChainedStruct const * nextInChain; - WGPUStorageTextureAccess access; - WGPUTextureFormat format; - WGPUTextureViewDimension viewDimension; -} WGPUStorageTextureBindingLayout WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUSurfaceCapabilities { - WGPUChainedStructOut * nextInChain; - size_t formatCount; - WGPUTextureFormat * formats; - size_t presentModeCount; - WGPUPresentMode * presentModes; - size_t alphaModeCount; - WGPUCompositeAlphaMode * alphaModes; -} WGPUSurfaceCapabilities WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUSurfaceConfiguration { - WGPUChainedStruct const * nextInChain; - WGPUDevice device; - WGPUTextureFormat format; - WGPUTextureUsageFlags usage; - size_t viewFormatCount; - WGPUTextureFormat const * viewFormats; - WGPUCompositeAlphaMode alphaMode; - uint32_t width; - uint32_t height; - WGPUPresentMode presentMode; -} WGPUSurfaceConfiguration WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUSurfaceDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; -} WGPUSurfaceDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPUSurfaceDescriptor -typedef struct WGPUSurfaceDescriptorFromAndroidNativeWindow { - WGPUChainedStruct chain; - void * window; -} WGPUSurfaceDescriptorFromAndroidNativeWindow WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPUSurfaceDescriptor -typedef struct WGPUSurfaceDescriptorFromCanvasHTMLSelector { - WGPUChainedStruct chain; - char const * selector; -} WGPUSurfaceDescriptorFromCanvasHTMLSelector WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPUSurfaceDescriptor -typedef struct WGPUSurfaceDescriptorFromMetalLayer { - WGPUChainedStruct chain; - void * layer; -} WGPUSurfaceDescriptorFromMetalLayer WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPUSurfaceDescriptor -typedef struct WGPUSurfaceDescriptorFromWaylandSurface { - WGPUChainedStruct chain; - void * display; - void * surface; -} WGPUSurfaceDescriptorFromWaylandSurface WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPUSurfaceDescriptor -typedef struct WGPUSurfaceDescriptorFromWindowsHWND { - WGPUChainedStruct chain; - void * hinstance; - void * hwnd; -} WGPUSurfaceDescriptorFromWindowsHWND WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPUSurfaceDescriptor -typedef struct WGPUSurfaceDescriptorFromXcbWindow { - WGPUChainedStruct chain; - void * connection; - uint32_t window; -} WGPUSurfaceDescriptorFromXcbWindow WGPU_STRUCTURE_ATTRIBUTE; - -// Can be chained in WGPUSurfaceDescriptor -typedef struct WGPUSurfaceDescriptorFromXlibWindow { - WGPUChainedStruct chain; - void * display; - uint64_t window; -} WGPUSurfaceDescriptorFromXlibWindow WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUSurfaceTexture { - WGPUTexture texture; - WGPUBool suboptimal; - WGPUSurfaceGetCurrentTextureStatus status; -} WGPUSurfaceTexture WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUTextureBindingLayout { - WGPUChainedStruct const * nextInChain; - WGPUTextureSampleType sampleType; - WGPUTextureViewDimension viewDimension; - WGPUBool multisampled; -} WGPUTextureBindingLayout WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUTextureDataLayout { - WGPUChainedStruct const * nextInChain; - uint64_t offset; - uint32_t bytesPerRow; - uint32_t rowsPerImage; -} WGPUTextureDataLayout WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUTextureViewDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - WGPUTextureFormat format; - WGPUTextureViewDimension dimension; - uint32_t baseMipLevel; - uint32_t mipLevelCount; - uint32_t baseArrayLayer; - uint32_t arrayLayerCount; - WGPUTextureAspect aspect; -} WGPUTextureViewDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUVertexAttribute { - WGPUVertexFormat format; - uint64_t offset; - uint32_t shaderLocation; -} WGPUVertexAttribute WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUBindGroupDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - WGPUBindGroupLayout layout; - size_t entryCount; - WGPUBindGroupEntry const * entries; -} WGPUBindGroupDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUBindGroupLayoutEntry { - WGPUChainedStruct const * nextInChain; - uint32_t binding; - WGPUShaderStageFlags visibility; - WGPUBufferBindingLayout buffer; - WGPUSamplerBindingLayout sampler; - WGPUTextureBindingLayout texture; - WGPUStorageTextureBindingLayout storageTexture; -} WGPUBindGroupLayoutEntry WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUBlendState { - WGPUBlendComponent color; - WGPUBlendComponent alpha; -} WGPUBlendState WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUCompilationInfo { - WGPUChainedStruct const * nextInChain; - size_t messageCount; - WGPUCompilationMessage const * messages; -} WGPUCompilationInfo WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUComputePassDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - WGPU_NULLABLE WGPUComputePassTimestampWrites const * timestampWrites; -} WGPUComputePassDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUDepthStencilState { - WGPUChainedStruct const * nextInChain; - WGPUTextureFormat format; - WGPUBool depthWriteEnabled; - WGPUCompareFunction depthCompare; - WGPUStencilFaceState stencilFront; - WGPUStencilFaceState stencilBack; - uint32_t stencilReadMask; - uint32_t stencilWriteMask; - int32_t depthBias; - float depthBiasSlopeScale; - float depthBiasClamp; -} WGPUDepthStencilState WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUImageCopyBuffer { - WGPUChainedStruct const * nextInChain; - WGPUTextureDataLayout layout; - WGPUBuffer buffer; -} WGPUImageCopyBuffer WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUImageCopyTexture { - WGPUChainedStruct const * nextInChain; - WGPUTexture texture; - uint32_t mipLevel; - WGPUOrigin3D origin; - WGPUTextureAspect aspect; -} WGPUImageCopyTexture WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUProgrammableStageDescriptor { - WGPUChainedStruct const * nextInChain; - WGPUShaderModule module; - WGPU_NULLABLE char const * entryPoint; - size_t constantCount; - WGPUConstantEntry const * constants; -} WGPUProgrammableStageDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPURenderPassColorAttachment { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE WGPUTextureView view; - WGPU_NULLABLE WGPUTextureView resolveTarget; - WGPULoadOp loadOp; - WGPUStoreOp storeOp; - WGPUColor clearValue; -} WGPURenderPassColorAttachment WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPURequiredLimits { - WGPUChainedStruct const * nextInChain; - WGPULimits limits; -} WGPURequiredLimits WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUShaderModuleDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - size_t hintCount; - WGPUShaderModuleCompilationHint const * hints; -} WGPUShaderModuleDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUSupportedLimits { - WGPUChainedStructOut * nextInChain; - WGPULimits limits; -} WGPUSupportedLimits WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUTextureDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - WGPUTextureUsageFlags usage; - WGPUTextureDimension dimension; - WGPUExtent3D size; - WGPUTextureFormat format; - uint32_t mipLevelCount; - uint32_t sampleCount; - size_t viewFormatCount; - WGPUTextureFormat const * viewFormats; -} WGPUTextureDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUVertexBufferLayout { - uint64_t arrayStride; - WGPUVertexStepMode stepMode; - size_t attributeCount; - WGPUVertexAttribute const * attributes; -} WGPUVertexBufferLayout WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUBindGroupLayoutDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - size_t entryCount; - WGPUBindGroupLayoutEntry const * entries; -} WGPUBindGroupLayoutDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUColorTargetState { - WGPUChainedStruct const * nextInChain; - WGPUTextureFormat format; - WGPU_NULLABLE WGPUBlendState const * blend; - WGPUColorWriteMaskFlags writeMask; -} WGPUColorTargetState WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUComputePipelineDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - WGPU_NULLABLE WGPUPipelineLayout layout; - WGPUProgrammableStageDescriptor compute; -} WGPUComputePipelineDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUDeviceDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - size_t requiredFeatureCount; - WGPUFeatureName const * requiredFeatures; - WGPU_NULLABLE WGPURequiredLimits const * requiredLimits; - WGPUQueueDescriptor defaultQueue; - WGPUDeviceLostCallback deviceLostCallback; - void * deviceLostUserdata; -} WGPUDeviceDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPURenderPassDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - size_t colorAttachmentCount; - WGPURenderPassColorAttachment const * colorAttachments; - WGPU_NULLABLE WGPURenderPassDepthStencilAttachment const * depthStencilAttachment; - WGPU_NULLABLE WGPUQuerySet occlusionQuerySet; - WGPU_NULLABLE WGPURenderPassTimestampWrites const * timestampWrites; -} WGPURenderPassDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUVertexState { - WGPUChainedStruct const * nextInChain; - WGPUShaderModule module; - WGPU_NULLABLE char const * entryPoint; - size_t constantCount; - WGPUConstantEntry const * constants; - size_t bufferCount; - WGPUVertexBufferLayout const * buffers; -} WGPUVertexState WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUFragmentState { - WGPUChainedStruct const * nextInChain; - WGPUShaderModule module; - WGPU_NULLABLE char const * entryPoint; - size_t constantCount; - WGPUConstantEntry const * constants; - size_t targetCount; - WGPUColorTargetState const * targets; -} WGPUFragmentState WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPURenderPipelineDescriptor { - WGPUChainedStruct const * nextInChain; - WGPU_NULLABLE char const * label; - WGPU_NULLABLE WGPUPipelineLayout layout; - WGPUVertexState vertex; - WGPUPrimitiveState primitive; - WGPU_NULLABLE WGPUDepthStencilState const * depthStencil; - WGPUMultisampleState multisample; - WGPU_NULLABLE WGPUFragmentState const * fragment; -} WGPURenderPipelineDescriptor WGPU_STRUCTURE_ATTRIBUTE; - -#ifdef __cplusplus -extern "C" { -#endif - -#if !defined(WGPU_SKIP_PROCS) - -typedef WGPUInstance (*WGPUProcCreateInstance)(WGPU_NULLABLE WGPUInstanceDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUProc (*WGPUProcGetProcAddress)(WGPUDevice device, char const * procName) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of Adapter -typedef size_t (*WGPUProcAdapterEnumerateFeatures)(WGPUAdapter adapter, WGPUFeatureName * features) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUBool (*WGPUProcAdapterGetLimits)(WGPUAdapter adapter, WGPUSupportedLimits * limits) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcAdapterGetProperties)(WGPUAdapter adapter, WGPUAdapterProperties * properties) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUBool (*WGPUProcAdapterHasFeature)(WGPUAdapter adapter, WGPUFeatureName feature) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcAdapterRequestDevice)(WGPUAdapter adapter, WGPU_NULLABLE WGPUDeviceDescriptor const * descriptor, WGPURequestDeviceCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcAdapterReference)(WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcAdapterRelease)(WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of BindGroup -typedef void (*WGPUProcBindGroupSetLabel)(WGPUBindGroup bindGroup, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcBindGroupReference)(WGPUBindGroup bindGroup) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcBindGroupRelease)(WGPUBindGroup bindGroup) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of BindGroupLayout -typedef void (*WGPUProcBindGroupLayoutSetLabel)(WGPUBindGroupLayout bindGroupLayout, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcBindGroupLayoutReference)(WGPUBindGroupLayout bindGroupLayout) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcBindGroupLayoutRelease)(WGPUBindGroupLayout bindGroupLayout) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of Buffer -typedef void (*WGPUProcBufferDestroy)(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -typedef void const * (*WGPUProcBufferGetConstMappedRange)(WGPUBuffer buffer, size_t offset, size_t size) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUBufferMapState (*WGPUProcBufferGetMapState)(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -typedef void * (*WGPUProcBufferGetMappedRange)(WGPUBuffer buffer, size_t offset, size_t size) WGPU_FUNCTION_ATTRIBUTE; -typedef uint64_t (*WGPUProcBufferGetSize)(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUBufferUsageFlags (*WGPUProcBufferGetUsage)(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcBufferMapAsync)(WGPUBuffer buffer, WGPUMapModeFlags mode, size_t offset, size_t size, WGPUBufferMapCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcBufferSetLabel)(WGPUBuffer buffer, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcBufferUnmap)(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcBufferReference)(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcBufferRelease)(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of CommandBuffer -typedef void (*WGPUProcCommandBufferSetLabel)(WGPUCommandBuffer commandBuffer, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandBufferReference)(WGPUCommandBuffer commandBuffer) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandBufferRelease)(WGPUCommandBuffer commandBuffer) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of CommandEncoder -typedef WGPUComputePassEncoder (*WGPUProcCommandEncoderBeginComputePass)(WGPUCommandEncoder commandEncoder, WGPU_NULLABLE WGPUComputePassDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPURenderPassEncoder (*WGPUProcCommandEncoderBeginRenderPass)(WGPUCommandEncoder commandEncoder, WGPURenderPassDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderClearBuffer)(WGPUCommandEncoder commandEncoder, WGPUBuffer buffer, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderCopyBufferToBuffer)(WGPUCommandEncoder commandEncoder, WGPUBuffer source, uint64_t sourceOffset, WGPUBuffer destination, uint64_t destinationOffset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderCopyBufferToTexture)(WGPUCommandEncoder commandEncoder, WGPUImageCopyBuffer const * source, WGPUImageCopyTexture const * destination, WGPUExtent3D const * copySize) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderCopyTextureToBuffer)(WGPUCommandEncoder commandEncoder, WGPUImageCopyTexture const * source, WGPUImageCopyBuffer const * destination, WGPUExtent3D const * copySize) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderCopyTextureToTexture)(WGPUCommandEncoder commandEncoder, WGPUImageCopyTexture const * source, WGPUImageCopyTexture const * destination, WGPUExtent3D const * copySize) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUCommandBuffer (*WGPUProcCommandEncoderFinish)(WGPUCommandEncoder commandEncoder, WGPU_NULLABLE WGPUCommandBufferDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderInsertDebugMarker)(WGPUCommandEncoder commandEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderPopDebugGroup)(WGPUCommandEncoder commandEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderPushDebugGroup)(WGPUCommandEncoder commandEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderResolveQuerySet)(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t firstQuery, uint32_t queryCount, WGPUBuffer destination, uint64_t destinationOffset) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderSetLabel)(WGPUCommandEncoder commandEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderWriteTimestamp)(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t queryIndex) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderReference)(WGPUCommandEncoder commandEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcCommandEncoderRelease)(WGPUCommandEncoder commandEncoder) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of ComputePassEncoder -typedef void (*WGPUProcComputePassEncoderDispatchWorkgroups)(WGPUComputePassEncoder computePassEncoder, uint32_t workgroupCountX, uint32_t workgroupCountY, uint32_t workgroupCountZ) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePassEncoderDispatchWorkgroupsIndirect)(WGPUComputePassEncoder computePassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePassEncoderEnd)(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePassEncoderInsertDebugMarker)(WGPUComputePassEncoder computePassEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePassEncoderPopDebugGroup)(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePassEncoderPushDebugGroup)(WGPUComputePassEncoder computePassEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePassEncoderSetBindGroup)(WGPUComputePassEncoder computePassEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePassEncoderSetLabel)(WGPUComputePassEncoder computePassEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePassEncoderSetPipeline)(WGPUComputePassEncoder computePassEncoder, WGPUComputePipeline pipeline) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePassEncoderReference)(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePassEncoderRelease)(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of ComputePipeline -typedef WGPUBindGroupLayout (*WGPUProcComputePipelineGetBindGroupLayout)(WGPUComputePipeline computePipeline, uint32_t groupIndex) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePipelineSetLabel)(WGPUComputePipeline computePipeline, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePipelineReference)(WGPUComputePipeline computePipeline) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcComputePipelineRelease)(WGPUComputePipeline computePipeline) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of Device -typedef WGPUBindGroup (*WGPUProcDeviceCreateBindGroup)(WGPUDevice device, WGPUBindGroupDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUBindGroupLayout (*WGPUProcDeviceCreateBindGroupLayout)(WGPUDevice device, WGPUBindGroupLayoutDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUBuffer (*WGPUProcDeviceCreateBuffer)(WGPUDevice device, WGPUBufferDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUCommandEncoder (*WGPUProcDeviceCreateCommandEncoder)(WGPUDevice device, WGPU_NULLABLE WGPUCommandEncoderDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUComputePipeline (*WGPUProcDeviceCreateComputePipeline)(WGPUDevice device, WGPUComputePipelineDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcDeviceCreateComputePipelineAsync)(WGPUDevice device, WGPUComputePipelineDescriptor const * descriptor, WGPUCreateComputePipelineAsyncCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUPipelineLayout (*WGPUProcDeviceCreatePipelineLayout)(WGPUDevice device, WGPUPipelineLayoutDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUQuerySet (*WGPUProcDeviceCreateQuerySet)(WGPUDevice device, WGPUQuerySetDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPURenderBundleEncoder (*WGPUProcDeviceCreateRenderBundleEncoder)(WGPUDevice device, WGPURenderBundleEncoderDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPURenderPipeline (*WGPUProcDeviceCreateRenderPipeline)(WGPUDevice device, WGPURenderPipelineDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcDeviceCreateRenderPipelineAsync)(WGPUDevice device, WGPURenderPipelineDescriptor const * descriptor, WGPUCreateRenderPipelineAsyncCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUSampler (*WGPUProcDeviceCreateSampler)(WGPUDevice device, WGPU_NULLABLE WGPUSamplerDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUShaderModule (*WGPUProcDeviceCreateShaderModule)(WGPUDevice device, WGPUShaderModuleDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUTexture (*WGPUProcDeviceCreateTexture)(WGPUDevice device, WGPUTextureDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcDeviceDestroy)(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE; -typedef size_t (*WGPUProcDeviceEnumerateFeatures)(WGPUDevice device, WGPUFeatureName * features) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUBool (*WGPUProcDeviceGetLimits)(WGPUDevice device, WGPUSupportedLimits * limits) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUQueue (*WGPUProcDeviceGetQueue)(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUBool (*WGPUProcDeviceHasFeature)(WGPUDevice device, WGPUFeatureName feature) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcDevicePopErrorScope)(WGPUDevice device, WGPUErrorCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcDevicePushErrorScope)(WGPUDevice device, WGPUErrorFilter filter) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcDeviceSetLabel)(WGPUDevice device, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcDeviceSetUncapturedErrorCallback)(WGPUDevice device, WGPUErrorCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcDeviceReference)(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcDeviceRelease)(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of Instance -typedef WGPUSurface (*WGPUProcInstanceCreateSurface)(WGPUInstance instance, WGPUSurfaceDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcInstanceProcessEvents)(WGPUInstance instance) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcInstanceRequestAdapter)(WGPUInstance instance, WGPU_NULLABLE WGPURequestAdapterOptions const * options, WGPURequestAdapterCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcInstanceReference)(WGPUInstance instance) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcInstanceRelease)(WGPUInstance instance) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of PipelineLayout -typedef void (*WGPUProcPipelineLayoutSetLabel)(WGPUPipelineLayout pipelineLayout, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcPipelineLayoutReference)(WGPUPipelineLayout pipelineLayout) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcPipelineLayoutRelease)(WGPUPipelineLayout pipelineLayout) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of QuerySet -typedef void (*WGPUProcQuerySetDestroy)(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE; -typedef uint32_t (*WGPUProcQuerySetGetCount)(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUQueryType (*WGPUProcQuerySetGetType)(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcQuerySetSetLabel)(WGPUQuerySet querySet, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcQuerySetReference)(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcQuerySetRelease)(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of Queue -typedef void (*WGPUProcQueueOnSubmittedWorkDone)(WGPUQueue queue, WGPUQueueWorkDoneCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcQueueSetLabel)(WGPUQueue queue, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcQueueSubmit)(WGPUQueue queue, size_t commandCount, WGPUCommandBuffer const * commands) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcQueueWriteBuffer)(WGPUQueue queue, WGPUBuffer buffer, uint64_t bufferOffset, void const * data, size_t size) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcQueueWriteTexture)(WGPUQueue queue, WGPUImageCopyTexture const * destination, void const * data, size_t dataSize, WGPUTextureDataLayout const * dataLayout, WGPUExtent3D const * writeSize) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcQueueReference)(WGPUQueue queue) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcQueueRelease)(WGPUQueue queue) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of RenderBundle -typedef void (*WGPUProcRenderBundleSetLabel)(WGPURenderBundle renderBundle, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleReference)(WGPURenderBundle renderBundle) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleRelease)(WGPURenderBundle renderBundle) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of RenderBundleEncoder -typedef void (*WGPUProcRenderBundleEncoderDraw)(WGPURenderBundleEncoder renderBundleEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderDrawIndexed)(WGPURenderBundleEncoder renderBundleEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderDrawIndexedIndirect)(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderDrawIndirect)(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPURenderBundle (*WGPUProcRenderBundleEncoderFinish)(WGPURenderBundleEncoder renderBundleEncoder, WGPU_NULLABLE WGPURenderBundleDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderInsertDebugMarker)(WGPURenderBundleEncoder renderBundleEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderPopDebugGroup)(WGPURenderBundleEncoder renderBundleEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderPushDebugGroup)(WGPURenderBundleEncoder renderBundleEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderSetBindGroup)(WGPURenderBundleEncoder renderBundleEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderSetIndexBuffer)(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderSetLabel)(WGPURenderBundleEncoder renderBundleEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderSetPipeline)(WGPURenderBundleEncoder renderBundleEncoder, WGPURenderPipeline pipeline) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderSetVertexBuffer)(WGPURenderBundleEncoder renderBundleEncoder, uint32_t slot, WGPU_NULLABLE WGPUBuffer buffer, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderReference)(WGPURenderBundleEncoder renderBundleEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderBundleEncoderRelease)(WGPURenderBundleEncoder renderBundleEncoder) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of RenderPassEncoder -typedef void (*WGPUProcRenderPassEncoderBeginOcclusionQuery)(WGPURenderPassEncoder renderPassEncoder, uint32_t queryIndex) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderDraw)(WGPURenderPassEncoder renderPassEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderDrawIndexed)(WGPURenderPassEncoder renderPassEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderDrawIndexedIndirect)(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderDrawIndirect)(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderEnd)(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderEndOcclusionQuery)(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderExecuteBundles)(WGPURenderPassEncoder renderPassEncoder, size_t bundleCount, WGPURenderBundle const * bundles) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderInsertDebugMarker)(WGPURenderPassEncoder renderPassEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderPopDebugGroup)(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderPushDebugGroup)(WGPURenderPassEncoder renderPassEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderSetBindGroup)(WGPURenderPassEncoder renderPassEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderSetBlendConstant)(WGPURenderPassEncoder renderPassEncoder, WGPUColor const * color) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderSetIndexBuffer)(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderSetLabel)(WGPURenderPassEncoder renderPassEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderSetPipeline)(WGPURenderPassEncoder renderPassEncoder, WGPURenderPipeline pipeline) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderSetScissorRect)(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderSetStencilReference)(WGPURenderPassEncoder renderPassEncoder, uint32_t reference) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderSetVertexBuffer)(WGPURenderPassEncoder renderPassEncoder, uint32_t slot, WGPU_NULLABLE WGPUBuffer buffer, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderSetViewport)(WGPURenderPassEncoder renderPassEncoder, float x, float y, float width, float height, float minDepth, float maxDepth) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderReference)(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPassEncoderRelease)(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of RenderPipeline -typedef WGPUBindGroupLayout (*WGPUProcRenderPipelineGetBindGroupLayout)(WGPURenderPipeline renderPipeline, uint32_t groupIndex) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPipelineSetLabel)(WGPURenderPipeline renderPipeline, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPipelineReference)(WGPURenderPipeline renderPipeline) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcRenderPipelineRelease)(WGPURenderPipeline renderPipeline) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of Sampler -typedef void (*WGPUProcSamplerSetLabel)(WGPUSampler sampler, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcSamplerReference)(WGPUSampler sampler) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcSamplerRelease)(WGPUSampler sampler) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of ShaderModule -typedef void (*WGPUProcShaderModuleGetCompilationInfo)(WGPUShaderModule shaderModule, WGPUCompilationInfoCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcShaderModuleSetLabel)(WGPUShaderModule shaderModule, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcShaderModuleReference)(WGPUShaderModule shaderModule) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcShaderModuleRelease)(WGPUShaderModule shaderModule) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of Surface -typedef void (*WGPUProcSurfaceConfigure)(WGPUSurface surface, WGPUSurfaceConfiguration const * config) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcSurfaceGetCapabilities)(WGPUSurface surface, WGPUAdapter adapter, WGPUSurfaceCapabilities * capabilities) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcSurfaceGetCurrentTexture)(WGPUSurface surface, WGPUSurfaceTexture * surfaceTexture) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUTextureFormat (*WGPUProcSurfaceGetPreferredFormat)(WGPUSurface surface, WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcSurfacePresent)(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcSurfaceUnconfigure)(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcSurfaceReference)(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcSurfaceRelease)(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of SurfaceCapabilities -typedef void (*WGPUProcSurfaceCapabilitiesFreeMembers)(WGPUSurfaceCapabilities capabilities) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of Texture -typedef WGPUTextureView (*WGPUProcTextureCreateView)(WGPUTexture texture, WGPU_NULLABLE WGPUTextureViewDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcTextureDestroy)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -typedef uint32_t (*WGPUProcTextureGetDepthOrArrayLayers)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUTextureDimension (*WGPUProcTextureGetDimension)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUTextureFormat (*WGPUProcTextureGetFormat)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -typedef uint32_t (*WGPUProcTextureGetHeight)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -typedef uint32_t (*WGPUProcTextureGetMipLevelCount)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -typedef uint32_t (*WGPUProcTextureGetSampleCount)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -typedef WGPUTextureUsageFlags (*WGPUProcTextureGetUsage)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -typedef uint32_t (*WGPUProcTextureGetWidth)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcTextureSetLabel)(WGPUTexture texture, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcTextureReference)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcTextureRelease)(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; - -// Procs of TextureView -typedef void (*WGPUProcTextureViewSetLabel)(WGPUTextureView textureView, char const * label) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcTextureViewReference)(WGPUTextureView textureView) WGPU_FUNCTION_ATTRIBUTE; -typedef void (*WGPUProcTextureViewRelease)(WGPUTextureView textureView) WGPU_FUNCTION_ATTRIBUTE; - -#endif // !defined(WGPU_SKIP_PROCS) - -#if !defined(WGPU_SKIP_DECLARATIONS) - -WGPU_EXPORT WGPUInstance wgpuCreateInstance(WGPU_NULLABLE WGPUInstanceDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUProc wgpuGetProcAddress(WGPUDevice device, char const * procName) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of Adapter -WGPU_EXPORT size_t wgpuAdapterEnumerateFeatures(WGPUAdapter adapter, WGPUFeatureName * features) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUBool wgpuAdapterGetLimits(WGPUAdapter adapter, WGPUSupportedLimits * limits) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuAdapterGetProperties(WGPUAdapter adapter, WGPUAdapterProperties * properties) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUBool wgpuAdapterHasFeature(WGPUAdapter adapter, WGPUFeatureName feature) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuAdapterRequestDevice(WGPUAdapter adapter, WGPU_NULLABLE WGPUDeviceDescriptor const * descriptor, WGPURequestDeviceCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuAdapterReference(WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuAdapterRelease(WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of BindGroup -WGPU_EXPORT void wgpuBindGroupSetLabel(WGPUBindGroup bindGroup, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuBindGroupReference(WGPUBindGroup bindGroup) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuBindGroupRelease(WGPUBindGroup bindGroup) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of BindGroupLayout -WGPU_EXPORT void wgpuBindGroupLayoutSetLabel(WGPUBindGroupLayout bindGroupLayout, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuBindGroupLayoutReference(WGPUBindGroupLayout bindGroupLayout) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuBindGroupLayoutRelease(WGPUBindGroupLayout bindGroupLayout) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of Buffer -WGPU_EXPORT void wgpuBufferDestroy(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void const * wgpuBufferGetConstMappedRange(WGPUBuffer buffer, size_t offset, size_t size) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUBufferMapState wgpuBufferGetMapState(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void * wgpuBufferGetMappedRange(WGPUBuffer buffer, size_t offset, size_t size) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT uint64_t wgpuBufferGetSize(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUBufferUsageFlags wgpuBufferGetUsage(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuBufferMapAsync(WGPUBuffer buffer, WGPUMapModeFlags mode, size_t offset, size_t size, WGPUBufferMapCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuBufferSetLabel(WGPUBuffer buffer, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuBufferUnmap(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuBufferReference(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuBufferRelease(WGPUBuffer buffer) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of CommandBuffer -WGPU_EXPORT void wgpuCommandBufferSetLabel(WGPUCommandBuffer commandBuffer, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandBufferReference(WGPUCommandBuffer commandBuffer) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandBufferRelease(WGPUCommandBuffer commandBuffer) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of CommandEncoder -WGPU_EXPORT WGPUComputePassEncoder wgpuCommandEncoderBeginComputePass(WGPUCommandEncoder commandEncoder, WGPU_NULLABLE WGPUComputePassDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPURenderPassEncoder wgpuCommandEncoderBeginRenderPass(WGPUCommandEncoder commandEncoder, WGPURenderPassDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderClearBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer buffer, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderCopyBufferToBuffer(WGPUCommandEncoder commandEncoder, WGPUBuffer source, uint64_t sourceOffset, WGPUBuffer destination, uint64_t destinationOffset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderCopyBufferToTexture(WGPUCommandEncoder commandEncoder, WGPUImageCopyBuffer const * source, WGPUImageCopyTexture const * destination, WGPUExtent3D const * copySize) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderCopyTextureToBuffer(WGPUCommandEncoder commandEncoder, WGPUImageCopyTexture const * source, WGPUImageCopyBuffer const * destination, WGPUExtent3D const * copySize) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderCopyTextureToTexture(WGPUCommandEncoder commandEncoder, WGPUImageCopyTexture const * source, WGPUImageCopyTexture const * destination, WGPUExtent3D const * copySize) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUCommandBuffer wgpuCommandEncoderFinish(WGPUCommandEncoder commandEncoder, WGPU_NULLABLE WGPUCommandBufferDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderInsertDebugMarker(WGPUCommandEncoder commandEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderPopDebugGroup(WGPUCommandEncoder commandEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderPushDebugGroup(WGPUCommandEncoder commandEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderResolveQuerySet(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t firstQuery, uint32_t queryCount, WGPUBuffer destination, uint64_t destinationOffset) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderSetLabel(WGPUCommandEncoder commandEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderWriteTimestamp(WGPUCommandEncoder commandEncoder, WGPUQuerySet querySet, uint32_t queryIndex) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderReference(WGPUCommandEncoder commandEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuCommandEncoderRelease(WGPUCommandEncoder commandEncoder) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of ComputePassEncoder -WGPU_EXPORT void wgpuComputePassEncoderDispatchWorkgroups(WGPUComputePassEncoder computePassEncoder, uint32_t workgroupCountX, uint32_t workgroupCountY, uint32_t workgroupCountZ) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePassEncoderDispatchWorkgroupsIndirect(WGPUComputePassEncoder computePassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePassEncoderEnd(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePassEncoderInsertDebugMarker(WGPUComputePassEncoder computePassEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePassEncoderPopDebugGroup(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePassEncoderPushDebugGroup(WGPUComputePassEncoder computePassEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePassEncoderSetBindGroup(WGPUComputePassEncoder computePassEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePassEncoderSetLabel(WGPUComputePassEncoder computePassEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePassEncoderSetPipeline(WGPUComputePassEncoder computePassEncoder, WGPUComputePipeline pipeline) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePassEncoderReference(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePassEncoderRelease(WGPUComputePassEncoder computePassEncoder) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of ComputePipeline -WGPU_EXPORT WGPUBindGroupLayout wgpuComputePipelineGetBindGroupLayout(WGPUComputePipeline computePipeline, uint32_t groupIndex) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePipelineSetLabel(WGPUComputePipeline computePipeline, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePipelineReference(WGPUComputePipeline computePipeline) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuComputePipelineRelease(WGPUComputePipeline computePipeline) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of Device -WGPU_EXPORT WGPUBindGroup wgpuDeviceCreateBindGroup(WGPUDevice device, WGPUBindGroupDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUBindGroupLayout wgpuDeviceCreateBindGroupLayout(WGPUDevice device, WGPUBindGroupLayoutDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUBuffer wgpuDeviceCreateBuffer(WGPUDevice device, WGPUBufferDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUCommandEncoder wgpuDeviceCreateCommandEncoder(WGPUDevice device, WGPU_NULLABLE WGPUCommandEncoderDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUComputePipeline wgpuDeviceCreateComputePipeline(WGPUDevice device, WGPUComputePipelineDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuDeviceCreateComputePipelineAsync(WGPUDevice device, WGPUComputePipelineDescriptor const * descriptor, WGPUCreateComputePipelineAsyncCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUPipelineLayout wgpuDeviceCreatePipelineLayout(WGPUDevice device, WGPUPipelineLayoutDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUQuerySet wgpuDeviceCreateQuerySet(WGPUDevice device, WGPUQuerySetDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPURenderBundleEncoder wgpuDeviceCreateRenderBundleEncoder(WGPUDevice device, WGPURenderBundleEncoderDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPURenderPipeline wgpuDeviceCreateRenderPipeline(WGPUDevice device, WGPURenderPipelineDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuDeviceCreateRenderPipelineAsync(WGPUDevice device, WGPURenderPipelineDescriptor const * descriptor, WGPUCreateRenderPipelineAsyncCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUSampler wgpuDeviceCreateSampler(WGPUDevice device, WGPU_NULLABLE WGPUSamplerDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUShaderModule wgpuDeviceCreateShaderModule(WGPUDevice device, WGPUShaderModuleDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUTexture wgpuDeviceCreateTexture(WGPUDevice device, WGPUTextureDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuDeviceDestroy(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT size_t wgpuDeviceEnumerateFeatures(WGPUDevice device, WGPUFeatureName * features) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUBool wgpuDeviceGetLimits(WGPUDevice device, WGPUSupportedLimits * limits) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUQueue wgpuDeviceGetQueue(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUBool wgpuDeviceHasFeature(WGPUDevice device, WGPUFeatureName feature) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuDevicePopErrorScope(WGPUDevice device, WGPUErrorCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuDevicePushErrorScope(WGPUDevice device, WGPUErrorFilter filter) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuDeviceSetLabel(WGPUDevice device, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuDeviceSetUncapturedErrorCallback(WGPUDevice device, WGPUErrorCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuDeviceReference(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuDeviceRelease(WGPUDevice device) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of Instance -WGPU_EXPORT WGPUSurface wgpuInstanceCreateSurface(WGPUInstance instance, WGPUSurfaceDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuInstanceProcessEvents(WGPUInstance instance) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuInstanceRequestAdapter(WGPUInstance instance, WGPU_NULLABLE WGPURequestAdapterOptions const * options, WGPURequestAdapterCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuInstanceReference(WGPUInstance instance) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuInstanceRelease(WGPUInstance instance) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of PipelineLayout -WGPU_EXPORT void wgpuPipelineLayoutSetLabel(WGPUPipelineLayout pipelineLayout, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuPipelineLayoutReference(WGPUPipelineLayout pipelineLayout) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuPipelineLayoutRelease(WGPUPipelineLayout pipelineLayout) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of QuerySet -WGPU_EXPORT void wgpuQuerySetDestroy(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT uint32_t wgpuQuerySetGetCount(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUQueryType wgpuQuerySetGetType(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuQuerySetSetLabel(WGPUQuerySet querySet, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuQuerySetReference(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuQuerySetRelease(WGPUQuerySet querySet) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of Queue -WGPU_EXPORT void wgpuQueueOnSubmittedWorkDone(WGPUQueue queue, WGPUQueueWorkDoneCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuQueueSetLabel(WGPUQueue queue, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuQueueSubmit(WGPUQueue queue, size_t commandCount, WGPUCommandBuffer const * commands) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuQueueWriteBuffer(WGPUQueue queue, WGPUBuffer buffer, uint64_t bufferOffset, void const * data, size_t size) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuQueueWriteTexture(WGPUQueue queue, WGPUImageCopyTexture const * destination, void const * data, size_t dataSize, WGPUTextureDataLayout const * dataLayout, WGPUExtent3D const * writeSize) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuQueueReference(WGPUQueue queue) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuQueueRelease(WGPUQueue queue) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of RenderBundle -WGPU_EXPORT void wgpuRenderBundleSetLabel(WGPURenderBundle renderBundle, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleReference(WGPURenderBundle renderBundle) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleRelease(WGPURenderBundle renderBundle) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of RenderBundleEncoder -WGPU_EXPORT void wgpuRenderBundleEncoderDraw(WGPURenderBundleEncoder renderBundleEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderDrawIndexed(WGPURenderBundleEncoder renderBundleEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderDrawIndexedIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderDrawIndirect(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPURenderBundle wgpuRenderBundleEncoderFinish(WGPURenderBundleEncoder renderBundleEncoder, WGPU_NULLABLE WGPURenderBundleDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderInsertDebugMarker(WGPURenderBundleEncoder renderBundleEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderPopDebugGroup(WGPURenderBundleEncoder renderBundleEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderPushDebugGroup(WGPURenderBundleEncoder renderBundleEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderSetBindGroup(WGPURenderBundleEncoder renderBundleEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderSetIndexBuffer(WGPURenderBundleEncoder renderBundleEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderSetLabel(WGPURenderBundleEncoder renderBundleEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderSetPipeline(WGPURenderBundleEncoder renderBundleEncoder, WGPURenderPipeline pipeline) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderSetVertexBuffer(WGPURenderBundleEncoder renderBundleEncoder, uint32_t slot, WGPU_NULLABLE WGPUBuffer buffer, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderReference(WGPURenderBundleEncoder renderBundleEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderBundleEncoderRelease(WGPURenderBundleEncoder renderBundleEncoder) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of RenderPassEncoder -WGPU_EXPORT void wgpuRenderPassEncoderBeginOcclusionQuery(WGPURenderPassEncoder renderPassEncoder, uint32_t queryIndex) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderDraw(WGPURenderPassEncoder renderPassEncoder, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderDrawIndexed(WGPURenderPassEncoder renderPassEncoder, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t baseVertex, uint32_t firstInstance) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderDrawIndexedIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderDrawIndirect(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer indirectBuffer, uint64_t indirectOffset) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderEnd(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderEndOcclusionQuery(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderExecuteBundles(WGPURenderPassEncoder renderPassEncoder, size_t bundleCount, WGPURenderBundle const * bundles) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderInsertDebugMarker(WGPURenderPassEncoder renderPassEncoder, char const * markerLabel) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderPopDebugGroup(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderPushDebugGroup(WGPURenderPassEncoder renderPassEncoder, char const * groupLabel) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderSetBindGroup(WGPURenderPassEncoder renderPassEncoder, uint32_t groupIndex, WGPU_NULLABLE WGPUBindGroup group, size_t dynamicOffsetCount, uint32_t const * dynamicOffsets) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderSetBlendConstant(WGPURenderPassEncoder renderPassEncoder, WGPUColor const * color) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderSetIndexBuffer(WGPURenderPassEncoder renderPassEncoder, WGPUBuffer buffer, WGPUIndexFormat format, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderSetLabel(WGPURenderPassEncoder renderPassEncoder, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderSetPipeline(WGPURenderPassEncoder renderPassEncoder, WGPURenderPipeline pipeline) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderSetScissorRect(WGPURenderPassEncoder renderPassEncoder, uint32_t x, uint32_t y, uint32_t width, uint32_t height) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderSetStencilReference(WGPURenderPassEncoder renderPassEncoder, uint32_t reference) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderSetVertexBuffer(WGPURenderPassEncoder renderPassEncoder, uint32_t slot, WGPU_NULLABLE WGPUBuffer buffer, uint64_t offset, uint64_t size) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderSetViewport(WGPURenderPassEncoder renderPassEncoder, float x, float y, float width, float height, float minDepth, float maxDepth) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderReference(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPassEncoderRelease(WGPURenderPassEncoder renderPassEncoder) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of RenderPipeline -WGPU_EXPORT WGPUBindGroupLayout wgpuRenderPipelineGetBindGroupLayout(WGPURenderPipeline renderPipeline, uint32_t groupIndex) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPipelineSetLabel(WGPURenderPipeline renderPipeline, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPipelineReference(WGPURenderPipeline renderPipeline) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuRenderPipelineRelease(WGPURenderPipeline renderPipeline) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of Sampler -WGPU_EXPORT void wgpuSamplerSetLabel(WGPUSampler sampler, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuSamplerReference(WGPUSampler sampler) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuSamplerRelease(WGPUSampler sampler) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of ShaderModule -WGPU_EXPORT void wgpuShaderModuleGetCompilationInfo(WGPUShaderModule shaderModule, WGPUCompilationInfoCallback callback, void * userdata) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuShaderModuleSetLabel(WGPUShaderModule shaderModule, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuShaderModuleReference(WGPUShaderModule shaderModule) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuShaderModuleRelease(WGPUShaderModule shaderModule) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of Surface -WGPU_EXPORT void wgpuSurfaceConfigure(WGPUSurface surface, WGPUSurfaceConfiguration const * config) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuSurfaceGetCapabilities(WGPUSurface surface, WGPUAdapter adapter, WGPUSurfaceCapabilities * capabilities) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuSurfaceGetCurrentTexture(WGPUSurface surface, WGPUSurfaceTexture * surfaceTexture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUTextureFormat wgpuSurfaceGetPreferredFormat(WGPUSurface surface, WGPUAdapter adapter) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuSurfacePresent(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuSurfaceUnconfigure(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuSurfaceReference(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuSurfaceRelease(WGPUSurface surface) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of SurfaceCapabilities -WGPU_EXPORT void wgpuSurfaceCapabilitiesFreeMembers(WGPUSurfaceCapabilities capabilities) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of Texture -WGPU_EXPORT WGPUTextureView wgpuTextureCreateView(WGPUTexture texture, WGPU_NULLABLE WGPUTextureViewDescriptor const * descriptor) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuTextureDestroy(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT uint32_t wgpuTextureGetDepthOrArrayLayers(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUTextureDimension wgpuTextureGetDimension(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUTextureFormat wgpuTextureGetFormat(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT uint32_t wgpuTextureGetHeight(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT uint32_t wgpuTextureGetMipLevelCount(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT uint32_t wgpuTextureGetSampleCount(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT WGPUTextureUsageFlags wgpuTextureGetUsage(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT uint32_t wgpuTextureGetWidth(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuTextureSetLabel(WGPUTexture texture, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuTextureReference(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuTextureRelease(WGPUTexture texture) WGPU_FUNCTION_ATTRIBUTE; - -// Methods of TextureView -WGPU_EXPORT void wgpuTextureViewSetLabel(WGPUTextureView textureView, char const * label) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuTextureViewReference(WGPUTextureView textureView) WGPU_FUNCTION_ATTRIBUTE; -WGPU_EXPORT void wgpuTextureViewRelease(WGPUTextureView textureView) WGPU_FUNCTION_ATTRIBUTE; - -#endif // !defined(WGPU_SKIP_DECLARATIONS) - -#ifdef __cplusplus -} // extern "C" -#endif - -#endif // WEBGPU_H_ diff --git a/wgpu-natives/src/main/c/wgpu.h b/wgpu-natives/src/main/c/wgpu.h deleted file mode 100644 index ce9c7589c..000000000 --- a/wgpu-natives/src/main/c/wgpu.h +++ /dev/null @@ -1,265 +0,0 @@ -#ifndef WGPU_H_ -#define WGPU_H_ - -#include "webgpu.h" - -typedef enum WGPUNativeSType { - // Start at 0003 since that's allocated range for wgpu-native - WGPUSType_DeviceExtras = 0x00030001, - WGPUSType_RequiredLimitsExtras = 0x00030002, - WGPUSType_PipelineLayoutExtras = 0x00030003, - WGPUSType_ShaderModuleGLSLDescriptor = 0x00030004, - WGPUSType_SupportedLimitsExtras = 0x00030005, - WGPUSType_InstanceExtras = 0x00030006, - WGPUSType_BindGroupEntryExtras = 0x00030007, - WGPUSType_BindGroupLayoutEntryExtras = 0x00030008, - WGPUSType_QuerySetDescriptorExtras = 0x00030009, - WGPUSType_SurfaceConfigurationExtras = 0x0003000A, - WGPUNativeSType_Force32 = 0x7FFFFFFF -} WGPUNativeSType; - -typedef enum WGPUNativeFeature { - WGPUNativeFeature_PushConstants = 0x00030001, - WGPUNativeFeature_TextureAdapterSpecificFormatFeatures = 0x00030002, - WGPUNativeFeature_MultiDrawIndirect = 0x00030003, - WGPUNativeFeature_MultiDrawIndirectCount = 0x00030004, - WGPUNativeFeature_VertexWritableStorage = 0x00030005, - WGPUNativeFeature_TextureBindingArray = 0x00030006, - WGPUNativeFeature_SampledTextureAndStorageBufferArrayNonUniformIndexing = 0x00030007, - WGPUNativeFeature_PipelineStatisticsQuery = 0x00030008, - WGPUNativeFeature_StorageResourceBindingArray = 0x00030009, - WGPUNativeFeature_PartiallyBoundBindingArray = 0x0003000A, - WGPUNativeFeature_Force32 = 0x7FFFFFFF -} WGPUNativeFeature; - -typedef enum WGPULogLevel { - WGPULogLevel_Off = 0x00000000, - WGPULogLevel_Error = 0x00000001, - WGPULogLevel_Warn = 0x00000002, - WGPULogLevel_Info = 0x00000003, - WGPULogLevel_Debug = 0x00000004, - WGPULogLevel_Trace = 0x00000005, - WGPULogLevel_Force32 = 0x7FFFFFFF -} WGPULogLevel; - -typedef enum WGPUInstanceBackend { - WGPUInstanceBackend_All = 0x00000000, - WGPUInstanceBackend_Vulkan = 1 << 0, - WGPUInstanceBackend_GL = 1 << 1, - WGPUInstanceBackend_Metal = 1 << 2, - WGPUInstanceBackend_DX12 = 1 << 3, - WGPUInstanceBackend_DX11 = 1 << 4, - WGPUInstanceBackend_BrowserWebGPU = 1 << 5, - WGPUInstanceBackend_Primary = WGPUInstanceBackend_Vulkan | WGPUInstanceBackend_Metal | - WGPUInstanceBackend_DX12 | - WGPUInstanceBackend_BrowserWebGPU, - WGPUInstanceBackend_Secondary = WGPUInstanceBackend_GL | WGPUInstanceBackend_DX11, - WGPUInstanceBackend_Force32 = 0x7FFFFFFF -} WGPUInstanceBackend; -typedef WGPUFlags WGPUInstanceBackendFlags; - -typedef enum WGPUInstanceFlag { - WGPUInstanceFlag_Default = 0x00000000, - WGPUInstanceFlag_Debug = 1 << 0, - WGPUInstanceFlag_Validation = 1 << 1, - WGPUInstanceFlag_DiscardHalLabels = 1 << 2, - WGPUInstanceFlag_Force32 = 0x7FFFFFFF -} WGPUInstanceFlag; -typedef WGPUFlags WGPUInstanceFlags; - -typedef enum WGPUDx12Compiler { - WGPUDx12Compiler_Undefined = 0x00000000, - WGPUDx12Compiler_Fxc = 0x00000001, - WGPUDx12Compiler_Dxc = 0x00000002, - WGPUDx12Compiler_Force32 = 0x7FFFFFFF -} WGPUDx12Compiler; - -typedef enum WGPUGles3MinorVersion { - WGPUGles3MinorVersion_Automatic = 0x00000000, - WGPUGles3MinorVersion_Version0 = 0x00000001, - WGPUGles3MinorVersion_Version1 = 0x00000002, - WGPUGles3MinorVersion_Version2 = 0x00000003, - WGPUGles3MinorVersion_Force32 = 0x7FFFFFFF -} WGPUGles3MinorVersion; - -typedef enum WGPUPipelineStatisticName { - WGPUPipelineStatisticName_VertexShaderInvocations = 0x00000000, - WGPUPipelineStatisticName_ClipperInvocations = 0x00000001, - WGPUPipelineStatisticName_ClipperPrimitivesOut = 0x00000002, - WGPUPipelineStatisticName_FragmentShaderInvocations = 0x00000003, - WGPUPipelineStatisticName_ComputeShaderInvocations = 0x00000004, - WGPUPipelineStatisticName_Force32 = 0x7FFFFFFF -} WGPUPipelineStatisticName WGPU_ENUM_ATTRIBUTE; - -typedef enum WGPUNativeQueryType { - WGPUNativeQueryType_PipelineStatistics = 0x00030000, - WGPUNativeQueryType_Force32 = 0x7FFFFFFF -} WGPUNativeQueryType WGPU_ENUM_ATTRIBUTE; - -typedef struct WGPUInstanceExtras { - WGPUChainedStruct chain; - WGPUInstanceBackendFlags backends; - WGPUInstanceFlags flags; - WGPUDx12Compiler dx12ShaderCompiler; - WGPUGles3MinorVersion gles3MinorVersion; - const char * dxilPath; - const char * dxcPath; -} WGPUInstanceExtras; - -typedef struct WGPUDeviceExtras { - WGPUChainedStruct chain; - const char * tracePath; -} WGPUDeviceExtras; - -typedef struct WGPUNativeLimits { - uint32_t maxPushConstantSize; - uint32_t maxNonSamplerBindings; -} WGPUNativeLimits; - -typedef struct WGPURequiredLimitsExtras { - WGPUChainedStruct chain; - WGPUNativeLimits limits; -} WGPURequiredLimitsExtras; - -typedef struct WGPUSupportedLimitsExtras { - WGPUChainedStructOut chain; - WGPUNativeLimits limits; -} WGPUSupportedLimitsExtras; - -typedef struct WGPUPushConstantRange { - WGPUShaderStageFlags stages; - uint32_t start; - uint32_t end; -} WGPUPushConstantRange; - -typedef struct WGPUPipelineLayoutExtras { - WGPUChainedStruct chain; - size_t pushConstantRangeCount; - WGPUPushConstantRange const * pushConstantRanges; -} WGPUPipelineLayoutExtras; - -typedef uint64_t WGPUSubmissionIndex; - -typedef struct WGPUWrappedSubmissionIndex { - WGPUQueue queue; - WGPUSubmissionIndex submissionIndex; -} WGPUWrappedSubmissionIndex; - -typedef struct WGPUShaderDefine { - char const * name; - char const * value; -} WGPUShaderDefine; - -typedef struct WGPUShaderModuleGLSLDescriptor { - WGPUChainedStruct chain; - WGPUShaderStage stage; - char const * code; - uint32_t defineCount; - WGPUShaderDefine * defines; -} WGPUShaderModuleGLSLDescriptor; - -typedef struct WGPURegistryReport { - size_t numAllocated; - size_t numKeptFromUser; - size_t numReleasedFromUser; - size_t numError; - size_t elementSize; -} WGPURegistryReport; - -typedef struct WGPUHubReport { - WGPURegistryReport adapters; - WGPURegistryReport devices; - WGPURegistryReport queues; - WGPURegistryReport pipelineLayouts; - WGPURegistryReport shaderModules; - WGPURegistryReport bindGroupLayouts; - WGPURegistryReport bindGroups; - WGPURegistryReport commandBuffers; - WGPURegistryReport renderBundles; - WGPURegistryReport renderPipelines; - WGPURegistryReport computePipelines; - WGPURegistryReport querySets; - WGPURegistryReport buffers; - WGPURegistryReport textures; - WGPURegistryReport textureViews; - WGPURegistryReport samplers; -} WGPUHubReport; - -typedef struct WGPUGlobalReport { - WGPURegistryReport surfaces; - WGPUBackendType backendType; - WGPUHubReport vulkan; - WGPUHubReport metal; - WGPUHubReport dx12; - WGPUHubReport gl; -} WGPUGlobalReport; - -typedef struct WGPUInstanceEnumerateAdapterOptions { - WGPUChainedStruct const * nextInChain; - WGPUInstanceBackendFlags backends; -} WGPUInstanceEnumerateAdapterOptions; - -typedef struct WGPUBindGroupEntryExtras { - WGPUChainedStruct chain; - WGPUBuffer const * buffers; - size_t bufferCount; - WGPUSampler const * samplers; - size_t samplerCount; - WGPUTextureView const * textureViews; - size_t textureViewCount; -} WGPUBindGroupEntryExtras; - -typedef struct WGPUBindGroupLayoutEntryExtras { - WGPUChainedStruct chain; - uint32_t count; -} WGPUBindGroupLayoutEntryExtras; - -typedef struct WGPUQuerySetDescriptorExtras { - WGPUChainedStruct chain; - WGPUPipelineStatisticName const * pipelineStatistics; - size_t pipelineStatisticCount; -} WGPUQuerySetDescriptorExtras WGPU_STRUCTURE_ATTRIBUTE; - -typedef struct WGPUSurfaceConfigurationExtras { - WGPUChainedStruct chain; - WGPUBool desiredMaximumFrameLatency; -} WGPUSurfaceConfigurationExtras WGPU_STRUCTURE_ATTRIBUTE; - -typedef void (*WGPULogCallback)(WGPULogLevel level, char const * message, void * userdata); - -#ifdef __cplusplus -extern "C" { -#endif - -void wgpuGenerateReport(WGPUInstance instance, WGPUGlobalReport * report); -size_t wgpuInstanceEnumerateAdapters(WGPUInstance instance, WGPU_NULLABLE WGPUInstanceEnumerateAdapterOptions const * options, WGPUAdapter * adapters); - -WGPUSubmissionIndex wgpuQueueSubmitForIndex(WGPUQueue queue, size_t commandCount, WGPUCommandBuffer const * commands); - -// Returns true if the queue is empty, or false if there are more queue submissions still in flight. -WGPUBool wgpuDevicePoll(WGPUDevice device, WGPUBool wait, WGPU_NULLABLE WGPUWrappedSubmissionIndex const * wrappedSubmissionIndex); - -void wgpuSetLogCallback(WGPULogCallback callback, void * userdata); - -void wgpuSetLogLevel(WGPULogLevel level); - -uint32_t wgpuGetVersion(void); - -void wgpuRenderPassEncoderSetPushConstants(WGPURenderPassEncoder encoder, WGPUShaderStageFlags stages, uint32_t offset, uint32_t sizeBytes, void const * data); - -void wgpuRenderPassEncoderMultiDrawIndirect(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, uint32_t count); -void wgpuRenderPassEncoderMultiDrawIndexedIndirect(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, uint32_t count); - -void wgpuRenderPassEncoderMultiDrawIndirectCount(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, WGPUBuffer count_buffer, uint64_t count_buffer_offset, uint32_t max_count); -void wgpuRenderPassEncoderMultiDrawIndexedIndirectCount(WGPURenderPassEncoder encoder, WGPUBuffer buffer, uint64_t offset, WGPUBuffer count_buffer, uint64_t count_buffer_offset, uint32_t max_count); - -void wgpuComputePassEncoderBeginPipelineStatisticsQuery(WGPUComputePassEncoder computePassEncoder, WGPUQuerySet querySet, uint32_t queryIndex); -void wgpuComputePassEncoderEndPipelineStatisticsQuery(WGPUComputePassEncoder computePassEncoder); -void wgpuRenderPassEncoderBeginPipelineStatisticsQuery(WGPURenderPassEncoder renderPassEncoder, WGPUQuerySet querySet, uint32_t queryIndex); -void wgpuRenderPassEncoderEndPipelineStatisticsQuery(WGPURenderPassEncoder renderPassEncoder); - -#ifdef __cplusplus -} // extern "C" -#endif - -#endif diff --git a/wgpu-natives/src/main/resources/libwgpu_native.dylib b/wgpu-natives/src/main/resources/libwgpu_native.dylib deleted file mode 100644 index c6fe48c11abd99d783f6b4e038c4c4708fa746a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5151320 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%0Dfw$$Y3uVJH@+#PRw@)qJPj&rhoeLKZJh3|H1U5 ztk8e%kEVai21WnbKbrnSelqZXq0{YMV(ew}e$@E|GgT_DL|6ux2R_KSe{E_tUaK`@`>Gbbs zKN$*`-r#-p;nstGGCwRj!M{%*E&}`?%8vlbk{`!ItNloRWDu8a_Q1*M{P6nw+oeDE zC)5AwBR_pQngXu?Ep&wf9N7BEg zNzs4WkEXx>Po{tT`X53+;QwIyQC8@OR{N3kKmMGezbu`8vAwv_LW2j}Yw+h=-Ji#* z8V1%5?3e_zd+Eo#EDIp}#eU?4Y(wXwWOC0=Y_aLFN0?8ujFCdlev_kBG~K*jZCg)| zMNmv)iD-|c>mvsr8Hyf%>KW3s+WKd5o@{~JKU2xFSJM~Cg_7)`Gbo9UCq81T>|N45 zz<-r`(M@!D1PfvG>0&>1(XGY0z5Nclp~K=10cQ?^OQ8nkuu|+G0U()pu-Enl!Pp)- zVtZQ~jYg@ThclZI1w&pQVWOm?G zZ*MAldO!T^%4gT>lGLe%VcRhICU-OWufmF4iakp)zDd-#j^ zBxTQ=tFp0zfg2!r4AvTZepc)(Q)J8krq9Rt?7oDc4i!*3?RaSm~jZN_(LNK{O&*l=(kG%yj9|Sa0D+npa)2HmfXn)OT@D zZEdB91AOk1TQ9j!wlWa~hUm(xpl58<;Z+ENfotjX^DemUYgL_Erw)PE@!sXLeZDF{ zVRc)LrWE)Y3Lsv9ZWbzr<%Oe99!)l;u-A57LGOJ@+oxvIp#(BhjY0 zmW;JCd2cNqVlOV_jSym=K8!2XCu`Y;!;w_v@9jlaKDmG7m$1On^+cY7=+Hy4I42&? zT8`{Up}-EH0wv{mXfgYA-7EYFeZ%?OT~96|PX^pTo{0P>dhN2-Lgnh;n*$Wk_6@b& zz>)RnH77Dnf=b5S%Xo^7@gaiLen6~pK%A5WVRuADA{q_=(LYTBqAB>P{Xo0Nv$-*j}pAsD!ki* z#|5k-?GuQ%_@_gC;263p4#YdUh-c=r>&^uG*gJpxCIxeLV+!W>C}2!}_klvRPdFu= z-;O?7$k3w-X_wQB=%Kcc(d;eKj;n{>29UHkqBmJ;cA`|Olstm+!jY6{r9ZLCC~p-z zjDp1SieCWBno`GKtL7u`X8SCQY@AR`l}#^#o}#j4S~69|b=nQt;O= z@hNku8$iY11h(18)v8u1RiITp${TZWj+BbsB2S5ZT?VCggw0dwki6U8(2XQNDe4{# za6HzN<#aj9WcUCI0Oe+dG8H^gK2cCk+24D}JI zM*HtwfyWl$(dyu_FHh=G1U#Y1LjdFn=g}lCx3Pe=HV=vRdhVAgWludfaZzH5Itulu z>an3W0vENHBvZA!YZN<$fKrlZT*e|mjoO(ix_wFQAt<&hsb6*>a*HS1F`S_QmNfuo zUqL*qwNc(DM!C%A>H}rNT+o+CIPqr&6>IRgs;o zFl>h65r65_vs9qFH(0G;D>RC>5JxlibPp9e@$HCMxQ}e8 zF`bQfMS(9xt|;*208aYD)qbQ7pEwk50P2_h`Li->cDBC}9l(E;Uim#t?Q^U7 ze6%m|_NskY0BY$II#xDPUp<-j#=aQ6+9}DV*HhSJua+!q!Y)T$d+m6yO`6!>aO1y{ zojDPmnG?@VcD~wA!af)E;rHsJ322r2Xg}SW@4?rNtykTeu<aH3VwR&w}8zx8yFJ=n3eFTA^(Z=%sE44BRMOm}}5 zF#JoO_hC`Y?cMRRx%qUXOd$Fo)O2aD%oOR!OU4c$f;QNPBax+ssF7GB zrOq$ZR!%_BYV6~KZ6SVSBV07fuddep!Y>b5^;W^u0^UZS3pE=}U$`g4Oeq#cV&|d2Gdf6) z?E+uIi}TQdChow-A>e%%oO#^SS&J-EOal}|D_kZIiwk2iZ&?%a;+YV!VigOlRRtt_ zQFg3IRhs5PaW|(;{E+ekF)W zV)ibQz%SaBTGbXl0F~HUm73o4NT+E_f4B1Mp4!SSt9hnbJNbpmue)nE+`;>mo5HxS zDo2zAzz!kq*MV*HeWH2B8dv`DzRbDu{-^vA=HCtgqnDtR zJg=kX8@=IUq~qW9Fe8fnR$rJad$U$UU2t*q0#{0q0Cb`jc^hfJumU6c;Ia3@uK3Ny za)|}Q(OiGgM(tJ=c(5Rc;=xr8qqUtK^ObFVA*kv+7zZLG%IhQjEwb6mi;<=KA#A5w zqpy->Lj3&j;+)LT#gKzMSHldal@r&LzXX~F_`^4i)48r%?Te4o+zrFR)cR{^p5UFUXvov#gcK-fMd?lpkH9bV;0-7lACOu^ z4>xx}PhU3|ILZ{lUS=qTW6rkxTXmx!$wSzU(uDzImzc9pAUC`?`yd)pN=Obzx!ib< z6lkI*rTh&jFXnH}IS|lm@VECz{Jns(+we#GTzosaxo}33+LY;cj?&G&(4b>4QAS~> zd)Bn}SKlW4hIF%U9J;rvEYXXc6&?MxP9^K^c$l25@h4=3*N%qT_XWE)h2;kK;kC=% zB)MU4v6tbn_u5}(XKV6%;k}(!!z7>r=P2zQ{yH<*IX)=7=b#XlRmus&9ThdjPmhg4 zlhfBH>`m~5&YhpMF0#Mr+wQuk1?gP5)t|_vn6ejjF6x~{5?3qMnBGUwtH(`QwD3%Ez_=pn-~CR>Gvr!) z5XUQo{PDrK7#U^OLPVZPfYML^JJp&v2HZsG*^!8sJk7l1D~6s$SXMSE%+DW#CwJSB+m0jbW8f(Vl@&T((J`N@XbyVBaRip_L65*i@h|8d6-ui z6Z~-G@upUwm)O?egFU^H4T{C)Szjzg5Mzi)?6ZUrNe1 z@sC`ZB`m9bpW8dCUo15eTI}VQQR4!)hV0uv0uN5_yZ74Q?lop zuADo;%CX;W6m=EP2X681g5cs}`|(}-=;uRKReLrn5Y-cas(mg-!an#a|0|Ao*n5xe zj{cpPKbcaRBU0Mck2gw8wzpry5il{oFqv3rKYY7NT$EOPk-c<5S2@X1E#n;_9J)1V z%t6Ht&&9ag@Ddns21%y!?MM{w2Z}UrW&&ls;R~4P_;)=PE1JKkD!&%6g6H#S1zl=> z^X~k5T=lku|4|QrBjZKR*XV73vls8BzZmCh{HCf-JmFAR5U@uw2lIgP_l)?WFSae8 z&W{45eaAZR7!Ta|v0n#kB?lI@eKolsemZ|LUL@xW_Fy`1?TcXZ@Z?HfHuW3U`>!CM zI*zATMo1z~uee7E0%mP4(wy@r+8bMU|Gmt*JU=IXkk_N@vnI41zSUUICG6DMk+(v_ zytx>!2_NZJ|I!WW_{#G+OR?Dv)ZX9yceqQ}W1W&oL)UY5ZpR>-p%cVop^tSnD3RffK3U-vG}qU-CSMAXRnZ&pY>I=Sq)L-+3{x*c!{VU_s_(0 zl+yY)7w>R`64)Gv3Xxg0YfH8@u)pmd8NGe6V=?0FQAa{m48xC?fTX?Z_=hk@Sd;$^ zr%>i<5Tu+!kxju<;Qq-7T^QceA$T092_1zQ9=lL8F}b&uwDrxWGe$fFJ^bd`^1cQ8 z$xlhw1og6peAq>KahP%wlmhCDXKuc^b6%_;df0v71lSJ1i@g9D{FcY*^KHztR5Qmz z3EHRUr;_K)f3)N%!2DOK7kohnR|6(yHy|K5jO)Y@f(0k37hD|5b8*vSIrAYqa8r2$ z72p1Z%jzT#_g(J}?wgoT`68Rgo1qea4*5~@sSu6z?#;k=pY^WmZ-Tbrl2@yuYZt7} zg`-`o3KL^URlv;KSIhKq?34ebeyN~Mm8M^CR;VR7fG7Uaj>SD0$7~9xvS`i?iVm!U zKnLG?q3D>=4k4bya9lt9C+VrVb3gRJp@Nlh8bR-UEClI7(0WDCG$H8bBtgad_RRmD z{%^%XvEBY5J;mwt^j7rD@zS#>ot_#0O?pN^DeRY?8R_(#9Ap1HNiFXoX)TqzP{r9w ziCt|aZuccD=RYlP(b@Z<=V09l9ZeItdA5+mIYUT_;s!x04f2eUv=lcENwv7$m!uvw z|H<(aH4Z=z5lZi(`*sRF&B*f7vsIo`>4_rkf194XyAMDQ5lW}$<&T6O8(Cg@IB$!{ zdHQEN(*C#Usf2ys?)ag+5utQ?+CCI|7#iWFCs&?R`-lFN|808m_NT8&k2rYJ#?Np? z&yX~F3frM4@4rCLQLh1B8`<~EKokq{{cIc`6FVIt4eE@ohP&z%I?+|+G zTzWP`XK?;$ho0L10zLIO__D8lD{Fyg!dy*+(&$NB-}VA^sY&8`gFzefp|UImaZl~; z-nV$}ISae#wVwOx$ zoM+h2VJQcXVkN-aH|}Pl1peB`eku1+rf=RW_uF~jyPK3JDfW#W(P1Tgm&^|A~8SC*YootP^v3%Ob1kU@Wpe?(bb>iGR%T?@xkfJ{t7;SnplR z)pv@s&Dlf!%{DF%)kYM(b=+Q6dm7@c3n5!JgM}{y5W;qq6b~K2_1-w3f@+@N%9A}1 z5d+|XXdjI%R_csO$)#K3{Dq1f?YM9Tw%;niy2OroVnKMGS`f~gOLCk=BG$xQB%XS+ zCvBukJ2B!(a~6{wWf#Y(i*O3oJ?X}-+@rk<>+?tP2M<--Yxql|m=^yj??;5Ev*{&x zX3U2xq{B<@qMQ7fs0? z>iAJ;8j>H4=ehn@;IJiAa7ey?;v454aAHAQQq4jT5S1!oIM5Y_lv36fUNn$7pNi%0+L*#?t!T_40 z+0+?Pkm4bnmy_BaeS*g(lO*0zVkY4aZ1QcRr*a>E;O?#Z+$dun;kxWBag#?a=$2eL zzZiPRZ=I5eic~MP!Dzz59WIY0&CrsGm)ZRLEwV$!gL8klII%zcK5{@GR=n_p{zcIS ze}&M7HRK1u%i5!@=6{Bssq=p#Jwr*4wYb9W+ekNBxQ>WJNgWM~L_E!IfM6ywQUo^k z#XnFtC5iJxJY8QG+FM_BU37~o?1!;Sqa>};Z4Ae%#P_#PgZ8axf{N)%=v4dHy+->I z@fykahyBRgS;S5qSkbB&0?xj0>9j4X;Nwyn>2zs#xlsLw5z1w0UsonR1N&GtDb6;icM^5~@1D~-X z3HbINVYvT+$$!Mw7kt;sO|j8!C~= zqx#AIPVlGIZ+s0Bzy`Ds{sd<$`@JZzrlY|@odF&3V83I#)|d|;m$r7|vW8pZC3x#4 zd$FnH%#yP%?Q&MhRJ-^>G#K7cES==oGdx4hK(+!7L=};+1c6;+rqvU8))E0;wnrin z0n9#RrohNSFI!`VqmY{ud*Xru@E`En1J^}?J1rgDOXLCMM!;=<%mZ#Fz&ZLz$1zB2 z%;7F&(_@n)kBm#k4>;!)_h_p)@_q%$)Ms|TSz;~CHLM_+~zd%|#@*mRD&`ag1 z-9}Mpk|%3uRZ=;HR`8YTrF|D9pGEN3709LP50EuRVU+2rY67(4blAx2~ImY)psm zsvy=wd>XXRDaC&CG~M5HijG<+_=3Lfy(~TBIY<$-!W3wQ=?xH(D3oQhlwiF6^T5}0 zTGo1W5qQA&rFVE1t@+};$q$$^b^6%SdadeCC2DzqQ^(^Erj8k4axTEv>Sl2cnp%#m z8olUUt?E*iHC9vrAOO_*jZ*GX*1!&0?l;P^@r>-&K*4r!vxBZpz#A2L8uuS)HefzT zJS3J!i_9gC#x}o+x48SQV1DkJsexj{3BOg>9@j$o(ASjUq>X{eZrd8) z3%?s{4_-UU7pntt1-tC2>qhzFe}}-{)ARd<+W&C-LOrH}m7T7s%4B#JX4ZHSf5ykb z-SwVb*iks?MNW8jVi~K8@UBK?*b^BRO1dr^?V)Rm(A5=T%pehX-y0nTxZCVu-7uk^ z(Fyi*(e4F@8hc^TIP+8FmEcHYOTjCUvE4>1i>{Z+ z1)lC97Ex$uc5yTFHd0In%m<%1DKJIuF?3Y0)0!HAO0Mf#{;m$a37` zj`gLY5vf*XYTPnbzoD#bHL|kOJEvwUy_0|DP{@tK$&BO@ORK>qG~;#qoIoG0nzX9( zj%Pw-8neyG#d_owoP`_9CU0nwvXMe$Il2p)p@w33GqY&(H!@QR--8Y4IL`?*=nZQr z_kjvt(Tg7Ejjmw=G?wLoNm|tuv_Y>UqDQrLOR2*2wkR}CHOMXoP$ZB8I&NhEG({#S zQ-=VAQ(y#csoPMN<5*J7EW4Xy)t>gjd$G>uP9kr^(CrpO%J zIxSZuQx_#~E0ed?$+9(Ws&-sk~gdteC9wbd^`E z@(NX6h02?w@@A;KX)3Qq`{3mRNfGkm#6Y_aY4+{4D@4}xr!G*-VluohBk-(8jclv z8}uP2EROXxQ6!+t=TMw5F>XMXIC2gxWV)0=UFlJ4MH0l_0z%YciWMttEU<2 zsZc!?tEXb8o_dWHpBq zp5_or)*dMsslY?PY~*l=4^HZQ$2@_*B3mDO52@CwmO$I{AQ46_p_>r_Yx?T4LwP(q z9$uF-A0aZ!m`sJ(HF!uOUK3i8$pyPs%cN{Q3%%&*U$Y(`jVH^80IEG|IZTeGXe%)` z1##-a3_ZO4OV|^=vF25f>|bmoh!qNzM)KdDG`AP5s12gR#{vK(VF)ga{Vay+0yV2^|;v9NiRuLKd4RP=bc_$N5V zTB@ylD!&${Z9PtjdMb5AB~09rmruu)Nv{rhd72uRj%)`$} zTYl?CUM08-69$&LW$?US3rZl=6)b42tYzn_DbN1v@B!eB#UY`a_lUTgYL*m7W@C+H zI7%$iO6tu=YgJ+$FNRq6z_%Vxkc9@77nM91z!($iwjQ@FavSjhk9aqC{c6GrrzH*x z{5R3MjL>N?iktPKH+5sHu1#8}kDcDUU?2iuCmLV-w|u^9T}JSe*ly71)W;eD&Q{%A zvOHjx)raz9e7Sg1Jh7fd^gUkEoh%caSFkH!Y;yMlioRvMEkgFN7}DDyoEw45E5V)q zbvruwkNLuHof`$}#Mxi8E}%_lmU$O*ZL}Z?FG925cmw#?*JWr`CzG&Sla13J@*A7< za3eVfMlaigt5#*B2V8s1U-X(5egg@3fBr<{3;&kSNFu&xP*x9LMbvMVwUripK$EeH z?9b@dsT@)4OWmyGSLt{$?fBBNESzq1b9gUh5=w{BFor48s7MmuVeUQh&8(Ga2*mo%s;^0wzW zv`TBk4fUv(6}ncpvc`Vmnr|KEb6Gg5)AyQZS)FUeg07}~G({+M0O#W?h+Ik4t$sIj z9PeBGsAHZ*bed;Sqv1s}K+RN)Fb*u;oYDX?ltJ8paWxc^IM_u!uZIg!aw*whE~83^ zBdUXLhU&CipGS453zo9u5xB`5a}tj6^Ck3liaTJIoQ5sdNy#p*NoB}&8@vqZq(xpl zYCnkm=5Goyg$GtVU-9&jny%~tXeIU@65x+9@1ZK7(@cvzHH^9eE<9@i7Jg7BE?SvB zOl{$B+JXn6;Hk3iL$2#pwNG5nb)PCPrm&g??U&ksL<4z^f0aDMTy+MUFjh3!m?WJV zQQTwRWJUY;tYJ2aIb}&H`6tGL{I}|u)RCc`G@mjD8W~6Q|sRxke(BZOUm!x=h4ZwH` z1ZVrPf>P?HO1P{SeG@!YH*ty_6J}D~*p9j>v*t#f;q9m!IonwfRcfZW4i;`179OXP zusg6GhJFcfM_@@Ucsiv{y`Uk9P>sLnbuD}jMlQAsCmK8aTRw61OS9iPt*ziKzwvy$ zXR-nnj`W#XNmm%W-%u`C)zr&MC)B_}quu(O;mCq{A}2EDL&0ECejiJiH&la6Ou*f= zs&kHDq0;5}4rZ|PMp+PL05nw2$xt~RWYs@8WpJ(=DjEz8jA8?3;|z4QU36>8h#Vv% za)2vM-R5-l>ih7L3jjF;BoRRD?Ym>NuW^^k_B&ynuZ`cR;($X3!Fon2E_^!$P4dy|@tDdQL@rOly1 z@$0P7&S2nK-qAm=R!DggY1EJvAqZh>9fI6Ob7jhJ;jlWo%mY zlZm^dPh&^^hvcnYow~2QH6-ONRP2#8u~*uYx2@=|ggzB{qdBPbBLuY!O9WTPmNo}x zh={rQ|M&8xRZXL8-H9PQ5n_`fUsqxnr}A6rPb42ezRHZ|ggxugpNmAk9OLW(*jq5@ zs6Sz#oh{3W6-s|PM%dDgGq}>S8e6zTnYaqe8`H973(j(;#qIK>40LlD%RwNwszlDC zP|0G-7d2~<0SXwO?KhrBSd%HuHB>SkZ``#S>rv5ud!@9~EI{0Lq6(zgW9BlJLpu#B zF})p{YOW-H-pqEKX+bIY)FE?%Se?$0`57M6kSWFBgSOX+>*6^F8Zy%_kRjt}XAGHZ zJ=(b#nX${Los;?yhzrJJ#jMn-Vlu?wsy7^e4UIjSAJ8J)O*#DEacI@&0 z&)F-sSKdO0yYiAvG4jgW4ST4P9RvG<6q98yYU$<^HVe>Z|0V(DImj=hu9#A{sO&&e z_cMQ*)D?NGmO;pj(b7)L*J}MYA`{@<_1~cO}sO_}n_ zUvhPqs_*VYm4v=~AW>fznQWX)$@^^nfh4bHWSZm+_ekCXWXAXwI4?tr(V)z)dp!DX z^+1pOiBr=x66hXF_&=k#6}wB~2wfj&p2(=I*dVHP^5m@6oc)|q^!%eyWT1XCFAM}o zcqE2M#&q}z8gp3Lcr=$Oj*C#aKp`J+P{1>#7k$C_9=Iiv>&>yDDE*;$&(D-*V~f7! zV+cbt*YqDsls@ItqPr1Bd4n%>SnNIsXOboGf6xVpEUhYn9Jn(OgP>!r=lDYdMV|*R z)6D@4$oBdtuty8?0hB;a^YLV<82*$R}d#3o2Gm+L#cAqxHrB&XWnT-(u`$ref*;=PjmAyUkg;O5Fa zk=ac6FyJ(qiI>n|j`eA`zIrHS*4Y+bhq5sJmTm_>bn7k##es)(9qHy$K4ISiVI6AU z0@3{1@Jl{~9XE+TLczXo|)mMUyqwY8|a^jZfDs}AB2FqYNhQU*SV zoBbSr(OdA1!{y~UybXU+py;gy2aCHs=HK!ubf5@Rz2A6^ zvh;IMCjKwo_#4EBesze?vnjYZ>(9+v_|HgBl^^s|y^^8zr3G#A9!dF0@vqB@%yh)( z%UoA{mO+qQAF(VOsyRhKwBRoKoiIC6i;L6Q0pp(Kc(OB2=9eiX2c6BN02WtrkuHjr zvyR%*;$9ZsVCd{+W!aI36YgT&S}rFIj8b$#C2xPAe3tx?@_COEY*e=D7kMP|fqvAA z;+Sx@f>I?Cm{TGhZxuYYKTZ_cLjgk(pCXZXVStjz()J{>ragJw3TC_GuK*$qaf2xK zi@O1eldr<3h~F6$zu$;|+t>>c#IOSI$XTt5L0d_IFDrul zHGPl#>BbxJuF4;w_IIRfYe|kPd^h%Yg)es?sdQ9Fa?Pqmo}l;`jTEe;b1el5Wffk=T{h>a}2JY#Qx(oXE-+tiwnlu5TRPAo^PrMzQ0zxcgyQp{sREZHXJ=UqNnLM=Ue?VZ1^yQ z^4y_Au~iLc(hQI(+kA53pplPiAFt^zAXuRfx?3Ox=uT$aS6quA2h16fKzCB(s0S&6 z?rcCw`yV$sMMkoS*~seHE@HffJ#0ZACgrN6MF`WdPu+~9R6y3U9JW<*y987S_09&> z=25x6O7X<_;L*YmfNEmc7d+$)APJ0pkdY&yz7hopsC?r4)pi*LP_>UTx`an@`ueRU z*}t&*e#ov17@yhy_+S(~f73B3Y`|r-1W#jPH)au< zwLdTLbnkO~@tgUeLVJbu$=DUry?BG2^sIgQJDt(0$}=PE-GGq~EfJB@PGHCjcufkOnqH`UA<_#p5qa;^1vwTc3N^)@f=?8L)h~BJ!$ZZBd&TuPx zKds=X{YyU+=`L69GSvNvvu#QcdE+kP~Wxhco2KEayBoON5{O! zv1v(!lnLCdWi5DV81~SBCUln{p2uI{4?EfSOlEhDy{8zLP=D}@HwcWj>voWBD%%=& zzP@f}XT4)1cUablH`v+ReSQa8YC~+Ml%!%5jZyFl6eBbS>?HInwE|S+YmX4CMj7OH zJ%napb8-Va62%OVhcdwv&|))^)XQo8$KY+7GGF37MKHzu;qNkneGnu>qbYxqL0jB&y`lrZt`iFv5RDC-FJq9J;wQn z`}>~x2(Ez|1j+i4Dlx8F{mr~*Y^xI;`}+Otr|A&0wGsztt&l0`+15UkeClzLe1r|- z79z#eX>O_&miR!^R5Q^X`^-e6&&0=Sz5wh!#LH0OWyT7QEtf&YGFjz%Mw!vbC2rEd z;qn4cIb^jFsh20Q1TY23G6fM?%&s!uIBa*OAmM$=6g0dR!i(<>d6n;OYRLY` zaK|aeBL?bD493W3}Gt!R~F+p&QjqyNu=lHs`B> zR32{atJdV=>lMwg{9eQ&HF0pNzC*kK1E3XJqH<#fJ~mg94UG~%6(83Se+Wi_oHMx) zH}x5@b9w2g3TxFR87PY;ImgpQiO+R4O7rd!cYFK2ifiCel*Y4G^#%3NE_)R`A+Zl} z??_@D=yoNM_Z~?M+(#ZysY!+*=|wlxql{MdPYQkbni;tLQpvyK$s+P3CMk#%46m*M zTTjw%%n|qa%~8}vFk$d0y$!A~^=LlPz|^^$WPUXd>4{h=Sm?6AvgXggK`I^nMtMOo z_K>ncm9=Zhs>QxzF1|z=mLycILYvx3nJ%iG(&Ilq3y1Y_j&LDQmSs&?%##IDR}JgI zZ-6Q13)*T}XJLX^gkFwc!GXTfhY1}gi3}Yt5|ngk7~&x_6Z*{{dTe)*AX(_*&6f1Rrke7@P;U@3hZ|Z{rNPtVoozi&4n6(%LcN z-hX3%MjVJIOtIx`AE6|SxPnbjW+>|;snrHPz;>oIBUVfNKRCWZ4w^Tp!ErM^O3-Pd zP@Q#ZljI3yO*b%~^y*DgUs7SQ1g!g8Falw&X!UpTF7-UdCBJ8@IHtR_X{!v>5R{i% z_nMX<;F)0z6^O8IN2Z>!4kI&RiaArLvv;3Z3|H?V0g=fNHgum%#HO5sag{dQx#*9? zz*bQbmPO{{6JGXB!+54D!Kfak1)r)J;4{vXu=Y_7x)H1CPtkLneRNeB>al_9(UfyJ z_PiIn`;?045IWLP58`?L3OvKfJ}puV&Z#lfKlV8pZBECx5*`-Tr`Y{#YS5m2{OjbJ z>Y#*aAp&nY9h72Pm}}WNcVT2mm&IDxKu-w zc;Y1>nG!N;cfJerq}m8kM-?4!lQiZYSagri(0)xA7EA8pp_w*&#lRGfIuq)BVjfPf z1{1e_P9`ex7g9@JBdG_NZRR83-_bWR+XTC!JD_KNAwU~**!fArH0eCeMlrke&QVV9 ziJ|kSMml_)!-31Fq-XrNejTr-Ce}%w61eS_uQrB@t1$d4t*eeuy^bp>E?(LuJ{^IlxI3eBa%)2re z-4_DcbAH=bh)Hlui_AbXF)roPm8~n*J!#bJ23-ep!c{_S-*zK$c~BP8W}|pij3v$f z-P=kUAwa(P!LTo_9v3}>rIe8our5RJDa@sf_B($ch3|=E4rd5w@W_A>Kiv#|!q17E zz@jESM)KyI;9+=k&Y7>`EG71iWG(L+5^NIdI_L99zr9n|bzDt4vxq(MZVoGVQOQrw zr>!RYIR4W8t|wo~``-2BVX9qOPrhGHk$}k~9ziZ)6SJm$Ps)N#bJlB|sJyN2r&h~_QvwRg;7p0uil*z>!^B5~T zGCP()`>Ix6ei*GhgkvzVjw<1!+mUb=6TZao1E!C%L^Tt3sDuqH!Sgw>7L{PK#B3(; zoH43g!-OeJ;1EW_TqaCp!aXWs8WTn_;TDxJi3x+5uvjIWzyzMpiCwA^vOt0DV*-tA z06qRSBz)e41YISpXNh;2aH2{WNK9X1!ci*0V2P)h&`%}o`87&B%!Evpa5_u;jtQJ_ z(8}v9VKCu6mC%nR7BOLqN_dJTe#wNWN_gwX&hdB9@Idp=jq~j;?mx z>f=|bdXK#%^`fsxJt|aH@3*Yi0^tIS&ffxDXXA`m>{*p?F%zaR;jb#;A{g}cL?+y$ z5~i`lC??#Z66P^sFcRX|rDHNwVREFxh*oU?W@O&u0F!%s*JHknwxwkv098{>%`dVZVp=dBU9W4q{~5El*%l7y|a#r$F+U z6T6E0;ka?9h3@%U)x}6t=1$vk&~%nlBz7*>1}Ka6U>cQb^~a-dHJU<#D*rOd$FGj{ z!kR(aO-@<|J2PEU$3Izv&%R}aODgkRu{i>5-xF^1_b<*W{2nlY;Ytc-(*ROo_R()q%8y4S0w~ILJ}f_gpn=%Fhq(b_3q!G(7NYVn-^&!`VK&um zwr*xElH30g53}Mhwxr z#h)Abvy?x7;Lkn$sbk>>`12GWsY+uv@R4iZ*dqS0b7EKWXD)v(;ScAe*i7DC$RDnP zh2~qF5f;11xk=g!`1WV7fQ8Qxf?Fru$9HRe6aP4AK5A9BQAFJh8TUI`M_L$-i|k<= z6jPIXqWqR<0^aBMI`9s>T-bWc4_GdM&s;{?ix*RJK6NBd_Ie-S?3FHdVE~O8$gz#} z3P~71grFQ3Z=nxdkc+y*aq$8ZM5H~XMAn>!Z-6}*`(t~hZu7u;aU4or*Iuc)o>G4r zh*A;{M~NKfbQ4aH^W%>028LGELF6xO6XPKhgz*R{wk`7fyWfrXOL8Cfw%D_qgD{xY z-pFU{*iQXn%YI;A{~UyPB7nw&vC+81hV$oG{_unIu{{19jGy?~Vj{)fM&HMJQ26+* zmRLvJ#plK3i^@cNK6Cy_RPZEIf>saj_`QIDRxxTmyB!VQhDSRSO*`zR&Q+Z-l?5G_ zQ<(90rEEJZ_BVH?$vWX-rW111sqfjvB$qXjFt6Q95KW3pq!+ z7ghtUUM_64=%cgUshKzguHK-7TFkLaSZkAmnzK}d_oHLRU2Ng=a{qIug2uy zOl~>1%Drr=O}tI+MKy7LLm647j5`Zzs=w1#3R^d!Gf_$g*+*l*)&?ekhfuWfUi=p0 z70q$9+vC^uvYvyN2rG3i=X%0&@E5%k98_kGdmF2`3KmeSIDCn5w_QWa1_6f$Si!wk zomj!yh9W~ye+gS9F6v9q1nTDlDSOqkqkQ%g_#t{6H6xRwM*PgF+kT4_a790X^e1J` z=oye4J<0vW&B4E>jGv9YW&E7vG?|#iV=p@08xIi``b(hy@VdgaTz+xny;!GIAiiJY zF2A&@fy`7(IP5femSCH2!r1;6Fzr{LamI_&&u8D>n-(2K+DUnC84t^d#mdo?blzTl zOjpOzv5XGfgb48gB6QwufSmND^aCwu_g0~Vv)6v%BWgiQ=Li?4b|bz4oouAgZN%$X*}G8ihfIqWNjg?~9mF*# z-pyD6U1Q(T2y^x@-}s$vZS(P0fxl<)m-4aki@3Z@lg|{)I@@`hYnL zytcSaqFaON9;G~Es}i4+kKB#kLCgooqi(4;kzvUx1+%mqiN@h}J@TXoVj)!CdcNsS z1+Za=M4D*G$;%I5{`mk5+K855E^cuL4k@76?O{tzvXO;hi;R8^8)z3w(4waulHP*C925$WTgJN_tUp%}Q9WTLd0doXi z|JCXGEUjB9!rvU9nBNmns8t<;y7I!4eB1;OGs}0TiF9&fs29v{#?74Lx2`INTcE|P zX6TcHbHI4d4*h~VV)yJJZ@9O@f0cUCdc|KXg2)mm*ZPea`S5!IpPpLPP_z{*z>m`z z^4hrY#&k}C8L6Di+F34+0S_nH9yodB`ZP}7>Tq&aw!9ypexvVb)%N4yeQX7OCTc4i z1vzVlI=j{QYY?&K900T%@%k+K=7_s-4~1f4b)!gwIR$ET4L9N4eJr&h4-Kk9sH!+B zz^QP9Y{3VNCAA0zgtg|kR@8yyCo{l3N|ZgYQy-wNM8{geM&v{Ecsb)&`h!j(YUL*$ zg?=zfE9rB?dt=G^Qu5fKmZ1AtL|* z?2xJoU;(M(C3W|o(iGGrHbDh4=U#*P09s0VD%5OO7xHx}8zEd+|AE2SJpeZjw7+~+ z*g@2)=kh!uIA6+3o9vrP`uJ3YuQS(~Yq~`0=29(bbrS zDfW+jD!&-l(24xA9q;g-s9O8U)t$i}RV1DVuy(J? zQ8Gp%ZxbfYRbwwcKQq37#rd&491X$1S=Ah$6 z$@c^+_)zec-TS*PqUN~{PQ->RF(`qdIts14B(=`o+ech;^>EEm*?C`G*A8p2*9Fw4 zUXRzwtVGKYj&_)F1(>ly@nVIrq7S;8H}<1=yQ!Opxv6~$Bdp57J+Zn#TUi>#05^r> zMo9;4RpeXnezsB42`p%)M?7F$of9xF%JuMpEX0dM61?d2?{;|cE7)IvQ75)$RV$#z z{)rzWaxEB$Vah%hqg5OU?xy`%*4i&)#$U(%3A_@PqsVIDD6x$yzG18su6Vo|B{*I* zp;?TV8bI8~$rvbu0qaKsUJ`j66N;Kc2bb)+(MIj;(7=tQ(TtLnS&Sne4W`G3BO$9~ zWq$l9=HQjPGm3X@>=^7)vJ!6y3N^>^`LxpNx{kq$rbP0{4eMV5W* z5@7*P4Pzo03W9ZONrSz+3(UL2!(&k~7X<>wUOoJrjwx3r3pH5+3)Za06e>#HvY08m z3-8*-5#8_+#^>jN)7+kg?z8{27rK!B@dic!NLvnu;26ij+(qEK#I4m8B9b8p+;jF2 z?6SF&GbY63se3kJugPW@erP#f8#=>%haBH3I>QrQ)qgJcgKw=Qnt1okRbBBq(FzF0 zqIjm?I;8?JM{^Kvg(!m)bYnB#1X3OEp<8G7!ojRB^kcSMm8Wls>DD-WUV0DCb!DDb z6!2wV^{&pBB{P5FcD!LlxS?2}=1O%E$zg~gA+fq4FT8Wqr(Havn`^<*bn6zx5@{Q3 zwz?}tO30LKQ5wtb*E+klpbE{9xaPb_VraA{Y=1Zb1%EKp_&2133Z5L$2-AhI(x9#>7D0;LidPzNlE&7#)@G8na=q7tT;dDhN zW-7-5RZLQGZFcwyEMhux8pA0j;S}`GlI8Zpov<`ux_5aO{23U;rQN5P$l^m?=N4=z zjSv!x((P!O`t~DEJ%7gobKT)wCc`LaO=q1?x+7T6JO)x%0M~Fum@&D7*wTOS#2FjPLA=zjkzZjMNx-O^sPyDTFyw z>sEp+dQ*$MhSXifmmpk17W$ZBHu|#kCdN(>uSGerr*Y$UoU9`5S(DxcAR)C2vhF`i zRuQ6YRTmH*l*o`(X(McJ8|gzku3}-6A~NZGRA=vDl_X zHc$$HvN9G==Iusb2Vk8Y$2V_PdKPZ#6Jx60o^%+eBw;k$NiK=M!$i+Yu>B~=UfVAm zEk*<&{YWBrW(acooP4C#wtv-+J7P>9m#;;r0hG0EM5+Y42<<4y?-96|7VR~|I!=E1 zwG?Eu@?uVb$%Z%R<8_UmR_wi}YOn?f95Z|qIp_om8rvqwHQ+~jniNwTVe*9j@5G-5Sf~%<;bFB5HOpugR46S(i2&jU0}~o`P2lSy=xc;@$+js_N?hPk>+qZue?nY+@V|v z+wU!FzO&}j;rFF$cxS*QL^W~zH`c$4DXtm+j_lRh5as?uh0*pGD)MHCatrxCSLr*;* zFIhha)`m!#bJf?`VxAW%_OahV|Q<$ERQ|jS9 zrD9h-%h1D;sV8*pmlYBaPdd+iNZTzPy=o9T`iJpxkImarq4WNsgUUfkNi*0W- zS6RORr;3J)x0Srzx0rz%hwy7#y#zC zwLK-aEr6a@D>tFprOI`yGz5q}ha1;e=UJIY2NK2QdB0#T`;-^{ujWzRWgfMRuz7Sm z+oT47H@@TMF=*anaMT|+HO@Y8R*mcfY?izuHRjjrWtMx`k|JISqeL3b*I+c4nf0|x zaTw)7+_q*P5+dS}u2Uz-=|xZa`{GA@UpFL3tgVVKe7Fe^q^BhlkE*Nw6a0lxy1i)w zyd%K=#5$o|((f?@B>c;p1|cN^cRQw|A4#rQgk29?P_zyz5&_TDN9X=-{DQ~o}6S%^s5cn_TT} zBUK^UNUvM0$*^p=$%;QhYKsr4xSxA6Ahb1t;ZU)%KPyCgO?VApP@o46*%=`y~irVcpVfJ3K@i-HmrX$wfEw*E0$3g=(4Ktag%%TJ+;Ba`ucxt?n+A>}~E&x?y9ev6#_^ue952hKDRH zHH34)>cJPnW@(=te;WIki*xs0<+G|EY`=qyBhH6AV@};4p&C8Rc);!`NgEzk zLRve0+;5u$sDgX&E}}irGuk<6NT2#p4_vz2g`Kvc>SAz$+e*yFWS#A0W73mgp0n9% z;lTKccx2kX*2=mGMg=A+!VjUtoziAXza9i7svKG{u?O}EvAYb@RCb3=qT06cY==#E zaM;B^aHFQ@>-6a;`eV#R8hEdj$6whPrH3=!hzny4SAK-K!Q)Q`Lec0ALjLu7qa{so z<4iH7&Bu1|I~tofUFJNO?AT7x_r7#&znQbuu|0V5W@C#r+|4vG?$Qg9EWfoWb4znC z5o2KR%<+H$X1k5M6YpV~$J)b1o7}q`oq7yiH>~x_@Q)8gcNqtEIJW1NZOi3)t0tv; zFT*fN+0Y)>CK2m$?Cft}>?_soJd17O?RoX3yguUUd}y7ad&u@-`9%K0>v_>*Jvagl zrw`Uo;``CV4Ay_s=;bJD)s5ngU%Mlo!lx&o_Ez;IMN=wpIW<0#>yYrIO@XP8t z_>#%19t@eL$|$V>0Squ$X`7baV^jMfrW3>(Ruk@D?(zswyqVU^WB07DUn$9ltXkT_ zlZ!B$zm-0fKjq$rwqKb)FTZc$ zY^hHPJSwa2=vP%@ic;@Xfn0TON2b4_XPk;la9R%@(;FCunyp&WSjTr>?h`Bd1V0y*s6* z&BhM;U&3Hgm$)}4=?!+!k(0QPosE^vcDL~UB-iXQ`py%o5O)u{eouu5Y3g|{fggX8s} zn+K_9rIl21Tta%h&P;HsVDRxpnDFMNG0v?`Pv=jBZyDBmAJQp$I24x(3qH7ohiR7e zYtsj*EtkhW!x{}02Rn{b#B5|<=q7mMjb1#nb|hUfez`4v55N)SN^NGWuNYTz{CaAq z1K+k_@{j32g*tG${_JQ2ux{qi??%Z<(QgfItbJ)WeFhpS_F_hCq7p{3MJBxci4mh( z6f)sK3V1h;46nK&G)Du3kRg93?k{K!4&9Ey$H=@k>D^1vCDFz3rp*@5Zr+x>Fq6<9@*v*E-K1o#}R3+?S@N6=T7M z_hH-SyHc=Ii!5ywB!a0}jLd|aSF}pop)_klw4=_77JKfG?7mfaxS+||HP<7(W!HQx zkWsC+y>elPR*o9cHg66$E3Y&So!`LT6QO&vu{ORHYgoa9YIbTBQzkF0cDW+|(Qb2e zn*nD4jfHDnY}pi)V|s$iNAf7FJW4@Ehy7ZzuDugXn~)7nB9z0NnI%2?onz9m%dqYM z`rQ@$bi=lJ>9N|&s@nj~u=?_25Ds0H$s3Bby(sU1`La29PsLaNt7LZU zyw2INe?2-oHYsm)+`n`^BbptX_h@|g4?c>WKZ1Nt=f5~RRNf^pD6by(Y=!qiRlI{VFi z*$`qE!SRRxAPU$%5S{0+C3wj=8Di{}-Fl*y-Dhg9PWNDoh zb)h^HtR&A`slbVP6&BWwp4R+ZF)>p*oJhMLE+UYB`nvJ47S4rgQB``o_Rk?7dx}QI zwZ+O9^TIVI$8ZuhIrfn5a;$TcF}PMHuNn=4Qv=p>Rgt@F=Q58=yb=oSNp+isQ`u=x zg%be$fzX5MI@fC1{TMr61MYhx9AzS=fS$1-5NlYZj+%!K^dp|9v7(Eh0@JeT`qHid z(y<%}99x#RDn<=EjU;%U6EloS#~56E`HwF=f9~8fe!M@q3$}?bFF#}6S*M>d=Erfb zkS$Qri7EnRqa)HRL{A(fQB+liUOxTTkwEh;v7~B$sra~q(Mof*E28sAHD{L|b&A;d zO5@@+KP{_U*(wIEJYV)KSoZb~d1W05dzu56%wlL1YM{_8oO{Ezm=YX?DrLvV+vaK8 zL?-lBeAH@&*h}=Ym#cwE{o47xX=!LPw6uE@*d1FXBzj0g4qC4Zi7S1qrao-@CR#|B zi3q;SpI*Jg2~Q!q^QGW%eA=3dhPP@srQLNw&i#DEqM}#V<%+nWYk)*L3o4j3mZt?g?z-M+4$A&ZSzU%!%Kz zozzLLjF_K$G4hIAj6zh|QONj^LjL~hz6jdG^J=%NV}~G znUH4Q;+a%iuVNj$-`)CX(lYgI=D0Xij*FQc+0%|;S~IrF%94iSb<}mo?@BqehHBT5 zP@;(0P%rVStn&UHEW36HpRl|b_yY8+oy(2!bWyE4T@F3p#!E6=ZGpr+DVfK?%mzpH zjNHw1x#4{pJjEJ->02lKiY1=b=luoif;k^w)N<>V@4hEjGj|MMpYQog zH34*62CL;mse`*HHdoT}hCa$7Vy$08C*^Qc!C`r;7Pq0@W%GXSO+U-(-oc*Z`f74u zUC{mkIE9f=tFN_dM&^|_UY6g{zkhmgM}HX06o$xAR24Q{{~7x2@W!Hv7*n4aWRn z6ht5=!>VZDEKv)yqt*fKzn)>E#(Y*<8e3NPAdHROv6E4OndsMobM}knrT6dX-!I-d z1=?b1ejrow<;_)v&1D2?Td@3f0TC)#JKau_7Zz&j%^Rua<@B3rUQ0UL1A}~9&|sBb z3!a6w1fObVbNI^%$8q}kbSHV&0om_f(Hr>d0CNw|@98n%Yku|>L^UNWA4A}GX*dAC zr`M$TBgfrjz;AKD|2ZThnOpy&$y~5+%^VYmuLVu=nAY0iYBj_sSt^uP`nO0LM%gMt z(FiD=BzeM+44#mj(F2V7U2!6_Ihv)a==YvoOuuaDtzWhT+dLcUmpMj*HHai&rbe6- zUQf{T41kWHY%9O?4j@HebAz{e%{!>64$S^J(DsO$%&Z@J>pQ*IZ(YFk!OOFtp93(( z4niGt0^6$Gg;M=5zp@Ef%mg%t6VT=+AksFobK{S^eX-5KVmAl>2vyBZ>ue6Xw3G+N z>Ty*|I0xf-Q0cK{Ee={biQlH`yqKT=r{!7Zz?iRIpM6n1?m1hZ4Xk}Gy}RO#dauux(#!1n z>;{DU=1%Q5os6eY77~ETsX0rX(uOQ_m^txyt&VED(abq9NKzQH$YKULOKRXDOQ-Ww zE5~hJ1P5MYj@$N*MGB9qyaTD4(35D1=Iaxj)J8A)44TGJ`jXPN;}(0m{`+6Ar;W!6 z^=sMY)_LUGH#vsh;=;Smy78~z;xR@?i+j`2;^2FqW!Guh1VxwdS*_4sqFm{-T&ML4~dIaB@(v)Ix)Z4bT|Jc8?Pv`%w@0gHoS z)QDyl=uLA|ddNvAkB0@vH!>$uFWue%@4w~V@1*y;_I`y9C2YvkE9sqmy4JGMN!@iY zqToMQ=dQp^{vKzn-+xG|oFw4JM?)TPr9G%vA6wRFa_rHX%aw}};!ifU^EXyh7uV0Q zDTQ3lbeE&KcL@VID$Z?_yPeKuv%8$dWvjcK>s?=`PfD$_^wEViqtm-_ zE8wR`g%=qPy*_wV`*0=-3r{{}jp$kYRnjc(q?x4FSr=zns#J*{c$q}l>o1rzThHaP z8w@8}g$w!?ztUPI&7^p=bKhmp{gEeMZwS#Ea#EfOA(lR4oU}*MjLu8a|M_u)V$B5i zxdo^!wLx&so>;;B1wru4J~4KknW@0WgKrBDUqv-Z_nYvN4Jpo$++?~UT0jKBUnrvH z2Pc`#{jbWM%xL_fK9!Z{XU^*lfk>Xewk{*j*J@Z_PoAIj3xhx?&)*8o!uS0xBhSZ% z5NMBNNsc_9wH0~(`O(IUddu^Tp*;WD&@IdJ?>@P?JpafkPPy{Dh+B`ZF(^1Aj{{JY!Bs{c ztO#?WGXBV8t`nqIPUndO*2r*O)$*i(<@)3;(W-mGOVTguuNa+I7Q2CSve(!5Y{P-z z^{@AjZ@ao?mw0m5SkYASW=NEUH_Q_Xb=io{Kef@JnZ!D@!)Su5uZ0(MOX= ztx`HrI=b5Xq;mCpW6JK|uH5?&OJp+`-JEf|6-2eyQ{jCc8*9($4I9kS zS867v4_AO!-@XjY?QzX5IW=lyxFcyUI{L>_`vBM2Fv9{4^^hT@yzz|2jtVc|TX1dV z>bJ*u-Iab-0k}abYsFjS#6M$K!{^yMr6o43qO~lx>{1$UPy3IkR5Fr?^m5IH z$;z1=@O05ZeI}tYLZBhSpC@xCB$oIIwwTla{&C#1fz436427r@=GJa~n)OM*;Sg6hy1t!6A?_5U^3fCBFd*nVl?I zHk!E_9amO;n=`ttbow@B)!yyW;Htf)vI$k=!OTz2D#;i4G|ZZznIQ(NOcH`P$(g0( zkdXTwYdg}n->1u(5n;)UL*DnM0(1YqLSBZ9Fz(N2Nt!7z_|bsvaiA8y_fx_@+kY~- zATKgeN3i}W_`Y91SJjir`Sx>toqjs&^`rkt5BM~hxF_i;NnNRiueu|m&_CVW7a-8N zyt5jf%RcOfoLk#e;rH&0xdlh8HE9DHmK_kwht*XQ-(QtFV$~5UA;PL?tV+%*jkfh8 zQ-Iq-%-OEpzd{vi8yWY&D~^PVkFgcyJ3;Na2!+0WPo>s@3YCW2Rui)r_76_c7(9&j zmYT#vTStX&QX2%L>^dn5gbzMGD!Ud68yqbds-^jAX^=tmMN_abx*9Sa5h4@LxycZj z>}-ZFL8jLHuot37Lnuxz4|zJ61xU|RFYsNrbzDy2Sk0*L&TXts&Gz=o;XgDuyo}}$ zoC}_H>jINYwKyj&XbEmbMNN-#ra!zCgMtT@?+No-!Q8uY4!jT% zWEc(qKg;+(KL4<;*rL^K!syu4)rS)LVOg#12%ZrAi{x167hJQ0w5P;qcUN__35K~e z3r)=DM})*>6PHFF(1nV6i8@!NF)HJa{At2ugDO7+qUJ4MxQ$c)o_l0p%wFe>Cxm!B zdl)3{wsamB7AkVDI!|sMjN)HWWZ8|AF#ULUORiS?e-h(j_fJ1xqwdMnt@Iy~NkS*# zRHch-D@A6}U-FC;Kg9^$tDRjr*3f9>R*vUWL^V%BV^-MU)DMfCB~|Lb`2#v;;m?Ov zIv4E&?njua)%ypt-z9bsZCv!fARbQ=xAAZhj6<*p?p(P;&b~~%B%!CVgsD>X?c1bB zbW}8v9FV{H+3g!K3GKRNcP$9b>0Gm(o<<>y+GY7yaMoeQcLXiDeC-ymf0LY1{~2Ce z5FE`b?UtG2EwdKN*J|Y`zv|pP+?4s0cYI?ZsqB zoVOMB^j~#3nUHID{lBNh5{mdsPAg0vJA_D$eu$TO#G#DJ*r)M`9}?%x#)d~ISAXcF zX|?Z_R81OC`%cO6lL~8J2T-HwtMb(xF~H#Fy8dc#0Jj7Z^74=nJ$?wZ)WzatVrP3? z!{1n98jq6}v37{jXDl&EPo@-N+NMA}iMnMiR2_1+bfj3~5j}PZigftXqnB)xm%2;O zYyczXP1ulKFqI4$A8R;4u&(c5ARpGgUzVI&$O5)9iEdoc3@DtlyYHOcrCfq5C{4x` z6jR{rhOBpy+Lq>*98m&P=?YDMaMxsIZ$?2mw=4Ar^j;20(RGbH#mDpE4W&nnsr?3C z2YGp8a;c`iy?^R57BRTgZsc3ZC7<)RtmM_$)un|tMVec}y>>27&L5qOkMXLzlkp*( zzF|O#4?z42)*qs(6%iZMnw;b|^UtmrkylpoN?GiPS1L+A;Rl!cP*L#5T3xp_$+_+V z3&&jOA%|Y@<1JChXSugh(Vc{Yc+S&0JVeX0*vX{zz_T=%gc!9FVicz|RKQ=bGHUA6_h`=-ib2vgtrU-XBgIy=1zg1s1freTK&lQOR&c zb?VG`@~Xuemv*J~UtQe0&K{J&oJ@^O9yN*SZ?P#mYCM;6?Z(q`ESHPjxp9lnhy3G}sfZY+$4f)GU8YQ?T<=Bx4Kb*5mufJch7>s|dyRc8`zQ;|0Q=s(zS zJJ<~+hT^7cA1Q|nR|}CDtx84UGKcU;<3_O>i6)v_YdjHlQPCv!QNiYlX#8eJ@wfH* zKtExgePnC&{aA_7cj_*+9`@)v^oXFRB6{DaV>QZ=pdQtuo53#%DH1&Y$56KZ9F7rL zLflCxje1i5@T_=pe7GqhOpE(Qj=>iP>Kquu$hf~Ev{>HkYS-KGgA}e7d#usF3oz` z-Cc3T*0m_BxFs#B`a$QW25=doJKz13q;Yq66jQaM^H7f zA`7HA@)&io7e^jF33sNDuZM+ z!QZ=Ap}Q%R8pj(WM%0W}Ee}g_>G5DGaLJvES;h2^U3aI{0dI+bRpn0}xBv%#Z>2%m zD#Ox9GZPOi1g3OhIU8PpaN(JM_i5>L1HsD?8-VT^*aQo zrn6Vauar@ZJ|RDnI$Rbs!%>{hTSZcZy+7gG{^av7Woz+l9EQ_VxI1UAg|QrQAYm*! z1CXHUY~GABxi$F*Dtfqzj;82r?kt5*#WyDBsTX_lCiHFp|7G&hBXO*NVg|by2=FpE z;y&##(7CJ>s5vfVwxbSZAXCj3qj!OcVS!H&is?Pm1r$k_@dwyRmlQ1E5GTTKz zShkdiTTg>_3ieu!oev3UkLIU@1qHtYg=RO6!49B*C;fZVrpx&kaGll8zdC+_lXUib z@Fb=5VWp@L7J2<5v?G_7@ho}~8Fg{L;Ju3_pwQMkH}igRya7!t@=Wqa-dQV&v>^0; zsYK<{o=*NU+tZQv%UGnc26Ejs;SSn)68>nO3Rb8}Ha9{}TQzo-O%$f&x=|cVD;T{t zTI=rwMW5SV+GcJPquaBN0Gar!14`sRvY=a@6!JX8lR~`+m4;c&hy2}_G|G`ecWjy5 zrT3u@5SmnyZrz_WeHQ*doss}l$Zt@F7%uJ&zk>h8XUL-^P+q*mdiDhF#|0W;(!Y!Q6$L@6QIbxt0Cd)VB?<)}ae)Yt^~9 zt>ZJo*qc`yPHnb7d)rH!@6Yy_GSzE;b^*n{#{TRbo7bE|O?99iArstzgZk{u{%o1- zeaFjRIggRsHs$ltPUVbdqSr-k&|_opWGjJV3)gB(6-lY|44?l=p=6!n(xX(Ze2G^DouEqsexOzQEE&kTWA#>2a0$=FF+hCh>(pkcK z?g)@Ct^C)0Q0D6YRTuYH+JecSv5sC=c^?D^+&MT`nJr1^eJl|N&y$HRuC*&1#l~AU z5w|?@+f3;qFO#hndpYcG!Y>irYdbzt)ME|TYHWT*b3F9F_Y1!DfbHPU6(yUeYs4OR ze-jlr-}GI2_CEJVOf!Pnal&_N)KK zhR9`xmqZ15G}`|J-Lhy_w6ILhLQ`bdV{>k=!3yd#+|^LCDkNAy0qm?hH>KE8x?& zA6y>t^d3MfZBp&~izO?f>AOxhIXksGeoGFr56QTN(3Z<-S=~c(M0_o-qGiCca6(_u4X0)hl)^m=JGjk zMzpcwh#}FgU?u~?GO2{2--FFmOK|-?k)+6m2?&pafBpcRz(7BFcip|roh>9xaI3$V zl@!BtI!&f`211z^VPel|dJzW3x(zLP#k2%_@IjIL9>n?t6{l(T%X8vkLVuV*HWKe~ zi-=+CV*!XBp7Z;VJVun@CAqAbt6+FJk|p^wJq5?|W7pkEkWZz5<6IRBN!;S5X0*U2 z8eyBLu0WMCt6DT6OIgir2wrL)E>xF*`l*m6>*K$mJbBTW3Tz8kfc0~XamnZZMRKnF z@<)AygzAd?8n}y^1H3i)y%nqUP&Iv4t$m-R0u+ZXFdZ zF=8Lo$Mm<$mc`^A)1EFYTQ-~oYLY%K0-(IHw#A!qf9(*9WhRKe1$7JFs;|OZ*KdTk z%DYj(zKqZ%nM8S|W}QV_yF_-}&R_J5|LVdb(&?}^siCq5?S}M^cA7Pia{2)JY9Uk7 z1}s;sQ*nP~JJ-Q*KBS`yxemAaN5GuOGTg|9W29X@gRMpa;ZvJt^CW>ScWAwO`A| zTYk+B)&4_aeIZ2)O;medq~8Ri8bvBXoX`kES~;fIPzepiUf7;V@XYq61K1;UfC1I; zN$tv!jl+bNcf#nncXUzQ8%PTBmd2@tgg-S--8S|>#gntWse_Ug_j^-GuZ_puTG4p! z{+$CSGo;212ZA-T4#=y!tQgbs=Zw2-LkG!6|1Ah4aS+L(t+&J$K>l`92Oh*M`!fX* z7v#9VN;@UX`BL!FypBW-C4{s>hPYyQ{6%WQCF)#tDr8-qO7OIOzGe z{5X349aoN?Z{sRN4hGN!S|pc<(FpFbtEFkh&w9Ma`qHqSNHgv~xZOs6%e?1}fP!_f z!pb&E=s&XcedbTe$M#MesR2}<@KUOlU2FWOx@p{w5wmmulnA5#idjIY6o)6sa+a}! zaA1pspc5XY|7C7yYp;(PYtq=t>b{6&_Y-0XJI@e%E3Z;VLS%qPq!*Hmn~;h0GW2eO z=t zFSj>8K$OLnnYUPPz?LWP7E~(h|JyHCeBBLJU4;nXN}i~aiT7d&ozzr$R;Svm^6oDPXRAQ774o{J#_RT?LRtMI{m5dcrsMdA zWG687F8yyaR)y_V1cciHKQu~Dmx$YQMm2v!ZYG?U&Ikh^!=))1c%SH6jyIu-xO8{e zDh-mWRICh$?S(;@$6eYt7>wB~}uCBxq@0kJMonR!js{Ffk zxKd6sP+#}Lhkvbk zMO0=iWxj$&4$xS7;dwP6PyB>Vx4-Fju)G(Z38bZjCiH0I2R#Pc-|*TUaGVH^-Z_`o zr4B|GrVi3N#ZOqz{Y5=C0ACQ2ZFfV>0hQkR^x$fbB~eFw+!yn{8GriyDu2jf)!t*u z(J`(5@}k1L+SlU#<%c15RpjDV*vYgBf$@XtK!z#woyxURBoX&kib$9o6$|EfD>;9e zDG+VaBCtB#>mWYJynuq|hHChyG;`+iEVS~f*u59c%9)Le3-#K?x+p#BAhuKIBC0r^ zAns3@OUAr8(3_2EgR-BpaC$yHxJuD@pT)<0s4@Ms${#SX+FM=8A?u8((2c2PB7was zqA@un+rpTZx-l)y9n)=3X-sZ3&Zj9H%3vExMKdZ&DCGqhWcK|B<~KTJ)ai>bLlE(H zF`~XqDU664vx}kXSW3w6=NR+l37JwwmMK+anNr0Vkkc_Gk{d@%Nh!{HGo@;nQbn|i zalDZ3D<ApR7K+$@ir~a_>U8k zIxZh2EF+nmxpq2kapO)S@@D^q*c7K9Io{)p22MY6d?4ZqLL&H{M6MCPI@E8b_Ilof zs~hX^K9w=-H#5ZoT;>vQk&{OSHyx2#=*AM)(JP2S_S}%`#QlP9HMBXNFbqxMogMFqk~SH1$*g_oO!C5FI3Ap{ttj>%0P6_ zE&Ix5-L@6`#ps>PeqnC2A%v4QIsoCl5Tsrk?xqsG8b60qx}&4d$LwKqX)2u8zhg?_ zC;;w)oXPJ%8W=QtDL+icSM7pLLWiIQ3VJN4GXS@1O^{xN@G1Nb7OZA7l`cHmjgWt>5-@9-9KT%)X0NAfW z-h0k&I=F<{PVEae2K#*v=$K<~PMMA45EIWC)Uy>2pkivd>iiq`_1q?RIfp@QvU!PH~nMFhmXchy$td#Rl@Ug2*pI99ONcVE6c3Y@Qi>8T*9A3@^(M1{Q1 zS+tB@#~OwhC}d!q##H$6_!K2JjvfUWY>zoH~~*#usv zqR%mX8dwGbHp-C?T-rO%?K`hb~HP4za#{ntmtP zBm8_WdoLABuNhJ8-x-yE`6`X&oiv+G#q*q(dhe!)+dnC)5niBEiAlJ;xuC;s~c@$|^{JdtITWb1J^W^K_Y<4Gp@w?x zCstGJYwRbUuzAhxsi`?R0QMW4P}z4sF(>8|Sx~U3q&LJd`&O*u`F1xO#0C7bPcn!% zvxD0Lz>uF6?fd{*N-ByhiuLwKUXAPp;>}K*xsaueApZIygLpSFpDjRDOSJtXh`*?Y z^vPtS)R?N|1!L_v&cE`!D%qwDn@ayTO4ktW0{qOShoBX=BHMnr%|bV`pbZg{E-axg zw&wZFM6mStHVw@(GiNj7H3tiB7kcWuP5Q1)-yHUW-1M0}e_GF$tN!`=&1dk*(Kds* zJ2E@z3zh>jN(OXHjEu7bh~)Y56ew41-p(_(x%oUDl_|K2;I!WR!+qxSk?(GKJ}2Ll zna{gU{Mz&Rz;U_r`R{N(hux5w&mf%7Q_l)1C}%!fYzlkNXRA%kSI*~@qA!`x#hTAE z?%49A?1Jk@IG_6Nmge))SGQdC4On|-FD1-e{l%!w=JPM|t>`tM3%6rF51jH<^SNyE zb}rJU0rYvjxZyIeq4#{c{r(=oNny#+em|L&;9t;IYw$*s?e!aY-Clpw)du~V8c|ZX zkAgcF>5|SC>o=XYmi_h*gMml)-9O=FEb%a(!`^!PT<-W?d4Z}V6Bp_y;{Y??-JNRh z+;)4-4(VO-i_(teDDCC+PMhUv+tD)Wg-f_7sh%BBPQ&V%K(YRFteRm*F>(L)+YBe^ zY|6<+_C2?~&E)hiZ#=z_{9D_)P*TAuv&|j%U5aw-*)+^fs#uF1Cd;O|3=!6I90rmz z*iKrc!SYmP<=d70{=FygeS~DV$$jC0S(2Iy)8n~YC;A2N{8CiqR)+WmqkM;>VvV8Z zLw4CnPZ(gdy0m^oSr+|~$4(cK*)%!6xe#tAzWMtmTLrG$$|`X9cD4$v6Dj8GV(+tY z`|Rp3TKVlY!tk0QXxXPzfQ)6u5_f+gHGwVcXJI#~-{?+T*PCpUnqQ}a99FX**Gw6z z*h@%1%b!9cxm(yDdD_C>6uB1Vvc&ncjo(}CH`52&Cbhu`QZ1}41^@zBP|&F8JGX`1 zX0Nn~*%rKaHMoS}I0Xh6)Zw(A$^Ue`{9}|;xfi`CGo4GuMD>>7PkvvT`9VX-u`KIc zmTnr_V+|`cT_zl+#}&Q>Ez!Sbl&!cgI{F~kA3CahP}9nPbtG8V%UI$GCLFpkTbhfJ zk@*l@TFg^te6+2{F88#Nr|s^tj>|T?3~43NqPwKuY7cWMCYrRGN$JBojD~XkXYgA| zk9CiG$B^-bUOqDE-vLp-;D!kfyOED_W;bS$!S6Fy$P*^Q?|Y9i{5CjrTK^n=+ZY50 z>c@?!64vWZ8SomnGN0=NJ6u zW#wlH;cg6Pruym^%=?8g9Qi47mnY7FeM)e06G8`N-)QH_mrjV4@khRNRCYobbKdg9 z!wH#q?bl*Ezh-5O!qjLepK+cE_w&YWf%n`M%kUn~E+AX@=}b$+e|{SApW|7WrY^|x zpK8a4BK~t&hX0&QbDU!1$$v4I|MbV*LHvgZCmE`Q(7|b6u<$w4mCa>HS}%$rRi#hK zDLsMG;x!+@W~`3kx-laytAv)pDfOZr*Lr?fesxs7*U2IWs3fi3%G;m=7y2A|zuEd{ z{|s96UjLBR4KAYf&!IEv;LV0E{R62eay72&HO2!U9q{g)r16N7PW|qQU=~lv9GiK*}UdO)Kmu!AdVN_@GefGD%`lbLy9S zXP(m!a;*P6-}2-(vt2h+lroMjlPMcpw`C)Lo7%yxgUU8^_OCe=AB4vKBrPrcpCr&6 z%mdlcG1EOjME0t*)Pej(W;X`%+PlF zkZa=kPj7ntD1XFv^<@nzUh?p~ljEBnyLSklO6fgmq+Q=(Plq$>9=>oyb^aGT>k{&o zbj;hoa?_Ld4r%1=MeJTqDKa%5i_(zdSi^W2gEJWp8;qR{4}5lPpR4Y_R4xIkP~}}# z)EaB-pIb>MP`XMl52Dh$j!*Rg%MX1=@%J7E20n}X`QfzvApgD}{$}hSS^r)rv6udW zZ!h!;^|l5dqN(6HlcVo9U*=HdJn$sa_fhuGbb5-DAx_`_<3dphgae9l%8?WLHhGq=2<{RnVD<*6ZW8INlj{HV%LI=c~Z(`6+*|)lx4BEM_ z@^Sy5;#Xv-HrJL3e+x$K!AK;-lQZrJeOR56e;G>tMWK=}BS1zZ$9;F+k4po*d@v*F zrR2MhXOw)65LH6MR-fI6bz<6~`|;(hlJAer(*3-+Q}QRNu3ykEX);$16WqNlk`5Il z7r;*MBy%NbxMFa&u}m53igSvwGXBUj%f%0D@J`i#7H%me=%I$MC3E-AH<`OwsF9=U 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 @hR_TBT1aO?9`z0+etsBZyFA@pMB7l@o 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

r$4qm7}(3G@oGAZ9QRYRPDTx(qu>Wa~- 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

h7+glTDcfqu5q#e4(SN;bQ6G; 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
h^qEDfV#Fb!2gLM zmfww40yuJYDrPmzIQs_=W7R6=IcR}A`R_prUq2q=!g7B*S&nc98BDWV(hfW%hdE>n@zfH3hIOp0w{*2W zR<Gu+?^NT%PEgceeVxAHF|*h&qtBPc zVMg)%M4Iz_*|}Vt`JFntnhg@cGlVg*?MmG{pE1k|wPZb7)HitORd4n^5_5Qg;?E8ORcUrDlds<&1-wT1o$ z<$*8!jB0#t+|rJyYv)-Z=JV|E;jQ%@=hI||7jJUk_x{*@KdYYe-WwX0G^s>qK|84)*;|4gN^L)m@kC;C` z;43`pS?u8q^$1K*dkP+=Rjyc-QJAR!k(d!`^4YMS@WNA5&%ozwLiIc0Uq&cXElmJm zdNF^!g{A42tAvKe=s5?=F${ggjDTk)UbqaW6K(MZ zKEU3L0b}F^|0Ct*8+YLiYkd^t(2e_bLQR4V$#HfG8eI1eRc4cOV0CkqFLW{39J)hK z;^c0FgqB`R$>%ERiVvz9dpq!UhjIJs9^N)tq=B{}SAEYc{O_djKd`2oFbLj)WNke~ zF{a)_-fEvze2)s9`gs?9Rs^^Umo`A{g;E~^X(Bo1E!26_m{(iNG5oyFyUPg|M4mJX zYE+;UTuj3^)#`sU6x0{iYX`I^lBAB~@fLKa++8>7W8y@0WUmHjD`GZkE!=~1LFkRnJzidmoAyIb`c-^*Q}pVfEOr>_4a1k&|?Zf`gI zi?QHeA&`cDHwxY#3;uZ6{#OX7QvGSG$h!j2t1H$Ixk-BgL-OLfj?FMO=Re-4(`j7ZE) zS($}wb5Aq)b1v9B9x%FWyHi9Y!zK^@{sw-3@6K-YfUuJc%PD{6_xJR1axsd39T++O z2)++*>8+))`aiD!1)nk37TzWVf%;aO`s9^q(bQ*$hnZAoOVEPy6Py{w=d#Y+c8qJ0 zWoZ$1zgMWmnEnRMdhroY(M?fjbds!&0>rG2Y9jWTi{$tL6G-mtmEEGt))UdCGfk

>PQ=R2)i*UwJTRbYLl06@vTGOE&dQ;!MR}z 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 z\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 z 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εd05;XM~>>+_3 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

hkzxuX;G2fH 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%0DsM^NQ}gJsS;~Per+36+p=% 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

Dzu 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%0ArCTKQX-Et_)&DpB_HQhHaNGp=k)3qcK&Fn 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%0DF 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 z zxzm^5xknR9xJR>2Kj>&SABDdCBxUK|arS7cZ&jnY?Qo*6r#RoP3Gq9nU0MFWDctXX zdlw)(V?S%7Ur1YOL3o7S94>!?RbSNe#K*W!0*h5I_%3pNVKI>ep%_Kw)a?Qm+v}G5uTJo;Rd_c$?Tpyd4@A8x^Mj*A;9*z-YIr%mcx@ysX z;%WC;Fd9UAD#dVoAELQJXv;IDLMTirjkVGZ$2{uEzgAWywvw&9sT?KylVNn2X>TQU zE-`L)k>rol7Q4_JpECCAo3RL<0bsOWfo1`w?iJ|q{V}|36`=-52Tu=KlWj=fO})Pb zsU1AB{e@ls_=1R~7NlzG(kJqWSnaOua%0xcls_%jqwgbtB+j>_@9*lk9`!CDdUd$J zi}mCFuF-CT_^;kfBh*N!PBuch)};0}Q96LRjZe<9G(vo`JQpA4p6l6TU32Z|i1vc& zq&e=nR(Q}s54@p2EBh%r#wql;NFtsd=*4e9RY}i&KIAR`$H>OaK`!LzmJ_muI zX`5<{4aWaK-wYgFEx=e%?=OC) zowIw~U;m5;KGUmF4t5KA=8M0bxv~h&1dMpQGf~x_9~e#i1K&y?hH8%{Jg=F?kGT8l z@?p5HMV)|*hkqn~T>p9+KUOLwhYZJk`bn886nQ4qXzsHa2kew2 zBrV#NDiXpdxNrW3F9&XE)cyf4f~h!OahpWyFz@22jP%L62A-_*T>RM)8SuH4gL6G_ zaPInT;Kj|@ianriWT(H@Aa=A3Ns1VRYa}kh;YibKk7jZ-PQ60ieY1#FrF{zp zw1aZ6nDlw-cIOjuWb-|TKJ|I~Q4c!YKheBBO`dy|j&&gNM2J_nKCm+ms0e*pp55;r zbecVnUVi|jewhC1Hd5bvV~PpebRLC2hD3G1jsn&z?HPiy7Diji9fqoiUnxw$bbtdu z|1*~;E?|%g1dNyT`j2_Oc9U>{X|SsnzvLgdg

mo{J59iTk;BhlY^;8?0N~27Y7g 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

wSbkk* z-*NBTMI~&eWz=dqlIKJE(cLdkbuaj!(~wo3|D&^vp>Hzd0?Kb zv`Sc{iY@q)p|3Kwwh&`*#1jja`1M>PK0HMDd)=Q4LFUds-AhYEjg3M(LYVcR<|nE- zPJn$3ea?;yvKn6%ypmd4xDo%<)z@;I&-Ft%ZH91WPx7*=t_!bKk*&$q{HthDinZ6I zdF$!{HjXFOy}M*%>u3pswt8xx3IxH&`4V8RU=ARuIoH&48p?H>_eeMve zaXJuBJsq^VqQ&&4l9yFu_gIbMP4F0C^ zJU`8Z?2A4U!huKvvWf-LTbw-6lH4ly?)k8*1&se5m=JFHFrk)cs}B=usdn1x-!MFA z02bxcRQb0cTEF8nZki3F=@Yf?_=L%2VS>dm>)Xg2_wQ zn@k<1aRzT%pzQKJZO`%0DXVmXzEfY((G>ai_5gm@dqn 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%0AF)yuM$ZP`f6!+D;We_IrP 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%0AQ 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

=$X7nJN}!S( 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

$HSLFlv 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�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

dlRN$rR?i=( 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

VwHi_$To^tmhY0vaSRX;fzY?ZIEHfL);b_- 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

kMyQIC5Y?+F|K!MwHF|oAQPqZC~JKg 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

2mb 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 z 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�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

awP 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 z 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

s@ePEu)Y!7u+FmwhOKkc&7`#DDWj0 zd`RH0bDW;UC-6f`YCk(g;Ln7b`6~qW*bk_qks^UxA91cS

-@Nv*gR0<#VPs_JSB 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

XMXiBjDj0RpaT8aDJ^Pv(}nW5`6ORAyaK^IN^z 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≻1V<6<54 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%0Dj){E^ONzn;Yg%B)iPC70&%nfjv zHRlO7$}S%GC|t8Ib{mnbyCKj*9P2hScyr;^4V@DM3u1)GXvvj1OK$}BC<2|fAM;>| zeWHh;qjGGn!rrMz>W$RB@3dY@9&V@q3I`b!k(w*YgrS6ZIYb!bw0(u|EgupI-YVt7jiK^D)(87LApjB17;!XP93F_#tdY$vV^q=aPif^W$#zOhikT^` zYOn`?WtOS!={MA0f~53!+RjsEpnf#@ou!KNBF+IP`F*Gx7CgzX8NB`dhtN`iG|S6; z#Ya%IiL1=jl%(`vI@MjTEcZ>^&3!as%bcb4d@$ssgVFv(7YupxYtB_3)D>7MQnxcU zkXvk8Uyt38Z3JJYrAmSRkO2xDS+~}?z60to;PyalplCzimJ`Rsp2{BNE$v;K$~W@G zJ8mmDw4K35%95M;;DC~87Y|&+3=nHTdgROr`odFlhF}r7d!($)aL(G&W@HXk8oepW zSVVvVBxAz4XeZI;WBSFV_eBERbov}j%HFqHu*m*RZ!@xgGK!tOjdEt;^%|F|Dw3KC zzUCrMKPOjBZ03|rt1w+0>F zjs@Qjrv`qRQzRa(s#zZ$-OknZ`+7x3@s~rCEp^AmxcRD~Wl^v<2lok~9`ERjzgK@S zmrwm#eh@eg%pTXz;(Q-M04SYavfC%)vOvOzr$Rq1HC`$gTEi~P`(^p}-}Bzx-=h5l zF@RmhLK^I8U(Z>3| zke4B(UX0uHWGK-bCcVQPS(B41BdNw(yps*_3exf?lgRT#7WEie zq}Xno%L-XPc|xG!t^mPNIM!tyki*WD))%4|6LP4lK|IS3$kfZ0@Ynd(a91z&XzpYD zEsL(_Zy%?vk9w^QE6p_0LxSt=3;0&U7R7XVmh_gZ0%Kw~WVZ3>)2}lwj{FTBA`Z5k zRN`hoBF}$|d50Kz{HRq~q7HfYvrKB4*ndp4g4qWXVmsky!ik-nyNd-I?(Uy$XfSmi z@6jC%cXKT*k-UfVHxN6j<;3IY)zwu)%p<7LnX)%~2x+l{=+kkKeNbt4zga7r0vo-X zvYe#~fWXZ%5&yLv33_YJ&~6ohLYTj-gV8n|oNq zGQr8s>E-MD_RUTd#33WUT{EEM^ovVZg#$Ypa@znv_5v$pVt>yOnY|nI9m@@`DgQo@>mk*-@)se*1+RTN_ z-TJ(8>Defg?<;XcK}Hoq6wDt2a*s%Ea^%w*G7_z291UGeBDdC zsW@#aX+HiGt*<3--^i4R;0IY%6TDTG1udaB&Z^VuCbG!>!E615hn!_k3tbV$zX=sM zQ6cqD55jsmpa{XJ57Lfafd;tTX*G)p+x85d(W@_MSbthwpgmx9h+`42CIu<9Fg@p= zP_w!X^Ix#j5xdesqFJy%DO?R#o%RN1oU=LGT|~5^w%bdlvC}CjJ~btYa+pVc3nFdE{Jw57Aa0-nm8 zRyl+41fBRj<>bFITF6%6tdgES5FI7S;>qPD{>xn!Y}(P=xF zRPh&W{dfq+-wO~K$M2Vl2iKSM&FrHMfPew>7;ea^a_U?5v3tKD>`0YebhmLIx0_2c zI#eP1NF;m z)fl#VmzB4$Hao~l`Tgw=kE6v<#N&X7%s6ZCk$uC#3bZOujk5)Ki@l@J&xIcJQWkcn z{E?LI%?y64$9fZ298UZ*tXlw1h~SmwCJ%R$SCohA-iu9@JHdp86ER-KPHJemrmk0P z9J_TDzsK;(a`*{5Fl&{E&f3n{FmV&UVXrTwL2CIkSqiEqII#~tS;;2IPo!!jaF`-s zG@0NPbZT^tVpY?L{5f|5e`0l#yGJTUvO@=*YL2!sTV(8cmoQmrz8=mlif$CfUR$SX zCk6_CBM50MQmdbhu(9gIDbC&40d?{0NL@X*4FGpnK6pjdQ%WGRL?^%E<>p9LyKuRG zM4;L`lkZgfy&&TfE3m>YeR7kn)?GyaxS90j*IVQXUF-DUdR9lUdQ6!$Ih&`5J{DMRYMstQIgF|f>q1@W7pNO8@iMaXR& zXzJKMKpMh{*JYxcWBfG-P4;2sptN#QT6~&%>#BM{R;$?Rs@VyyFfVr9=sZF1kT)ZA z216BTu_BYLglbcXnf80V7j=9v@C9vhS$IyV0j9njEn%9vOghJx%d;iQ8*%rUxKZisQ7CYrpP{{2+X<50Ct zT3=c{hHL1|S25{CYBG_!SLPk;<&-M^nnGsZ#SwuXwZ6`YH3i-<`*ZRuQW6dGo7i0# zS#Ilrs}#|i zDWA63Fz4=}OFlgAI4+JFXtF-MT=tA?6Y*h-_OQ&S;8bI2 zDLIH#xkauBft`_5=`bQBX9tB7d&cg{_MNpGt#IAn=Mo))o9A_o9W&AM9nR8^ zEZ@6%e+W()hUB{8dE9_@KocJh&v~MPSC*rJ2(lu>#+Cos?J~j699`tDRw4f3GO;0& zJf_NNGvi3zKVtF*!n-7W^lb_YbVa$8vNFbiQ;nlbj^jRVIZ2|eHBZW|bEg$NDdp3d z3;p!if~HnLxWQHiEfo;vLNI1gc~jyzuAGP@vTB`ZGtuSQUwAFc*Yc%CUzdA}ltO** zqcV>rGzy&mJBF=drHmcu#mc4RLP3K5lk=zzY&0;fcm(&{KNd1tA@dMaHL&0v?32+T zIs{=_f6XC${SHl~M^6-$r=B8&>=y0m1F4e$qsZNJ_$}!bA=tqAo}5Opi8C1MON$2Orj}C2~3FG#^n(hME=YX zDO34yV$w(lx~>wU>#Cu_89a^2eVX51QxY3QkAF#W;u#3Kw&aGyW6*N>3`qD-aDfKU zLppmJ_bDiw=-gI5ilB*xlB8f{N`mO!%nuZJ89x*G71M%TuAP(Y%9Ea0ZQ88X-|?bt zaHdw@Y}i`59Zo!-XG3c=aCWzPn0j_fVB)Ou`lrY|>K#SAo;#~1AIBmek(~S`@>K|) zUSP${vxqqp`^Qcxz;p~97Iy?=%7gs$YJG zfva)(tyRzQ-pDqpH81Gj%rADMBf;4v>x7|2D`Y==HsP8%35QA!KlOi^@A&5EdCu~o z6oS!QioZhse7Cus?5L+s@iihFu1=z2iU9{8@c+^&JPW{bxsLx|QWa$5ImR{~w7{`r zvg1u4%4c7n&ko@&r!~q_WGvolm=79QP2QgLB{rn-?2bPD-=03aL6+1ii(CY8hf?Kt zBy$*Ts(HJq?w@l9WjR>>hW9cLu@$FJdij2OTfIt)yn$Gr2R`mH@8?1%&>e37u{!)n z0{Dx=xhe)jv87&^UbD75{=x9PwWXI1lci2>Tx%cxzK0K|8mj!CDxW{1JQn+Pm}@LzJ;#Mq+QtmP$~EUn7B4L?RQT2-8w--5!! z-?%bka2OssDNa4e5t_HjW70Iwo8BF6&-lwRTA{5T>iGq*%1#;2E7ZP07y;VLxlLfm zl-6B14y{Jy)4#>xBrbGqow0A=P+N8>jmuH^aFiPt^86`|-$N^eOTxxxt!5m*FGPoT z@)&aGLa!j>WDZlkp_dRm8n{BQWmmvL(&j>sk%Bei=j+SL$Q;OCM`sWmc2RmK%Q=1d zcRUBxXp49L$diwVC$;454vkA1zA*xedF;a&{Q-=Xe_GHBzCfN9bi|%Re?|I}Z{wjj zNc&QS$fifDE@y)PpInhdrD$(uR?BAY6g;7W0%L`dfz;^a9h?@18WbEG?2rR+G@0+3 z(VlO!lyQDKE&oTAQuR@PAx`#@ihK?Vx}x zIX6IOReqq?H=bteiB+HvJXPvxj-IOZgtmn(!%g`i`FP>%CRHoB-b5(IddCip)f1(F z{kiq(BX?QmLRaC$h8#JlB#HtUuzjM_u!Za`V7>46~Z`h@Dg97&BxGllgCBS z-gEeaE2d)o;6rku>9B!rY9abh>81B*Cap5+E_2@Z5SIDHXp(M8g8WG8C9!X#5x_C~ zB12qZ6kLpE@SWH|t8^E~2Ib_!7Z+QgA)OTHCH_eQkHA7*nG0wLDlWLkbjL9Gr{!!G zLb+T$-lu5tb8v*GmWbIrKt&?igp3VS!}2`KC# zfF=G2Ymdr<_Hr37z!K?E7YKRcGVrZzKq`fn>U0JZQSBz{u-!>d_fw7?b2Y;9fNaST4%#>)!mL@poLj571 zQ<8le7)rF7zrCYJpx+8=`Qc4|y63%Xm3iF<#=bYXdLmWfo?ea4+cYsu+Ya-~Rj6ELp&V*V z?iK#)fRYDB&X9Cm1Uu%B8@jnCaRprm!P z)AkOp*+XsN;^V9oG0`R&KgomHARgvHx(%mIa*mrk6V+ZAu|~?ET!HKP30j8ZtZM^2g=|~b6oAYu`?3hzlZT6`vK?1=IL)H99Nw-r?Q{>TXOR2wtgzZg zNJCsOvy$2ksq0mdxB1yOod<(Wk3fbs6 z>%Gle-rZY0(7E|m50-_k9tP;`m&xd%?{6TQ+5doS($;_&lq8q_Q_AxUT)!Y6AEH~I z+l)x>w0gdnTs|;*?l~``x;geyhEb%C2`4W?^{^<|l)R$ifl4~)Uu;HXm%mGCHj*1U zIg$Da;k%9h4ku4($bA(h|9Z}yz8hnscp=J#X|I*~-3N1*feoozXf;zfQpx8J{^}uH zHP5@##l$j?R|R5O=^>~#8!=U?#`qTK@C6WH(kn(efPRN z{%jSXIeK-Y2UFi44)l6CeZ$v1M7Te8Kd5>X?1wY5#RiqY%W7Y6!9i}_mIeK|#xytj z2Z+MW`7?Wb?C0I3?Mz;uU-~~EB7J?Vj|)vcA4jkAy9)A9ZuHtO7K>wez%54lH=&suIOOskes4W#(kAui)*r8TvXHpi*MS@eBU9o zG1LX!JXs0UVD6xlg}^Yp9Eg*@%u@j2WF`K;mEAarkF0QV!E5{DWV-cy2_6N+jPaTa zjiH;lP^UsMc)pZ|JLlWCKah(456}M|@DnXn|37}?f7}1(U-A%_ky-zLq_fQan)3U9 zx0YRxHI-gBqeuV$#w+{{vyck~_Ur#I>|2&akqaHWfBy^e8^eRPGG$R=G(_Wwm@7-Cl zWaxdLxMQDk*L42y@W*f3cuS`{cCFj*5!Oy>a(Q-KA@BTej5+oAkyjpUdFLO!_4KnJ z`u0Ekyh91I1xwb&qTj0EcF6&pp3M$iJX#ec-jZPalLiqEHK`ljjdI6B4RrAzjEGUZA3x7kTGUbDW4N##7vE{PP6=K2`C* z1iEEs`WyN5RvAuxqxe{}j-ZcMnbhbX({{0f;uwG@{Gc$cSj-h^BD z;1o{HHZk^PhxlVR!<-Jlfj}_-T8=sk+%F%O_HaDixl&LK!(hK)9|w3JgXyPmvlqL| zgvy<@o|xZ*ZUco@?^79x`b8T=xvexdED>AwRR z=xh4zD-7f6omD7gUrs*`zb}|nlDC|i1}k@EdJEp$*)keX5CIWUgcUn0&-x>UpyiH$ReQB1shdqb|8zryE4Yx09oiZ!~ ze{K5Kvt>4#io*r8T!N5zbQ6on&#nuj8@t#PCFx971cQFErO(XH8ryMg+39SbS9vpCPT#;vxFA!_ z6>W!}JqbBmGZY&H{@e;9oD1#iqt$l??a&cuf)7XPdYc&d-7|u}p?97^W+|JAk;Uqi zuGpk-@;o>?FCIbnkQiIgpqv{2+S8f?4vqHGAvYllXPEKh@q#znv8n}d#NP?}GITz= zHNSopWj{bA0^A=I*Jun(F7$>J-+%?HVnyM;?^Ng|?cH%tWiHml3$?9sxzO|e+Q6zi z&a~xt&@ghFGesuYAc8R1*L9&D;t1e3`isrTrJub_x{MZ$Nc(f87@XC5;~$pBzOhNR z4`@b}Bsj?QVh?JZr9J+I&066!NL)KHKtKZUPX-c{!d?%Rt5okznyFOGfI>vVo-yhk z=|^dn<|I1h`Gfi{_8`(3h%ADXAm>BsUI>sNHPnX`?Q9i?5cfPWJqRg(F0>l?P5yDI z&?<6x@rS(eY5_L00No1M%>YJP9O6%hy2ipZdj8J`;26#YtGwenLN*9&7?cuji3;mT zeDVzR4$Zp5x4x1;?kGSqNBt0L9Hl;j{}n}0Rq4+v_>FwQcVVr)SO=QZZZ%?z)?ZFn zepj&{@^hREt%UhddO7KNdqcPUhQ|3uz|fd@ypf|)iN|HjPL*8^^8@WGajugfkM>Hd zAa(NS5_aeIOYhIMtga^=sp%>vTmfcsOD6EH(JWlQMBmuV%Z~q2xAAZ50TI|o)pwR)d0rfVazH#&6iCT!XjxkEW^ z-1R49mAW7FlkJ2J+w?FM?w-_tPEW+0P>HWoPL)L~CH@uk*`xiU9{tQq zfD+|F@@_@+3@wG3wiKw(gg|^|bUc7`0Y@vN=I;PR)J+?pn+rV$*DQv$o_(`bM<+on z;MQv^*^Ft;Yq9UEYT>K7p7H%J|M1}Ib;)b9?EdS$;m+_W>r9Qy6Gqh!NEZ`9CF;j- zM5zQZzaMA%{U{Pf7d@NrgP^0lzA&oIY)KP4d*~#PY`s#v8LmY~wK{TD=K`0&>@{=!o%8(!V z=>bE&njzD&n?41naG{5`6sOfYP5|ID^>jc4$CFaNs?ppPVT+HTj~=8&)AiXsW}`j% zcEXm8e2eNE^d6`qq#M1>s=@vE~-|PXT%FevS z(>PS}{IBP|kydNMOmnRVX_SD20BeI1Qh5`9b=3fkxH=snvV^xFG+XHlQTgUVKWF>% z+xPT+o^Bel9zUgbtbbm$mmSPgHKM1}`d>5@NiM22u^FEtg7`clky!dVbN7u+k@^!l zhlSE;T09^uhKQM7SNJ?Z)NqbR@9~+y&EuRZZUB~ZYYiti6k4KQ`R3s0JV9;%^>PDf zmXqX6XYkq8ICf!3kTX5bUGwTAi66S!E%N$X?RP{N6EBl}v!FldLEqAR!>2-&O;(LD zI+!I}#5U5gAIFBYTvJ&RJ1CqZnAtqSQDoleBZ9c1YMnChyH&r*YrKzUuDD@4 zT0qzjIkAX7^V(t5^!los^$Jb8UBB=kc{0?!_Zl+LuS#;*Zd|P=#L?Q`nv8DpBr?2E zw_&&N-9sUt)`3{FGt)_OEwWRA0>1Vek04r~iW{c_Z{yGNo0a*LqQ+BYagj4B_xfO6 z_gK;%-H;c~O3JH$vxV|=yw2ef#(6tPjevP_Sss|4ve|$+56im&lZ(5kpc|TlYGw{)4T6gjSs%#{Kw_J-b zY_M$Fwp>qmLVYVN*Nx+QEZ2UvA^ksHuDc@=(c8&?#J)d)ohc-P+`)%AOyoIrd#CQf2o(s@@2wKxig_FyiYi-2*Vf zK6^ChuHFX1*5^5}XD$tCiWZqj^85+6x2}SF3f=n~)>?ANBXB!=ZsGCbaX)qg1lin> z8(sO)aM+1f$}`Bq`8lyjiPYv3MWjH4Z0rZ6`_fvnZBD$IM5M3+Xi#HJ8;574389$Yu zBJGUqZ$saUXYeAIGPIeXu*S<%V7i+>suU({?At!{5HnJ{us zx3=qm`KY$TIpDDcWJIxYudwMs{V}UnE_9*d)<~9WA`L8-pIN2Rab+?LS)(U2rD5cM z1HuSPlZ!SJ>c?u+K@nU@$3My!)|(hTE-rg9c8%@VE)LF|;`rUr4m24TC?lH_mElH! zA&j_fiWnrovJPu-zG6G>^e-u6C#qD)#A2Na^abzypD2#4UN5%eT?8- zY@qNl;RH5MR*|B0_3TFex-npv3yq|1l+8Mxu-?ERRh{{!c^5aBvhFXt)Xwhomu3{} zl=JdkGaJ7tls|Hpe7Kleon`nTu)*GE-qI#mV-EczElpbAI&Kpn;z}k0`Jz4o*k%OX zfzn4pEsM>PrN3_XVzEmYr zWpyl47OyQ?sb)gAp>FUo_*fr<@yfa9L#f7Jd%GAynqP}3?;*CWJWu?OGY!_{5iDH0 z>g{3><%ckT63GRuygEJ?>Pvh6{@8=wSKED%p0{yyf>e&rT6fa3%0Z>T9%p4IIJXk~CWF$v_mjOUkzrc^|@yR|Iyy~{b>UEfz z!$`XFas%=z*y&w)2|Vq}%fxfV_gxN#swTm+(&+v1Jy*nfjeUneWIYH)*OIm7`fXjB zH&ljCmbQ4`%GHd%B%{--umERE1(yoF_DI3u`)1gfJii2gvF}qHj(;o1CFts}sY;z?GX6HX)t>11F!XMI$QyH5izF@-8*iq}tp2V7J^kzwM zb|GnZ_CpNe6OwyNoz@uO=61^fo9ib*XQ>plnF$mS-+EAd&wwa#(vKwO4oU0F;&eFR zp@DZ7AoLoZrJDNfGQeX@PSm#-AP7o0AS^S!CEwSEA6s7?udkb|NOxc7Kwium zZ}p_ViCP47PAAULs{7zy)F$d95S>nZHGR5*Pa;TaH$9g8`Z(7Ac&3%RmvY_ckH3>_ zk)WskEhcOxAzM2we2flv>RPlDMM}jma86*dA7ePN_3QWm?!m{Xn;FnoBi!t@Y+}0p zxl#5`>Su>y0j}1c;_6lV3W&g`*Z#|YS9^OP&MV(kv@H5eRjENn#vp=z?;*={f(#r(EB{2(%oQ`OBeL>w_yEETpfO z!sdb@DShQ1J>y2X5T-ocGC{_THF&anR^3WE&%J`$zgGb`P@ubjoXLui;hUKi2VJ#qCxjmi4* zn*o%h2tVa!iiz*QwP<>I;%s2A*xI#U?`lZ3h>Owz=iSd! zfxG)D6f=)B;6u+*=$bu=wViMEC}I^d zV~^j(kl8#;^fT&`Dr;ECXdx@z%EZ+8zga#^-i>g@k~ect#&bVdfJa){@lmp0?B4^- zvS1~&S9i64v8(-vuJ%D)?MHUCkLYS2*wsF=tNoy^cBiX-NLTw|UF~1!YOm;OKeVfT za94X}SNnjj_QSi{M|HJVb+re(+7Iq(FYjva*VW#?tG%qNy-!zr@2>W~UF}1=+Iw}i zmv*%u($zk^h{bBg-w%RO;0N;ZlWZ!?0o(J>anqaFivw4ltts;t#06ihk)$heW(T0r z?>7H;lmFY{|F-+TH~YUU{ofY*{X8*9vQQ8ra1-2j2>~u>kf=?Z5`?SRl6d5voFkN9 z?1@ND>sfq9v3(=;q8ybHGVw^~tK~~xEg|EQS4wuUemY;Nbo&t#aT9KY2+srE(Oe*( zbNg*dUT^Xl-cGmQ7F(BbwS(5_c7F7ast3BXV%6;w zI?AetEze{|x>l0FdoVG%QY#E3pIpsvCBL=K-HlbpBqmSL2k9{;ZkP-$)(lK{l?Ed) zxtZS~{LWB9Jr6VW(9FYZerNE@VGK{S zQ1HPB{cBh)cuId0!fgoB;IwhSJ!|uUmqi8GsluJxxzqOvqGpY&a#jucA>@&8nK7*o z(1JZ}UU}yK@Bp_IozJ|z4zF1f9cuBN7Ym@llo5w!vwQK?j`!B80 zcx*iP-}2a)oS=JM^Lh?em{0#ojw7mlJa=UzU#LMzf+kA==G zStpeCoxy=2~_p~eUWz;0Y(+4?Ts>x zz6*5_bA(8w*eJCY%IOH$dBh3054KZg0@_>xBAT}yo735j%-GjX7^ zY!~D&k&bUeGd}2=?%D~%1vb(9b^S7braOoLeZ%qXd+K*R4#HyXW!P%3%6&Z4O#}OtatX?4XQW$H5HLWQ4k3aEbkS6Gk>SV z)7!`9cCD@FEZy$-UVbL;rj2Yx*m*Etcfat(-eXx)VtY8yfmiDfdN+aIsnbx;pTd4v z)LtYtBfu$%NMh^4e`b4!?J(rn0N^;w zq-GT^RD@Hd91TZG(B1|LQ{#g|i2dXx_aw47@f#=>-v{8Y;lXw{c;g9k29$)+_Y>|< zq2D;BMf}WUwSFSWO8sOGXI?pCtk`d@RBmAjf>RQIZ-~FXIQ;bM=n$IvZC4Mc0P@$e ziyNK0RZTDFZdJp%vb$AJuZ(V2YP1$gt%1_UWMu}8vR8Q#e6VXAP`_XO>){RS#3Ipd z12fWKa&wc@xQ%&fawc!1CpN@i(&zjT6IT`uQMbe$P=BP~8-@O7#K%RP2W<$h^Pr7^ zcN;@C6uDR*O5KZ2&Z;jbc6-Z3QU3bvp-&hc7P5Y=PwvyNj?EEMR15f7Zvj6mqYso~i}Py& zyYKAn_FHRe8JxrR`rU~R$;@FyV{`fLwSALU@7zsl{7v68PK)@XJ9Dq>T3a4F3H|$j z$;DjPv5Wbwv^%d~HjN=Mb#(#u%M!pVa-qp=1grZplzg1Oc#r#9tS9+iTxY@di3^6V z=+pFnY~xSkcjL5rJ2O1I4l$WyS%vlmOn#SRuD6yI-(e>Hf%hKSiyivd*T?FI5*$pt z5shtreOvE6y+QO`dX2n}{tx@j`Mf-!Jpw%kuhX;#pt~hB)s}qyv9-iu8VjGk3;@|l z8~ED^-I984^mc?R@9eZ4!+Dn1#6zYSEXr2IO&0uzVM_>$v|C0&%x|>|F9cO?f%nfV z+UQ&^6a=)sqHTybqjnDma%8bm%~~$wcuzP%n2lN35H3R2+Cf+Cgqz%;h?mGF>)G#; zeQ_OMRvzEmJ2u=+o=~J~1S1y1e2lKcaRp)5qmSpx;T0b1tluh~tOHPbV8 zf42H3pB<5sol0^Y7RA;@4QR|=Qwl5{hR;d684xB!s_ zQ>7iuS2aVuwTC)m|M)Nn{qa+K#pdFu=9(Yg I`dG!VP1imeAo~e_^lNlP$cLik# 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 z

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νa-IOEbJ#@|2g;*?&~rCia8$r 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%0DG^M&UUl@QnW;Y) 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

IBwh>-~E2RD_u9f(uJSy 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 sj3-h$Knm$rD)=Y2a^9k^Bw*x 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

cm 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�n7e26_p31jOH=fczCtDxPCRcHGPs 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 z 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∾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�??H7cQgv;9D-yRPapDw`%F+B1PiSxkzi9p}CLaA<;eTGi z%bgNe>B$4B=4#yO8z-rV`p3>-4~j+Skypwj`zL*e=lfrm`d@slGk}t>ICTg#!+~}P zcB0k*iBid<8@6cX_vBChqDth(I$QzR9?pA zxTkBDrSr!5<~JkMLNDX55>bA;O0a#DF0{L3RO&9#kX`SR@a{R0BtJPW5l-QS1t=UJ z;}U^}Q+h!cqY?29XwVIZ*F;48ek0=RNbJZsL){JaO?F_3R24D5*qQnd%#3NuNUp3a3IOFjWXb`ZS97rp9}PKeX787Bcga=oB899;=D z^NcHpZQK{#7G#a*GA2hLdsj&~Q4;u&_8*TA<7OV?+AyYxv|${cS}{&?Jm|QX_|+8vfuOu@CWEv9I{Z+Zg zMsBr66iGTubCSxxc3DA3FgWo$|D@SJvBP*jh30W;i{p~o(dEuNsUf`cnrf9aK0cXJPELX=7)7{cX3UC8v#@nEVFjq%=NX`#kszFXV-p zHs$a!b(TJb{4tuR5{!^bBr7ir2}h>ysux+QV-6pmJaoz-mYfB;md?XMGMH)O>l-Fn zJ}-V`W>ry+mQ?Z;(xFTrJ89w}W0k?BOOh9+kjinAP7gy;n8U|f0u?g9)HO^V7v+8- zk4yK=HR=2-(ZZBfW!f~K7lza}Vdflq4RemA*Qbg41ZJ%5;D(8l4k06uKtSWEW0L^N zfJTR@EHO;k@3ETkB24vS;IQN|%z50DhRFsO-uvuQ5xjj~82Si@CDY8L@e{_5vurTT zOG_9VrnFH$nkWGbD`&5!kDq4UGTCucrcU%p));T<`0)WcgO6_|Ct6JUon^fV4?*lGX~I`^nUa>_ zL8pu}rS1}L^#a6zhwCZfvl4eNCDq`ze}F&Y=%?fxUwNROxg+ts(?dx@6x<+xnp;ko zie7bCC_&iz&tdCo^w?cm`>{?zI2+`8Q;5rzU<8XNYGtC853PF`J7j{6U!XW{0gaZ= z#Ylb$A#C~Z-{j3xhMHDfzj+5=6{}qV-%TVd-!+j>*s`%bQP6A}!H1Y^QK%qM*^xy= zO(*siM=-k4e}6|z-a4(={Bi8MkKjH{MG&I^16jcZrpKr-T@ut-#T0?-0xCroz%xAx zxN^fPT73qrB<2fN2HGuxRVB`W64DOoV9X&&079bVQh2pfh!rb9XZMNK<0EMf4v^)4 zLM1Uw*8MSZ0nAREScp)3B_8<2ygrYx%pMXZ3g$~h8=~3k_@CUrCKHz&%c& zG0|H7V7#V7;133Z#{KfiV0`@%{i}igOqOUjy^THI6<>_4Hp(>W>Q(Wi05y4OY-GL< z_2>;1d25f5iYP_VyAw$Z50)#ONz;~H@fenWlSK~?-Yl-J01 zed81Ow??hV7&=!T@qOH7ghE!h;l4!$EfiZ{O1-qq#;a-E-yKKrRBzQ<`^ciICqEBVoPeLXb%0PV!n&4QfhQ!duePh_9)do?1Mi!g z3&P_SwZhhO=hylAA;QU~XhiatqEM;!=dT}c)TE zlZ&b7B4f^~c_;#*5$o~Q8cH0ZQsblFSQrc#g|4{7ts?Gx@bOX`Pc8_k9#m(#lvebu z@|F3xs4iMDSBx&(x*&ne!Dtz4@IE=Y7}cGhfJ`Ro2}p~x93TGj!s^D~T6U#~%}+u8yx(dKmPX!)k(lP43QQ zi@^C0>+%d6>SYbJj_07lZT9?lhAPJ+u4W{}IN2EB5%;vRJFl9-9TnaM@@DZ@!B*&` zPU}TF=Y0&6_fUDOk{Sy#CF1S~KU6+R7kaZUba^$w2yipN#VH{k4}VvuTfCOmUD6)Q zZYN_84WE)0{XCq$8H^lmXmGb4Y1_F7a1Q>qw)3a9om%rySIA`lHp4ivClaWK!G{Zo z{5E_*8@AOx!M8BBi4*%)2UpN&fmvQ>9J^akqd`!Ko-3u3zfUv&vkj%SiInV4BV)#{EM<7@c_0EX*VmwYGcj9w%>s&MDoaZRbz-vNB;PWadm&D#t^~yg%_vt@C zL(K;)lJo$w-y~qL=wzIw)%rFyXYLFN4-ASiI{sE5)v>X50VVFKngrGy=@T%tSat~A z>L|hctzhU*p!<_bN8HBZP*ty` zfL-}3kV=X(XftnhO`ar;0Omt~6hic6NYbF9#IC{M2FyGQFuQ^1t%@C}1S76zc#Ef*Li-C!?dPiiGggGxu-LAkTcv9#!?Xgh-LmoMO0AA=m! zS48Pm!c+BSvktpTxiPP&$c~lKvW}!`wS3XS9Qi9KGvtW7@pZHcT#>&W-eIw+&8Z4! zqjc4M(Ynh*L`9@x*1lUp}s79zc2 zcI=zLRcI;Iu{jYiu&O01;0$XuNIyU%x`#Yx{r$Pz2Ubw(&5Bk#L9bKzWCTZhdwC9) zkchJ-4W#H6l&5y7I|mnByY(9RUOgOwXfRq089$Dsn7g=0bnII1UHL?D;s8Z za%7q4E8J~)TtTJqAYxvYm#FM-iVcZQm-6oGxB$Mi2q<`FiGaE>vf*j4W*8FXS8!ZD zRSE2PofR>OhL5|`<|mm)EC06eZyRd>59_&weL1T!?%Ygnb2%QpM+ycY5^L$%sq;s zU$ffX&PQ}(>dj*?_9I}h#;LC|x3wCSxbFdqXL8KHV3@mmUMFD*3p$A{6s9G%$kTYq9-m!-3OwwMyrGJFAwsVG$jiuohU4sDvGMcAB} z;j`4X)a>jJm{+-ym=OL%VGABi4LW<-PocLT!;F55d3;7h`Uun@mo30O;JbLqKnvLR zH;D1zD|gE5MoYi=DCW-)egelJwqqy!8|0C6fSqcsIW2UNJqv8+>p~7xZ4zy+Q7l!0N!?|!9|XY;v4cDtM-tq{U~x*_zY%ZY_HCmT7s-R)=$B4^e@^!82m$sw&Z&xv=v_7QM)z2 z2sx9tkYfiFahKST4_*Q13jz}oh z#1zh_u4&y;SKvY3m8^dGYf2+;(pEi*JR9~4&R;mcozyt3;lC|R5Gs7Zf}|^HbwkYm z2iGH&k=WWbB427Z|CIL)w75? z^&W0=%dc=3l-6lX_rbL4g^bwBX!~1FH^6HZkRIXI8FlvidTupo6>nwSQt~X+ag&mZ zIvBAG6jI4J*s`_uO(la9^8EL3LQ?XUyL)i4`xfq-x9I5T!L8&Vte|3#u%k5geKJnC z*&yIni3aJ$*z#Y*-6up^x<#ygt2nzV5oH_s+SCW7e=;Qa2(GpJVoKdv^)*5N#2?rV zWS@%op+V_|LI0KdNx)3}Q0^0gt6}P2%5S_gsMuG)Ka(7+1I2=gn9~gEv#*4+b$Q6u zRH>d%0*4TQf`6s^sJ?n+Vpvd~SQNw)hhx5`!vyy0PZW9u?RY02q=s*iUg6^y(QEEh zf|S7!x1_$=s|V~X{4zWXr^I}z9(Q(td{N=m*!N(wkqU(@vGCwi$u+pbC+{j%WaxCh%+`WP0B7_Gj5M3#_$b?;oS4v9t z9x93#lM@`aP38p=M3}*j%$o&{zB}_`;w~48`|mC{i*%z;iuc__vH(LUlEOsYiz!S! zmEO(<&HXf}Tw}<0WIRJ9EblH;2?v#jdcB$8f6#x2@V^peS7p&CBe&jxm_>BaA45hLjdbGNYUt$*ulF;$`s;9x?WT}(`(bfG$S^u|HB3%8Q+F0Qo3+`O zPD8{S$@$#PT=p)UYb9?t5vb$NA<1D#zc{NoKIGZfXh+mhfA?mxb_GIoGr2le>tDBq zsc|wMg!LD-xhqK0uAGdZ=+$?zM>le1+wta6soU36rFUtkvHA(m0NQ=irF?LkNPXA~ zN`D`TE$sQd)9d{6DxVbtXh?f-Q?&k7tUuSvZPPxUCTX$Io!iHs5)TD?b-5)Sx9#i> zq#v6<$(bHVZwN>yr-7stR}mWU$8yYC9>UdtXNRf?I(L3U&=F84`DJ)mxqr-NLZ>6{ z11~0L@Vc!Fym%hLYnb5G^uI!U0baKLG?IAs*Mn+nw}gZ4aa;2DEh_JD0_s(U`bcnC zfG-;n02?pa5M^#y)z?`l)nh%&y}=piqjB5{O>FTUm;js|r-sy#!rmmDskQ znwBIY2DK(y?5V<#g{~8Gr}AP0^m{$N%@SRv65M=s*5J~2(6rRO#?>1yR&Bkz=V*SWdeC)2O>Q*b z`ua@Dw|6CEQfbslFiU+?E7FI$0#=Bph-OVn*^oQcwrnI(bwLN17xlmRU+(!^JXQ{7)py z*-0^%C!>1SEQGI*p`&6l$k64gaxO@pkHOd&!UlHr4RqPU=d)oA)88v=VP%asx7Zf` z?*E5=2K4uGuj0HILjP}=IsdiLKX>$3f<7D!){RWuPf_4t>s+`W-E|G%etR1Cb8rIx zBe-8>xL?Kv`p$IGco+f9y8l|x@AHQc^p`<)%8H(V+M$FoBjIysctva59r9`0>_&)& zTZ=EW-nxsZ<188C3D+6)pD$g9TZ>MHXG7h67%B(ie|)0yA(W4@_9qj*rS{LjFbzb* zcN}yOTe?@>KT1(Vuew*MoPZ=w`dvyf>S}5Qk8sB-so!!k0Kw5|4(NT?%{Gp(jZ+P$ zXY(a~+gdLoel;zf9CTo~!1WMkNKO$%NF9|>FdJs!a?xd_k1)P$kEc0ws>&|UG{_QprjN=mb(4ht(SX= z<`Fbru9xwLixLLK{VizrvFsv9zxrc1?U&h?ZHpdfW>=A_A{S$lak=Y6*kzH;E^1}s zsd-I=_oH*gULfB+jmwl?P{`!ZHmxI3>SipiT$R+9+LPu&aNvch@>W9V{22LeZ`-Mr zFq!F;Bfno z!;qd3K|Tpe3o*}@R@IPh9b~CQ_s{4*`rb`g2Se{#pDgh*s~Ct9R|&2k{73;dBh># zBs6=PYeDdDt~1>46XUvFzsg*99p8PfQrf5Pi#o;Vt}LXCyHMACM2;(s^f8P|HdN$M zOm?j=L}4zk+)EPcFw8B1?J9H&VJ~{P`7^I}8!Y?gkF;s*kFm;a5xvPEH=a|D$W69Z zNF4K)a>~QpO@XAuqZE<-m~oRPp4Hi5JRg;{yBY?8Lk}&x|ttsI&&Q+&Qa` z=m2*uvlxP9f|=Yls~H>Pb?5=|_*=?-ekhI_XP|QQ`~=wbtD{1SYHwyta%=aL4OT|V zWRHcO!>(ocC1j8^>xjZ%wYs`Yd=U3(Jg0PbQtpPAa*k6{7s-=E&~Nc68BB7lB$kCC zaeNb>p4IGDvFP%6>|6bq(?TVz;OIn?F30(>DHymg7*6WHrYw1i&I#j>lWCuQd6&V-DOF3{x$B3bR$b^nU!u! zV?m|6Mf*H>v0C2FCfO`fTacj_>g;~ZvAfPAfO|2$u1js3MlE-*Boj3YL9UTOrI^s$ zvR+rZ*BR8*lxLGCBx}g@q~VEiGC)OCNPR71$e+dew}-}PxMCBR;~nci%D$T(;naOI_MHBxoXLqy z(dg7RGGc#sR0EU>HM1P5F=D{g#3LSY*Qp`I7L$jfq6oIU(47sn&jqLq(oQLtf7gvZ zf|F+#!+Wk4WA58CEe*lNy>w1LMbYaw(;tZ|8xk0{`#}#YSMd6y)NAd1rMsp<7u16@ zm9Wqq)k{b9+|)Wkp#xHWI=%2}dFoXph)dQcNg&qwH+g>!`(7jsJZEur0rp?+@zf_8 zu-skTfJwUFLYw2mMN+kvyR$I-)AY1dQ$KYcm`&UWs0u_0E zCgj~N9f`hOFP+8H8DY=$=#$)G9lXCT1qMIVyMhu|N*~p1)8(a`5ETO0YcuFc;>F6i zm0MrX3V<7e%BA#tc~;Mr6j0G&VuHuaWZ^x~5$v5m}=c0o*c@D!4*Z z#ShFw%I*1 z!N7V|0m+!$)iVutclXk%kZmQs8l0qb@CPo&d7MH-cyQiCt09S{d|U{BO27zycwIhu ztO4#6Lz%k{4X1n}5Z(KJFECl9D(!63tQW zt|<_ORAbSK;evChZ2S_GqS9Rlr6{B7b2h%b!B`6=5pc2p5!5Mj&u6so3Qu!-+S>hX zCU^P`xYYuCb~tDc2CfPEjAj~~u8R1jUysM#^(=fAxL@LGZ zWt^4eqSq>gduep^_n93Y{o@ni(Z{2f<%PUNk0(Dva>;dwqu07Ky7Lkf+*<`nqi`o? z0A9O(9@N|LvvDqfe}0Yx_J5IP*`rw_GE@9T*h%*csqG1tdB~GyLWcg zmRem0;{Al$)*YpSJ~+_Vd?{-y)bxd^;?cNnP7ZYCVVd2>9frs&>#Ix~E)1p-v$&5RrB;dXgF9e?j)U~i(1yRV zhB9{~F{vpm7ilYZS56m}e>#`DAoWIll)KBpm|!4Y3``-mlQa<@N)xfvEpbg^zCXaz zH+@BuU}ri`f6)P^rw;0u9?m@Jvalco1)}o33F{TI(+$WgY^9976#H4MR&5ZFZG~G%HUBI z>{7Ctwto$hu7b^7Gs9G|5{MCvLy5S{T@4wyERe*rA!~(|n2^{3_TwTrOwU9>a>Ya_ z*&yv-$!H%EO6exfqcBmKD@HZ(4?Hp1$V(|hCr}f*Pb5OFyWEux>z31dRplg&p`I3 zqs5??vBur?F{SPivBq7$Eq5pC+fw%n9mwo{%iSsd-GAhIcaDG8x**rf52tG-OPLNU z`NXjOlGL2F>Pojne!J3D2;ncvdO64)t(TR?wHy%vtu2H1ih#zB6CtJ5uFC46+?_-Z z3-P5z%t^hmy))^AK9+?Jh0$u3J~*x;2PoT4nB} z)UcZ7Acbdo{l<$T3|Rw*rcpV^aNO4x+HqfpK9X6yWgBr#R%hkzBaYsFn(T=)C@e?P zuR@VAMtuhtv5-C))s-aC1%We{i2~_q>6zS}sR8tQkh^e(lpn{Yp87Rh$Ql;9BE!kg zGe(MJmbx^raMR+DK(!W%Ks}GXk7EF4UG323dQa9>_zruTgSIcFBMr)r&Ed#u-du8I zP0EqA3C)w-)AZB_&WJxf9U-nT4%>wbRGE8e4!Dz{X#-l1LLw2RuPfA&UrjAQi>q*V zfJbp1U>vPeuLKSGhugvKNImwL$75wE{t=Gtx+4vDI<#qbvK>Y4;#vOf!ank+S3eKW zAd>PbEN5)<2HR%l4@^!cfTowbE@(@`@7$w8_}vfu`f!zU14RHtf3xKPw6t`a1z-sU zVe81pF~BXxi9vpSRP@DjvPkJGiR;NIBJG+TTJz5)d$WvNT+P;Fdu*^Mcupw&z zA+Wms+T}g6km8?(?ut1wswh_S)?Q-D@#+F&G0+>xnw5$(`#AU)5<8Uy@4-Sfa1W({ zpW#UWARqDP<)Z1vP^bnh_^DCMrQ}#FHQ8P*EjFpk=*~~6*&5T)tz>QM;^cw=)02~n z^s8Uq$wm9@jwB}~OwRx!T-stI#8vl)Y1-%5aHpRjlMVr8MeboD1Kd@(=;InQ10WDW z@g{5r__dUHd+xduitTQCCt2g)5zD^6XhEHig7;xw>nJpq6$B4ro?A>lTx=f6YTweU za57qgq@@a;C?b*K3iJE;7!yI{_puekFjr{&w;rL2U9y$---Qt`?z9imq3(6eqf4ke zSigdRw%>cgnlS+wOM+2IrutHXQ~^XSR0TW4p&qAmFYO8wTAX`v7W=QG*PD=y91B#i zw&eq`1!96pwrF*VE$#@HrzW;M{Ce7?sD*r7LyUnIe;=tC6vj^qSS@Cl`!yiP*|L(* z4?L(ac!j~7s$OY9S+7r0S&BaH5AbonNQHzdFsz>&jod;bT(r|oR4)}a;7uw`=~eXk zm^w1Iq|~Q50{0N&6^si~5bGl?g%5g;f*HftP)qdI%v~1H+;a%KT1R~9IcwLHoY zlq34g=N1@Yq%=>yp9O^Bjg`XUw<%Ccv>)L9tI@!cdm5@q@v^G z(p*7xF(2`qj(|oQu{dU339si9->EyL+iNU$RLv#?^ykFbD3^FTkWoXPjrW@X^bDDG z2zgZM6u@wT(y+#g6HkE7&^IOrA=@=+bKTjyupXf0{7N#jyDhIJD2(kkfSAK;DKA*y z+GfhJsgJvtv`7VH1z-CYY3qnri46}8SWC?1_*0A^zLw3!)PJ;|xB+9|?y0A~?)tyT zY@$Z=WKp*2DQC(JLC3UB+}W7jl>+9T*C3g zycJSrk5M2`w{STHAZ_oSGF+ojBgW%&kR!~J0+NMhwGkQcL`w-kRPbx@oGRkMCMhHp z+`f82d(_O+12xlmxr8-#o98G-`Z{6Kx|ZGwfp_r?2*3rv6ak9cpbx2m!TM5A_pzyR zr8m^gjo2LTPVE{&5qN9*eKXSZWL}czC2q$WyX0FSS;d^M_h)j|FmrC(^1t(Y81!#{ zoES(i!E>b8E@AWO#2|{4qDcr-rSdw^F3j&TiiX8R1vJ|+JI+TID~^mUyttSPide2O&MKJXwr<{QDqji_QIHv1vVO$>W;3~2|%1z9fO4Kr(b&6pi| zJ{du4U!VQj2!@B7U>k<{i}`^B?5p^bcV`G;3MFDPjUVzJ@i-^OrZlk&Y{~R5B`asoHx=&D9?x9!Ye<)La}AOXv~}xT=ULDlJwJpKG)Rn*ejp zncHfgAijIh{|Ck_Ub3JjoQy1}r-##DtCjRJ8$ZS#2xK$=ZO>HdOyC+O(FD#@$4;I&PN_c0D|+z6;9uF!Qhbw;w9rtHPat z!*xE=@1?`Jj_yCu{CoaBLYas3_P#&*5%4K4u1%vNiQ0HO|QCz%d`uEg~wYtcYXF=8l*EH z^P@{jVj8CC0B;YTGSg?_qH`VUhp7p6v6;^py&>uvfO`H#nqVJ3P? zM&WeYXH9zi;o}aqH)JIaS3n-)RD045bK>+RQ_V~Z&2-Xfp-DwNcHFoI8<+gU;jH>* zr$FY#v}m&qA3N*d@nae$Pn$$sP0 zo$yyWZ*%%_rKUA&j7?3`?9Zs_tlRXJnFE`bA(>E9W}K0yT5}-(xaF)CCe4~00Z-|j zEw?lObLqsaKI5tsR`-OgLzhgSF`wx(^(lEf;hzVYLpkqor4}vkjSa1adnq5ITZ@kj z&+%c_i(f?prZRzsUmTS2;>!(%Ad_{seVCUYbKDDDE_-FYxF$c}&mqW!#?!hfixNMv zSG+hPnm|@&P30*)H}!_J07Ijkn~pbA_XXSn?Ik4D=tbI1_b@`gLzDVf)i-&}l2PL~ zk`O2UFv3VY*go!Vc3h)^=8ZV%e8*i*wW4yo2oVaLd2)P?Ul+pQ?;~o7>+o#M*G0v6a>-1$F|Toyew|C)Za~g0@<`&Xx`{;4-=UmzL9OQ$HQ$?} zm0TCi_qP9i^M&apu_W_-K=b9-YMbvrazgbZ$>lh@%H zYQ5ZslXHwoo=}kVSqKEbvirjM{G&j86#Cuc@y2pM{oVYCAuEtgch_Hpi18jQd1=wF zLvD;WsU!71TVP%6FH7oovp!EXI^B|m9D{~F>Es`a1dnUFz9S`=SvO1FgLx8C$m%G~ zz`5aD5?smlS?ccBTOVjyk~#b}MG9bFBtW{)31kH`k?oZmU@LqZ&7kP4VcyB02#11u9WR&8hh0&YoA}lR;%QKPhUyu}kywb2h)QZ@$8s z4p#zq+*cJNq9vlBcqzY=Go}h@s2NUzFU4?C))F_fAm{SjspxU8#C?&;frLjOyonUP zJ0Gp#ae&>UOV-pLv8fFza?egyMwuLtma%3FARTj$VI$f6go|C3j35=RbBb_!u=^+K zOZ2 z@Q{H>6uAe8Mep}}B5dZO@_QKSudV7Jp^@Jz-6R?3JB4-NLB{z;_rU>&kXGpwujj7s z2PHWwM)rK}`W-#ed^8saj^og#@{R-IprNbLELlai*GMAb+*#z`KsO1QrxQpu&90(| zIbqrhnhW~4&fXlD6;qO=cjug)ik1{Y;%+8YOdogd>{j~S&OKL8T3~k_shj&SZ;CVW zv=16x$%*8q4^i=aM8(ac;uow>bWEl(qhnfaxw~nS>b?fX(VMlZ6UQ>KiyC(rU>wC+s7m_(FQH%$`WYPY?aZH7EemD zw)hK({hJJDPyhC|-mUjLHg0a-`gQS7mDlx#IvyiAHk-9gOxh-S2 zjhZttwr6=PY4aG6+G0I-Zz>h=*^C+OE+*wI-CZegwYy2%-6s0o&b?#1d&w8?E=~k+ z4g|~GK)M#~^yb!*6p)3y(S~BI@H?s`OWM(n)Q*-C^IjWmjy6Wc7!4b{?`+`SulL~T zEi`0tj&_qQKID|N5-xi=?bG5Nhd#tYfL{)j{k zYVbj#YHO!Oa1g)Zm1zLaySPLz4wqrw7EUloWA-Pl`y0 zggE10MQqG~e4qTw5@UxHg(ARWOI9&(QKC@+H$y0SXK41mg_~f0OK``BH30_G-$7A- zYa+ICLocORB{c>nd+pb`*fm4SL*{QXkA}A$-XBb(S*d5IZ8r>7*+O;RO!N30= zHXI^12m>0S2Utniz$;>k7L=|WBSwKxWUxDDcAFzI(YPGjr+4$JV}m4PXxS+ee08+! zyZ+y|?6n!oer3y+{UE&U&PDriUZC?3yb#F*nsYaVjPj#^#?i_(b5r!e7w>A^-9=9y zhlZE9gOztHaA)A7ED`4>Ogo?pRxC~pCOwmnZa4Xe5Hu)JrhIgJC?7o>%14(-KDw3+ zX6*7SF>V<8Kb;CjR2CkLF8%R(d5i4gE+SE;Ch!UgK4b0-694s~<0A@G!@3DKALnkK z$1^=jO=63#@sUG@vnkngsRveDl(M!1v& zBJJp0uTUoRO>-JUsZ4mTj^xg29T~}&FEZUd1u~0poVP&dA#hKT?^lQZ48#rl?zjcD zJ}@i`5syb)AkS$rCWciyp|NhL`Y3`FfGKistH44Tt9ym8!$Ks69)hbz8Gl%H==i)%m{qw{4#e6WpZL(4k1YC3Q2oYNa6JWd712>j6;kTmc zJZ8=ySYh!PiLds;Kvv7eNL+oyupbX-1o8Lgg(`=vX73{#eGjoln|}^@55L-OE}Dwa=X!#5eVvWIwN zj}G=(X48KIxPFQ01B`+0Bt({N5oxNX~dR62%YN6fEH)4HJ#ga`V*z=YQ4=2w%1Ijr2H9oQ#o@Ekyax)Yuj z54m~zmDGp}Ce+=StmFGB+$-*yrb2TibHZl6FsI5V)=_UqM7@1(AVzXpJEsT9X$xgk z4ZC`3T1LHoPAH>hp-~e7QMQO?r9kXKB(Wu2OATX|01J=naOM*79t(RViNm?Os~=5LAYsi zbn}{Zv$vP~vj+GuS{W(w>PTe;KZgDDxH%mV!5fOijuyIWrZsVVviWvN;9_Bw@_e8> zdxmxmx6N5_oJ%Pv9CA&zzi@dFRq^ojvXZ)SUjmD}kyHw8_Y#s8H;@*8X2@i5{YvHt ziR5QkfJG!5Nnt1=`5BQ_B9iZ8-|tQ&4~q7qk%$*QD{@!Q`sPsTvT13Qx^`9uN<9+| zyN+SE4gRf&diI(w>!TuYd_sy$4;4r8P>3_nn0{$H+%=W1YZ$H1DpqOse(s5SsekYV zrh?vZc4CpFt7YWcmub*4bhp7z>r!1`*kLVRn;|EiA+Bw{Ts8E~Kj5PC*_+P@SFf7R z=Qx$P*JD-up?lbC2aIp)rV*-(IJaz#ka2EljZi2Adb{6?l$ndMvId zoM2(LxIUz^LKX1QjM(at;6)7Vh437N0X#a-bg~G= zM;5iQnth4iRH%%x90*Ijs&V>^bGNzA$<{B39SIu}2R=tgdHXquCXXa>7B5ip^pZ_e zJt(zd9dQOR`O?_^w=iDijr4spC-E>$qEV2SdjVX3&Pv^#ayraBVjQ28Xq-A?Sz>V{ zI7MP{Uvj8y`inBot;PkIO% zm0850AB}YXWpo3!(@0nHUxZospa4)EJtw8diA~SvMY+2Kf8w%4CD0q>p2&;+NKeZ! z@+yIsp2*=T^S5eU=(jvkd)mP#r0h4#=D=uor2FC_@j9W;RXBAnQ;^&* z8>6{tzlV?@wH?m_JTt$|n0F|D!+G=D3t;XaLqKPdKaCd2>sC}zTIPiXOr2#`6>P6% zHdpv%zCdMDzmHmGRLD$wJ-SvCio4zPB5;2o2E_avQ+{IjIod|0HZkpnCtp3@MSf!2 zBO9gM@O-Bbj$byr-CF(swPZk#Gg!E2=E|bOnF=k3xFe^wIT%5tF)Gq=t4O1E23Mvi zU#DsQrR5^6A~!z+j|?w-Bw=^rU#QyTUc{kU*SfS?JG&#NNub+I7ou!6o}g1sB_&6P zRQ<~+zOo4FUETy)~JvOXmRu#W%2kYs%tlB|Uh$@&x_&NqmKBrE+Sq)<5?cnU=)o@9NBzSwt?dXOSn zS9+4Qwj0T^`}pBrZCS)h37A3Cry=Fwx9SOb41RAWw2JIChQhl1O2Ec+?U9`1ryJ%* zQAkx*$!I4s;ij0$kB0c+kat*QS?7}~i`h-$oeJm61BGeKg zTNGWEQVM@D=5;ZY!9m0B1hW1*aYc62xT8}XK+nqYhzn>6)u-i9gkzH2y+@*13z={F z^*YuXRy53AF@Q70MKegg4B^#u945UX6Jz z*e$cs0~$wGE_7Il79MC2sb9-Dfm;df5ZnFG+)Q?(40hvJPlfEp>i~Io$%L28g+i4P zE%GSw3WRXh1v_x);=i{J?_ksYxt4H|3%c2A{4UT9nNAd*fOiXR50TswF|b8Fk=SoOugg`5OKyh=#U6R?lO>J z24`p_J+x9E%d91~c~>HNMZ4_nBxT&)CpJiW-x))yr{@`Sj_CP>aKhZvW!#g0!_>(^ zQm%`^?&`S&M`y6yTJRTHCA7gQmb*C;)0b<5H@}HFh;ui|q1LY4+Z?dl!!4Wz&sT<0 zmYZ`w<1IGwAi8wLDBMHAf*~jw-a?zFLJvx6zX!DCazY;~cC%NPz_9HBb$f z0M~~5tjwGZ8mH(p-ulbQX7MKJV7g4BHfxI+-*51H*&EzHbA#O^deIzCM_6Wb zcV!>r$K4XLk3VMZTB&x^J0^W+>3~c>0RdH@w*JSc|4)8jQP)5gv9fs$=}%L69Tav`*|8pE!(@B z`Ur79ngWT@&Z}Y(`QOS2t0_H{L_@RKb z&|O*7Uho50{|7NPN>EU3wFve?vOz{{EAokPTpjGP zm~~3CFK>b~3Pqx&+4o!gDgFvya+nlea}k19Ci8V&*5u7CYY%SO=cidAC)b9XbF^GP zS48$fYWWyOXBL{hDSR&7vyWQN+r1(nN7$DjklYBUL(F zqWFQGVzBD!0h3zjDzX0(q1Ko?LDFoRb=x0*%Pi?$p?Cv&YCBm>l5)w@lZT(QPvz@#`K}>1ncesqKD$ zAc?*sVhc@%S;`>Fyhst{YKXEq!5B@h&Y;OkA19g&*^OwjB|JD#H|C|(HvdARTn$l{ z;S_lwO_V(|-y=~rZjSzqD6g5$)FcC(N$!Kq(aKDf^JZx!bn+!CKOiOi0o?o&MV}Up@+;;Pl-rAc*EFUbCF#xxL^JZ!>+qfst^GQa!Oh!@e_$AQL z5_cWuaXr1Emjv{b*R?Jy*~Z#QC*dxhF41TR8VJaD=!k7jL|@wx8+ypKyS$Hd0i3pa zuC?nhphRPPsqxxbjiZPhr!YzMyxDtoX}xPUh63^@(Rx3cq4jR(mUuITTa>llZtfBc zc_U@AByipAbnSjsuL%)k#hixE9{1Ezm&{m!`@E3M@zv=y9P~`Mh8u~{gwZK- zClYMyIUNqq(ll3=?QbFE{fWB{3%gjG)v!Q)+(C#FZfNF_s}YFD>N0S{{qt@It%kFg zkO~BOS>j0Q9A^9(GClx^^YwAPto33hJoa>^U>q_%#wABul}M@57;0YF#$u942-v0W ztrV)^|5*}ZaU;oC84}i%3tI?#E*yKPQvi+S2w#Xoyvn5Bo5@dA7VPit z=3l96mSZn03r4#a(7Q> z3~@wRKARfG#AeNQiQW{2HeLE75 zq~;ZWY0d${RW_;B0I$^Ttb;7;G?~v**6C=Qk|~u|q!nSCM*3Z9g0c$wExp@v3~{jy z;ZCcEjor(&Qwo+_bABwY6nR>qY>9P<34+%`_JDhu_q~w+_V^hgG z@=uhDK%tjiMrO#!fl0Jz18q#7&x zho1JUCXu5+dZx%nHHPM_- z9}rUHjekyAz_#QPi1fpP%>}*icN1=6XkC6-L}4=SfwD~@B+eNiU=0i6zvlz*l$Qm} zYwZ1sf?eGm6X8CQs@*lzn<@)-a0@XJ;+-dUCb2qw>82E~xAJLO(I0V2AcZ077I)2| z#?wisqb>ZldkK+B#BUwe>AfMGccb*{hl>CV2CINbp3%RG7yaBz6YK05!rrMo(pB>k zS>5)Ar9AO4><;|iKow>_Dt6bGgg3~pEG$zI{27U_(({M=DzEnJ-4`{yJZhK)nGe~o zorqy~Zyc&D%zfRxT#7ppXQ$+Rq)MP=GNYlU24dh3119_Y% z8u>w98-#u!eVD~QQ2^MQVg-ODMwk|sI zTJKX62A7>tlF|27QR}<2Tc=RvwDOGB*Zd{y`_A53eWzMqj3YVsJ>1*`EC%1ijbF~X zA399ykGq9~(kFG<1b7HF>UPR2^L^Z#(-2*I|n5zApkQ-jy=qp6=nzED;2`nanq() zt`UX(PqCx`1pANYAdDA&Xh^;a-_UjV7n2@0l@TR z!-gpjn4NmkLx7i=R04>NnKWg>Zo7t4n=*a;G!`{uObP`AvuJ}smy8?$q*NF?ZDR6J zeaf43`Uxh^!JS;syv80pani)3`XN~0ZnRNe1CAm#7T#YpJq4# zLWT<`vB22L))`Ig0FMzR&;&?aFus1=*r~Qp(ObRX?{VWN8P@7gpZr8Gm_8UC=0@O0 zI0k>El17laz(!GXVO=W6L>dKY;uBqrKV;0o4RvZsZiGW7)=wp0ho01VxRXwyYpw_Y zLRyEhha6%Hpn>68^dm$UrCsm`g1_pgj5}<6GW!$A!eL=*4%SD?n6b%;9_=6PAQqMuts`!({O!|unMq8m|Cx?bL0LHaS);87<7j z)D*Flm!i;#p}zTBL#MIv-LqsEAL<{kiN1Fjj zkH8W47IC;0)c=)WHUizlrrAk%4ms3|V8rjm^C95*<5=&N*86Od;pf|v4ywc1qZN9T zF14H*X)W1^8L1QXQsB;>OplTb0CJ|ZnHHxL>xl;lHjH+$=8^Y;7%k)*G;?y|74mQZE zn!X;Lp+|oDS)*Lzr_Vf-%zx!P6dr2+VL1O6!udbxi_za=^Z$c&eMC6ed+GTnFwJEx zf#e|D5j1!axi~SNDM-7JeP3U!jG-k?IU^I;&yJeIcHklGp2?%~;DV&giErldZ0Q0^ zgv?`W|6zgb02h)7D1u11p`S|a+Q-jYClGDXdJE&kEGzQCtBc`DYJ=oj=m0mV`C ze5xoVPUkNyvs7ZJu-L+(0lqIo;(G@bqT1YPJRsQzJF|mqGx5Z*pwC_sVAqk$ugulslS|6mK0i|rO)?T3!w17w zbQz(-O=%*(B^ah$kod3E#VTdr6@2qv_=TM)x7;!!uEK?MbTD)@E{(0hP&|A|VH@8! zC|j*Ej6)I9%j@C{`14@E`elfY^IN1CTcOCnXNhpe)8oSYnucJ&4}-!hf)euQm!90P zLh~JfO7R-#KtE#W^OHfJ2~>HR-zfi_f8=)rTdxfUOfZ+>?LnLP=)Lv>EZ-l4=fM1= zyIzEYVBT6FaV(lR9k z7`>OD9ND0<8l_7YYSQix?Ka|$8gMeXtf_ojWiN1vfR+Ke( z4bE25d99z1H_!oA3{E+QanI4yLz7@t2%-p}8mGinfb4=K7O4e%`AU9Mka(0j2>2|q zEVO3KL+x0Yk`9-|_qJ92PMJabxt+};>od$hgI!|`b&>qTKEYXtLE~;`_Ur(woxTg( zsQt{|pnjxgRm44|v(TlR!w^eH=7(U6aGYffs-j@fE8KWIIn`>hfXo${e2tt1ygUv1 z6njMG0S;ZTfEx7HO56cIf$pA+}u{Gt3&75y9b+-2zNyAC~wq0fCaJPcdqV-kCX7|#wJ zvJq^?ADg5#dM8iTp1@tK+|ipz=7QyJM;xu)>s$^+xb3(<3+aY%CLm`W#Q6Y(Bl279 zqjR|P1__O3Vy1hF$mj%z`rDWdejD~p5)ika%1`OA(bh1uzx&VXV4HfJx9B;3Xi&0{ zQ@^0m&!(2a>L5?9h(cq)pWpEx5hKC?Cr53#*iKNG26P1iQn<$ioVF(fF}Gt2Fai1#Se3eO}Lm#Z6hTs0(3XJ!`%sv%tWZf{1G0_5cy9S+seG0NUTS z_z}JwMBq_+gb3Nu1(CKd0LUl-M1)TOQHTq5`GUD=fCS}PoW?0&PyYrE3zqgGGA>}A zaev1D-VJH<8y_yypR|mP4`RQ>>vM8rI>vLu8zG#9k;O%nHN_A0pk_~!+ACxGN;Mmx z2+kl%D%La3_x&+cMRAEAPET^;$+2BSJ1#Ss>y$3^%K1O%k8;WN8w75|HC<>K& zDh|4JK6oL?RdU zyOWz&pP$6UQ(EiWzCs7}D=r)+z=wT$P{nuT^h>+saY~+@GglVv&8f8{NDOo5NVA<VuWQ9%PK4{xuY_ord zmDH_bciZ;`N&09F5_99^)gurw?)I`O8$U~GT|e;1dL{lKn)JQwLciYx{r4dr!9ub? zBuat~aPQ?&ZGq@cUx|;WYj+6y~-GrTgU892fNeFW)EG z0O->yY>ler`|nk|Q7!by;x{U1&q~-9`i;BqaX>~1&Wt&Nv5cclxT(O&4W^jK(jfMD z>PkE-))DI`K6FUtT^Dj+FdTvVu#5s(HJ(M=IQe|+=Sf+x$foOp}e7G z^7wsFctB!NtiL*EtFs8!*@but>%!VbaK+KI7f|Eo4e(u##Yg!&a$5##dM6}D!*vCo zTQC%Vg$wXl7RPoM{@3Ei-l8&XC>ofvw_8PW_@MyJeFp|hShk^8O}r-leI8a)4b*>i zHTmfLS4p1tBg_##=+2=0M+8{oS4=p%#!^>3jHMwML3pkas^iISBX~ZsnT$W_5wM4X zy|6M56Kog`6?e6bG|70_K0i5e;>14$g=|)0e|AfoNx*I*v0qR)A?u&f`o-6k?yUR{ zCR^%m&8JFZU%_1e$q1jiU7YYJv>2; z2K~N(<>~j6GpZ*9KfJ)6olU{CaPNAtci2o}{@6ICK(r?{))9w(84QSxF6ED(@W)~L zWBVZA-4u)cIX@ozRbQaDkj>N8a;zhH~_)rZ8EjP`lG@v`9#B9V~S{Q+Y#Qm6i3t8Byu)^CxH}C4#!Qp>| zc=kMZ5tgkM}D6n{~#*VLWg)^lAib2AcFR{($8ihU(dz zF!gv@3C>WVK<`hIT){Q*^1VWppiqP{sW0XmPt;g1igqX>o?wMC&UkS=jWs z3Lb9D_zUMNiGUt`%GuYG#o?1}+>;!vZo7@+^7{l|g=55i9%ADqxc)@=;9GzcAU9W$ zVTIoV$&k6RqOA*76uKu5RkU!4TRw{exPG3DpaVHLB&d-C$?$-ziVFh+=J`LO&~(i3if~R7kUm(kF-D@gO;rC zq(25k!tO3Yu4uc3ozK$d)9(Rw+U8u1fDWfARVe|9qaLg>`L7^W;*ZTY3{JoEO(h) zcpgC_lf-+bV8g-f43Y1)X|+oXrO#&XF!UBz#yqc~Tdb3Bzo|>i5Bzj=d3L?Nq!_G-O-*J$n4DkjW>1{_gIaI8p}oDI%ejq_B4D1u-RCmiAkDh4MU|DW&P z`*+UoWB|1GzW4s`y}m0szu*4tVePfnUejJH6A?j&+ZCjg318?Sn3ty<0M4@O4g%#$ z_z@>q=O;_ik2_fgMtVe7JiP&^+k-@9gwsy2v}2~-TRuZl)J?1(alqA4HCbSLKBoq- zCCqcxPDZ#Lbz%UT$8*(ElrBVOBAqUoCy-iYcxnKBE&Xzxw==<{WD8r{7~NVXVY#yo z8L1t}S+-uBPRK7&qhq=E+wLxOXQX&F=dBK;0$K0f9>W|tevaW*>?ra|3`P`o$gvWU zemi8b+c>PX*b8$}XkI4So*$>ezP%EmTyJNP#whflY=>>HpaYc?%5A7Of@c{ahh+Rz@RkSmX|9d!Dm#Uc;LNcI(mdVPG(RBW|& z*B{G_?T|_5`Q+h2t7S#6kBX=2B$crkxWC)R9F& z6W%~xEB&tJ>VbZLB2!!|>G6i+{lOKYcNccC;x>ZEwrEMxl{%2O_kfciU5}1P*B?xk zbo~KUixCp8z-%fBd5R=yGnf1a{CaB&HSXX+5{EQ?E_qJ4_#QV0DR-Yt>9s-bA+*@W zTtwPe!L=zPT^!V5C*(c|3*!LuCKbhZ9t%Y0#;`4lMD8NrwPPRU4A8^e&26F*u+QHDhAnqV(Up_>!6WgpP@^=aQDYU>4BXDDjVbExznjLR=HT_A(8ZGNH69dUF^ z1Z|ZHaoVK3om484@^<=6{Yp_PwpQMj2%3`DlE#*6VcN z&PDF6UvIdv=}J^`z0wbo^KG-Uo6|2k+}Tpr+h%81v)-%1^)Bjcz2xxdP!nA2#`Un1FObrNpKPwmLolRk-^1KcuCHQ8*SctHgc(fafs`*pG|0E!Bo-C=;uzn zG@~D@6;pc@@yzw-gzEY;DzkRLQM-}rKRO-%uF8}Yg-9AK#EUpOFj|E4-o~^Pp01rS zwkA8?KTZLBk}uX#=XuB31f`Ht%i2&e5QFgRsnN~6B&N~OqnP=Fl9WkAbJo=kL^R$P zn$N2m5+j5BV=S0wkVe^o8Tsw{iLzozn8FL&jYK48TMIisIW*i)H6}8KJ9JKtlU#)y zhxFEM|Df>xY8<|p$vm%5VT6O&NlnB)ms5tc1s4pHpu~PcGm(qD7f|WiZl{ zl}Lf;VG~OQZ)c6Tfqkh+puRKw;x%0RX-IVw| z@sR!BZM>t5Bo#pWbHX;rL@!T7XrjlAsmy@v&O5kw`eOjU3QG@V(#;)Q3*0d{fDi$4 zW_RO`Z7FMj2>lvJO(rMfw-j*c*20IJ&U2^LS08XzP&BR@ALJ+-p;BBHl$Hhjw-9&d z*vjgl=)n7{M|JQP&n7Q-@8HX#_&z~#Vu&1@gF)C~xK-lxuxsQ&QT*Sa}?PZ3O(FxRt+JdC*AMgs%+x-L^#6u~{9 zYWza`hgnBJ2mW>fKLnvda|ikTc7$FZ$*eTJsT}bR&+;o1Lk|tI$1%rx{6fRwuCmq7 z33~q_$g`;!KPD6bBwt9>K=w6!@uya-z}fQT6()ATAM`RllRl$i52cXeE2_c4iGQ7G z33|uQ&BR>#bWps4z3nQq`?F*_gH93k$;c0SJ_1GY`|l7~;iMpY%2`3-qG0fWJSziM zc?SfA7cj!kl!7ut8}z{|q@F4^*BI2W_ydfvUvbc5ZqS>sF^0LDeAxJoyDf3cf13n< za?i{qRK@~^gX4mjGMufUR0K=9ll!)O*L^zE%Vu_uPHr#{o5tXv3jXvhaCIbG1bbtC z4|b^u2A0vLj7H6PdveXAe3MOhiX&nu_dzJPKaY-t)|B>;d?;WZh!bTH+`>~Stsm*{iLIH|5ZfMHK%0zE_bQMnSi)|> z5}_ypRVowDBo^BLiK6y13)z`&<|^V^9A(D_147(}w)HPWIyq*4eOw4#v{VnUs?aQGQ(;3@;Z1dsdJts{*b*f1<0-`x&?BIDyQi zQ%G-J#|9;j1>}`Wm3KILekN6o_UC5}hg{Ue;SRkv=Vz6UL}Eip#spZOp46b&oECAl z_W~mKs)HUUIul3z6lGduE?@8`38#=hNh)6f5Mn&C6D<%+ zqbHW35X)gAmV9{-w~LY%aV8QJa?HnhY;}7{!Rn!$jO|zI79}H3p?PdlX;fm+)#vDn z+2B{nKJ5h(0V!r~IHOXx9)oa3-G=xry_>VLAZL3vrVje(3KrgpKap*Gm4HQnvxvCF zJbn-n6Q3=>^_6_!9PbZu7hXGZJJ$faL2EJ7t5%-YZ3y@&1#^|x?8L zgNJb64i2&r5f$t*Ctz}#<>QkyxonCzfR#9X^X2C46LdW~7`6xV0^x_n6LZ{Od&Cn< zG?~{(mAY@-+yDgxu~F0>&@BEGnZ-`g&D>SRx6R2~rD$?&&>cU1WsTH>zRSx+t_jaG;7(hvMD1*RklvUBKXZXoHT0w=HPp*fLQ<78q} zD6?UyXhp0hUe!_+>ndE^Dd?3Z(5*tC>oLks{2+@T}VXQ2CDdEZ_20V z#T7TMS`Duw?YY>|?pl8jQ_GcNL9ISN)Hw9qO_t@dfA3LWN;=5mESY6kuX&yw10l_l zqDuSw@26Nw`Wv8x$-IZ3P(5CqTov$_j}<`1vGRz593a0VvZPo*+$D;2`8F~?$J|=v zN{pw!wE{B{Y-K=**b^k1LeBVX^|EWUmpUGBVyBOGWO0$ zwI|y*XQ7wt86(wDl#xNq^GNm}{`FO*;S40nY6=V`zLhd8s_#pX!zpGFtL5*)l37Nh*>g8sd$=X zsb8U1yo0%uc${>IxVW58r!(rMkV$EaFK%5yt8O=vCt z&dB7lhC}~%Dbw;Aayb-R;e3-^G3Qn_=`6XCA|)W0xo#ZnSx|Z@kt___8R8I~*#>bc zggBh?PgZe?ahyD$gUX{2V>Ob$!s7^wtRWea#gUg)Ye=xz$cxdc5|5P@YW-$bpumSZwh7vvtlgD7N$wz|JM_0H?wAKKFC*U zHafvz#aKx20bDkg0A&wJVWT$Rl8jx%w_{5YbV8bpE+l4F=aj~C8$gh%Hk%esHg!s> z%au7oxaZO)4K;-uRR-7hRIB)+eCiCAqB($i&yB@aXl^H5*vy24!`{UR@SC9qM|*W! z>b|ewNVVVFo(Vb^*>9R`Q)FxfN^jWS3vCfz*dC>myb!Ai{E>ba!XHDHC=se1OO!s> zh9y>{VNiqRhz>Jf!|5xuoSQs#9eCh~cHbQT`&x{tQ&7TN+Au&OmqcD3mZ@+o0d9re zsEemoP*kGQW7p<-7j}8Zf<)*U%f(3F`KC3KO}nTH(xyOHa=INcJ(0SYUi(Fh*?6XB zJ&y*P2D<8^LINaZFurOoiVsvpbiU>EQ@*n9Gjw7iaeeG&$08HoVk zPD{(`JOixih`rbb$@8)ednxkl#Ytl+y!a>Bi)XrRjzt@0W~JN|T2MvW3=etE=CQ(V zy?BnL!Z#+va~e=5EYHyeht7FUB|N92)ur(qkGta2AxE^6v)srscD-~zX#9!>uhUErT>Issgrx=0V%uWurCXoIX z%FpU_Tgoj6Q91`un(Xt#PPc?&{G-R4ps)(>kB0af$7PhxqC*yQj5MH#MHyC{iX{?H zQj1|zBa&P?W;Xr+w&moht!7((vxzN8?e_N^C6{dV`R6&5q$J&+4X9c!ggA?oL=n-) zG8S&!YN95bcnl?vYIvy>Hqf8TX zd)uz*Tf3&|tVxJ83yZCtxH}|MeWw`ZMV&L(hS#flJeEdY>jBf=?f_YPS+Qp8ISNkSYPO7Zp0EEp#ry=tr1P8HQdoQnhe*3 z|JyVfPZ2W43D?f9#*=D3NXWSmn9Ijim~R3CF}6-NOgkzirCmNwwDAGt=4b;tUvpZL zHjv%7hB(^mFP=DLHLyWKR)0yEC$x@tGo?AL_v^ScwT?WqiQ+=thNZ-uc6wffBy{S( zZ8e-r?NZkJrQBicQrc)Zm~4nS!}1d4oQ^D4d9^IXIa@7aJv**6qA|Gm^-wk2GGQ#= zrTt0re~Sb$drAdCN+70Ee{YV%>FD-ai25AIT6IzKxdbREiEIM|=EkPI62?pZO)m$?YEk>tIEACWFnpTL#JK6G>4zy`ZD`|!meAW@W3dc`q{?z%o!m2D^LDN?T zTdPPnapW}2(I5(NtvC~Q$k&j*^vC0kB?w4m)aFKkoX9CKp z-LLDBVyq|t;@~0B7JirqI%o?mDy+%XE%cPg*OsHm4if4l;miP|?BA(PZ)DSJ9sBq$ zhMg;-W2YkBMG7k|DcoyUvo)l^(Prm-ZAZ(nn8@68oQ4|`6)N2@>G+M{C;Xn-7Qa)# zNyl%iD2Zyeg3G?kJ(ugm7HEwl=_*syIP!9CvqiC#DKHeH9SU}!EOo@ZM6J3! z9#U(WRPw0hW6Su1gl zWt^Kwcpaf3nI~cFL^p3P@HSdM#f}i1I{=ZHZtk#`>;^Vgn$MiM;GMC~eRX55<6WOv zlV_^Glnv=4Ja|?XPB_GG>6Df4jzcc$KzTy`!r4LZd-dOVVw~xjsBoUVwk@AaYx!WR;U4r?GThVB zJlx$oYHEz~-Y5e* zpL5je)P%El}0B(i9I|1yZUZ%SFXzmD=#TVO&?%T%2-Hi(% zf2G=VVWQUj)n4lFBY~@rxtz0jU#7VZfGAF2xWagbWgg9{l!uKxSXui)YR~D~NNk>i z@P1JkT?bh91rFv;Vj2#_KW81#i`jlsfb}&eS6IfYs0=N9T^90_z0Xb}uCZl_VX@wV zYg&(s!#(>jwP$4JG8aYmY+ZEE=s1l&ugc4eZKH0>q7z+7Awsn@@8@|Zwg2vj5RW?k z?xXO#W#M<~_K`5t@)tzg1XMuK>Y69BtujE}WRyBN-fj-xM;b2+8{d&?ynl4UD?n?e zYtuD+8cElX)~JqD)^=4lck`=Krt2jBe`QH)6r@FDtBO^p*vJ8vjVuk>$WT5zEri5< z#Ls2tEJjZu2ID~Nf&`yr4K-(Rclto{{nUzheSJMlm5|1B^@yc!BAS^8WQ(Jw*!?_M zYbt_0NMAuP+TpgvN0eV4Dtx_+98d>hg;_}u@V)@+VnSH^|G`E{sOoV8;hdwAzsi5W zuYP=2r~^YmrN0Kf!CScfzCA@_9@z9DS$EV<+lge82Q+1$aLNbgP%6nW}kVLyuxv!wZ90gR_v zQzdf!)UqEx)ix=DDnc0djgu*$3Ta?g9K`iSn=EtTWSat#XOclm zcv+!bCM$WnUFyqgldb%++Kkr9Xxqhh=@krGsDWm<=5@x4A8DI+Hpf%foaxMN2Rl1~ zf$WX=8V`gZZX81}ym;1XBA)c%rZMh!v;93tp;(%k`)Z~C>K48V;zxjBO#UMK{d4)a ziks`r{8KA(&FiG<&k@&4o5_`SCM2Z#7tF=vbC7E`WXamv`P>{H>vaX5XO4{W%=zK@ za}6=&Q5j~WWe1;x9MgWZm*)f5^AVbMjyaDb@F3v&@Pw+Yk!D{(*<9C__qv|GjP`V9 z*wcNE?H|cy`;#P7 z4Y)w627G|pwlV{OVKHww1Xe4O+w$9+D6RQ(a|v$!Zq)B03Nf)egN!LRM-#u97#ifB zz}Gd*4^+H6hEQl^Ya?EeoHZuZ1p9p2Snk14iq9l@(lztg~N`@6H zihM@kSJntl-=->r;9nA}d2myZeQ2<4Yb34lGitq6Itg5nR~ldpyx~Gj45NS->SMt@Ap&Y5mR1Q(C6m2bY`yEUmJlmfX|>4$SI_RG(o8 zn(I>^0pvWv52c&(@WIgOqHl8*W_`_kO|C+(sl_(PoWT{A&gN~c-%HVEoP|0$W72*h z51D644X6n%#*zi@KHuCDlRyUyDronF-B7$r4XAKkS$Ik-1o@?4?^;o@AOc z5>-xNYs;8k?CKfQAyLM}Wse>?FWDrR-;#%3@%?9YDKk&Q5r<=IQ_AG?$f6Rp>DqgU z-|KqCS$GfaO~B?%?sD0W*Kkns$Xq|6H0zLHCqp&1Am8PAZN$s&A`W0FXJWBM?3-bb zZlz_XxqO%1OWw~``2WK^Tx;&b~1Cu%g+~>`-xDMvsGdHLK3c>9bT$?jh|(l>JJ9yPY_MVPEoeeYtfg~amAA33HE_gHxg zxxrJQa5H+9gEaM3bVlLbg>nl7R(`m>-1&J1@F1B<6bK{=S5Q>E)*Nmxh1Mxy%g0lj zOdUBO0LlsMs21T#z21|05`jHzlGw|-qBCg^nRZb4NiThQ^Y zN4CH*w=ZI~cCg30vcnPJBj&tD;v{YFll+?krnZ19wdRj7*~4v305U44ZGkHk@G4r61R<#9lrH+5QlWve)gW!!%eTSA3oldg)RRt z_*&e2nZ+5HepoqLdX2;rTRn^ilBEnEweTTEY0dKSu0$`Grqk_)a3r={jN<}ZvlV_Z zDzb3Fv}Vz)_zgM{VxSuehTh3`geP&hxFoH41lS_oBnavxZIVXi-v-C4(#RzWuB{*! zF>lQZ^=41fDwtPEN1lBu?kO((@N5n#maqZ5BNqG)S(H4=r{*mhO_OOlmI^qDiSRzG z#nFbNwUC(zTtX}u@Oj*swA908vTpV;a75TBKG+hD9xf4L5W)F5>AduEm8)RVRx(jO z^}|t*?Mfv-5q+d%#qM6}9Dutgu~I1r9a^>}qzLw>g8;CF!&~Qg^2}p2Kf2PKKW4Ah zbToV#p0*vfHAxKZMvV%SI%(Y@1HSlC3D4EA2!Uj<_E5;X&t2P16Me77O4=jGTsjTC zu%D?VnZ?fYf^JV|_2g7l;yuY0pN&s6p$xv~N}HH#N&A^%2CyRbCD?^JR>W89z|+Ef5duYRq~Pw;v)EubG4^MN6$J zdLP%DVB#wZ@)2XF7T|d5ghn$66;2ZvquC0?Q6^m2q~F z3$sMDeauVa*(3@d>GJ*1_{CQ8x!&$kAM-L9A_j6_dO68l?6e`U)k;w!3c#bH2?Ql| zS%vib6?e)DjC>JZH>dX=W)>GRwMHx5ncW#+OIsmO;K?^+O|_+$oL-8RvuwOW}EDJBAY2|bk1wSZ5 zzN27j64i9TwdUiQgk;Z~TBG7zS%b~8IDmIc$Ibo*&U9@vPlKXrJ9_PSxB~U&@SbRJ zwC;^4-G^|LZy2xmCBf(+&WFKploeeniFIq$Tk;#(*DeMjjd9%I=5XduF^4acbGWCY zIc$o~p-mmV2V&?+kK==40Xx;R30K5gfcBYg6aLq;QkY^J{MRSpQDFQ1rbv%^o2FBt#q-E`0h8V&-)7GK76DsgDy=8t zKt1IMNz#owQ`>&7Z$#lL6_NH44B(NB5bol%!h?ofJcg~#qj^Xh@5DE;j?7~h*(es9 zTxkdM4!$2&bGzNoA_@n!1U;z7$8J8$%{jZ9wM5`{xSN-`jxMpgxfLB<*;z+7x{kh| z3{h({ogw0fZ>CtKPM;1pGj$YMW`-E7bN!#*OymKJ1YcWIUY@CgxXnm!ujvpyI^JKC zFKp-mACq)|*>1e76Gi4a%f0N03H$nLf=#`%iezG(lNZO_NwI*S9Ni@QY@EdxYM|BF z-~TCU7-IUB$NINBOK-O@9~E_HqWz|Ekk{4Zmsx?iBax`F@pG{Cv=;Z{8r}Y+xeog_ z|1xTeS{g|6zDe-cP1rSr_`Fky4p7*Mu;a5zMs-I$dmaZ2;P95=wRO8g{Nth znG^G$UEn|4WIyY~J(Ti>*@Si88}=g9=DlHNHF8?g`0N~FZI`w-%M;e9=(64pm-U)o z*0pw7SCM@$pUWtCx@R!yxl_xv%Kl{5bE|x7O6;(7XP;Z;(|(n+?J7Sr>SaUN%cWs2 zOMEXcO^NMKmObYJB;v_g6JEhP?!160x0qkIb&GwKWxaq*>!PU^iapK4zQdLj@ab3) zw#jKln>YF9q;nx4w}bJ6UNg1?&a(m!&cT4QWE91p`F}Wp6hb)4MVIN#$nec$ydjb) z>o9ZX7#E*BQ=w{yi3Fx9#L&j@9?mCchEDt^Z1{*G{?5--y}oG3-{BUiF01xIxWDGR zZu@xWe=_Rjs~kr7wK=ysfh+ECcF=XTN2c6yduH%m=C1-D?n0UdZ`?+4Z2jD4Pl!XYz(9sQqI)>J`K6z zFu2YBKu_iRDrK&1&L~ZNcl=>~Th0TLJLeo}CwVvLuAshjDx2@1Zs!rU{TprfV5794 zn|#~msc7b|442ww9PayF5NW&6w|&jFwOXES>%%|H?X)GI7XqhxX7j5eo1a|j5n9eLKQ6;VO)wIseNgT%p*JQ?sqPDHSof;dN8M9nat(S*=e`Na} zP_(0{wRJF4CJ(LFssNRNs7J2#%8Wu$*%$YC^IX`&3G6Q zbYzjQ1Zf|f)*j!7`(n=;yxXrmH0u$MYoe|S0>y{{D?Z4pvWth5Ie9BlGHfs z=(=-C!hd5w0SeS6rnt2A?#E-l>Ba}WVh472=r>$*Kf*8U<2<{UF0%NwYVZzD7np@P z$<6!?%{`)InA!amh-#iD7ebM#`HQC1$2^pe2w+M|lcnB9L_g`S#rMiFH*l$3Vk24C zc+j16lT|@6=^+hq8r>)JFExRB8|rdr8H@%<~X3Umc-hWc$aC zhpMij)Xa#u*{ zT4;o~PUm(V3=qYNUmsEGW7{~XyX~(x$=M19*OQ?byyo_Yjl=&w)=CFw5$l3)nMD54 zA8a&9rPoo)j?TWG3Vi^SOE9I0F3#iPiT#8aAh7E?YMqbZ@pAHgfqrH&A%hP4?p#^m#Mqr8roO$b4ogRl_Jw44)p78g6mm? zd8tb)`0@m)0f(Chy0BDp=lD`X5PsbJCkJjB9FO2h@?nzH(UxzqAZnzn{I({?qRKon z=5A}=a2$~MifmoR7kVfFu)n$O4BP4+bXSafFM3A#IMyKBNU=ZvBtqC>W=-Iv)1EKS ztBUM-Rcu?k=MMVwNBZT@;6xId!YT92*xKV z0pP*rp@|;A3vxREuvQ3qAOCZ|>V-KF8mnA1u`(F4pPhDdmoj%H$G5F*+xCu0$+k~X zI^JI25wSiJHvC&$!U|QtTVlB(C2t5{KFGB<3+J~LyfDJtK)(8amf4L|wDyYZExJ~1o<};NM$iNj@xtp}$h&zs@NgDQ_BALt7QtSI`#8R1apmnZ zup+?t{YOpFj|$C$;}j#-3)6$sUf-hLi928GgW?m|OhR+JU&+6Y!$~tFkVM1Hn8HOd z7Gz$Ao-|%f9Il61G$tg?H%n~K+2+kj4fglBS)^Wec4T`r{L=5l`CU9*{zl5+5$4m$ zm9QlsbAp8oGtc8>#hs=_-GGNz9PnFC`~K#1$3$l#E{_NfF*V~Af7#0{KtxE13S!pv zLHGUXgQ_*%m-DX^73@+(A^pwra4G7_F2&)m<8|kccVTo3{X$lz7UD7G%!Aut)pJN) zJ@*N=JplmqRFZUyU|(d`n489mT?3vQgJg8b@5Fb*F8XC=bqRXrm}QAXYgTUp0bc_0 z13B;e#z*spi$F1C6u82rnVj_JfRa$>r9r(e)&&&0{x>VRP9j_?ZXTXylgeYLYBBk( zWcBTiHjM&;;DUxqWEKX?QnLh2|L?IXS^lq!A(KGRizac&3A)ab08BC|A>V>YwK|R0 zWmN@*v&of{Z_Y^6$M(X@c-15Yl9JYY0~bc};w{0hR1C)E7w1}%CH=D|H7PD_Mo>de z=v)dxEBc$UC2WxeR({`PA)#`Xh(>jRWeyItMd3 zvhYAm+uh;^WMu*EuVS3Ld1k%!GM+z4)++NZ%PdB8kgz$}Lfl+4sX6Gjo5_ds+&Rsb zvU&uB6~O0aHATT)?!fG`=r5wf|86*wD>VtZEy5WkI@vf4%;`XG0>}uH9RvA@!#$8u zJuGV9m4I`kqxOkE9<`C6M%Ky}3lFWbAfFc#Zs(d&A&Lv;d$pjLj4CsG$9B`v%0+hA zD;FIsQhx>dCy~0=BK1u11h5rLx>3d<-CJ|mT4?U3wkcPPCxecl<#GeIZHGqlAaMlS z*9iezC&Lph0zQ+0plLDi&S@=9V-@0!JR$`Xi+C@pFi1M$IWk|LfegPn#AA!vAYOxo zLIah~I)p*#PX&YWe+~voweT%&%0Zhs=-5gD_%S9n@B|D?K(y(2@>8(De;CICubGEd&jLlSfSPo-C}6X6;m*e%3`LG~C=4WN8ap zk@vL&bH}&E&IBTCu$g=He zu&xWIdpec>q^H3;e;Op=fWT883Or|da&JP>;voJ3;83DFePth!QDQ0ds4!kcubz}R;g7nY=d7TYewO>6?)h~4e1D!d zC!fbZoi*>!6NCJdY^s9>LTD7%b6o)y<{KKaejgl$Vd+#z`U_K3YYG~#3-agB0!t)#`4v?e0p`9Ck-nd1mRUI%M-72zn;|9PIwNZF3Is z!O0xq!u&x67-LBJ((^Jn<{TN7)gyUnLz zR{#mJ9n=&gW&}SoLn<*R{(FTDxFXvnt1dLF$!Q=c%qlA9cMdm~x%p~-S7COgmuGFQ z90bwdHt~56W{_u2ao;b%hx&U0hu-zye_vQ;`DH6`Misc`?t6 z;;@p^WE1Xz_TUFO!}vb+I`XIQ4FA|}SY^kwbbKLFCRlDrmRi_+UerW$dlwS*ij$F$ zw$PgO|CaOrcIST$vONmz6y{){bWA1<5r4vW8;Q_N^FVF!JX+&g3e!Lo?q92|fobSfz zccFQc&=D=~Qj8V){UNRZ{l0`!kzqo>fT{hxi+g@^Iv8XD1q81Wq%qHdKoz|fl6V|I zypF=Cv2G!&wfcVEk97@w==ZCBtVOA@1X^hehy-f{UsK-&K%I}N56v{~2{*;{#NEQ2 z*F|Owtcl!EV{Dy`+-y#<`s0uBDDp+NtwMKcP<#m!dmDRhv6(~GpPzIlR^?Xn27NlLtD#zayd)XF1UteayR)xP0~vP6amUGV+6&b=CFqbktLLavN%* z9EX6<+rFeo%B9DRs=xt6=H)cRb}MG2Y*RB9gM6l$o6RlJCM;$568zUBhY)~Kk)do# zN@78@)jnrtwr087T>>O^>xfg<<~%dl*XeDaUPf6Ya^9(*l^|D^+jOg`BWZZ1ijZl$=u^o%~p7{Oh7Om#n+Aaq|zrxtk~P+WM{p1PBTIe3i0D z{Rv)y;xHsr4{HcZxRI1#wnEjB3#ZycU{i3PfMzif)EfxRP-ffm3?*GE7ZL2lZkVGhA^o9fE#^pS7{;;A zSS5UD8Pn*>tvU>I@hbBe5r?p=83nPSu40@DX1S3{gT($SA%ye^Rvc_y&KeUCV<%wOer-_#LD$Aa6mS? zw~MC3K3+Ekj$&#hIh|~2>qdVx!8htL zxyWy@IH$#AWc;xxh#qgnV8KA@(We;Eu>bHFcztdrQ5h7&qx@Lbaf15VvE_tZ?j*JK zF)pSD5b9ewjM<;!lqAtwllX&M=v0fbh31~js%p!spCR-t#H^jbH11_W)m`~?3#HL? zA&_cxDvcJYM%NDn>m5(*Lpu% zdP)#E{(pw#4zRJeWhW}{C&F})g&JjIL#WyFoFxu{rRT~jlW&eEwAc)6pe!;#6 zRoGt8pvE*gW%JQ&V2^lg299Fqx>EE?-b3k)@3<;|mY=A~-+Vj*I;$Atsoa*J@8Kkq zgqva>doMRp0VC*36z@4fpE~;KZ5pa5ompVRRgSU7GZnye=|RI9*{a2^J1ghJR z!SUe-8{7vs$+GRfu&!gG5ODk=gMB*&Y=s~G=tMVmscT6QR3PuCJz!4sOZnc7J!cBn zPNHL9SJ0fe-;TacdAqh^bnTsuF~C`vmS)F}{t2Vo5Il|kdN_I=F^Yid{M6`*^T;-h zjJ_mMXUA_I!`+~NegfDzA`>{tFaJ6>flntVm+vO9Ld&OQ?4V*hhlj?ffWkiwg!*R;%C_e7~GpO{5VU2r90yfvkPat@%{ng{$ZxhshYZk^#>%B(LH(xtN5lRdPe) zw2UTWYCkh5V|_l?QFMlzyC=60hY~kWnkpBLEp$2Jzx)(yx>&zE5gzP_sszq`PFS4$~v`=MKt`!3tOo^OL^^30cG8nuY8iJDMwM+JXbPqtrz z-X#M(DhTkf`B*y+@IbJ{3!60pvD(H}h}Gm*qy)U zxaqYdr6?3lpP!px!x+q$|2haR z>u`pzyBRi4!d04%eNqKhbK-}xht6R0tbs>K7NQ2E6;7_65>^9K#73TZi>s_Z3N0IXW1{=u(Q*ER*Yndq zSRQ_`(tYrh|Da`p{{Z;dTR%=haFRo})BUv87Dgloj}qp6*VD?3FpV&5YFPNioT5x( zj1>`6Qh|%hxdX+>P77Nsqy^{YgT#-RC*)F$n_|Loe8s+JCxx2<2UVIVRCH9^BF-+n z<) zHtSd&B%4mH0WJ3?#Mi2H$A>B%Obk)7bV_ZgXC-YTEPbNA0QU+8rZ(SM-RYt+ns*QL zIGJbZLHUvsY@rfv-oY_|_PRX3@&O=JX>Q?i$FW$Ra4=}(+1X|0Dv}A@JdMQU4NfKg z_OGoRVF=gO5GAl>-<5=9o@peor-vDg4zo($L%@E%A?ElCE}=6wVj>A)K9&~v`q~>Nc|tZhPG}j9sZlUZks^Rs@R zo$8Tu|EK`*FZ)F97Ox|QFJR_Z6fno3LGZ3s;jXT(%u=z0XDI&sd(eFekv8T-(h_FG z8?yd~?P(f`Pu1^#RAaolkvrVhaJtsi^Ar;<*-B*coe4kK zAK%x3RwY||TD`k3BAiMdsdI`mgMK;Y7sRZZys{rL;Swe+eYNo?n=l7ciLG#M9t)@Z zbEf=y2;6-#aZwJ)G53;uz~4OxijKj0|0jU)drNS;fZfp>2FR+c|uAXRa{J z3vy3TR$Udf_<&0l1QuUDt(-q=l7CeoQfGoTM3mnEE@@n9*Gn<3wxFmXwUt1zuFWezF&z_{ z;(S^)#23i;$U3r{I4d*u3UKQf&1M(#cR!n_-E8y_NX@s27=)#ml46zSCJfoJo`TUq zQC$6k2Y=LgT}OM%Pp#qcVVM5$B)>1Wd}w5;rI58e6kA$A05&=DpIl{GG#)vJFgx%rm6B@#DbiHan2u^Dg#K9bt3W5_Pqf z3G5r}cwp8+lDKLy=xaL5$hD`+9$x?tP4g-EvIsjm?H|+|_E!?~G6sWu#i}&>E2eS= z{nb^N5c0RLFoDUjP`-vg!p%03r{Z|fe+mC;=&Po-_=ULidugUxNW#qx>D#<9IwN((#q;?rc8=R|+LEAiBB6d9-S z-TM zTV3rv?#yF>zd8o>v~aI%8~(IN%Ka)p8bNq!lhlWpBQtw@%o(oQB)iz!B=uUF(#if6 z?Z$%s-Yy!qhqjM-G&p(ftQ=_RWi}A%z`Tg-FI`e|=KK(L_f7@QFC$OJ@y?LD8}|7k zx=|=VCB^wP25~c&X;^uV`51)q6=om_GjqHZ>Mc+{%tnw4EAHe9LBmUaL!=8F4(8{% z>yC3`T(rpL_uEsF*ZlOs@kjbwfsfeBtbDQFZszo`{kQ4uUk}^ANc(~uZh@||?LW-) z{a=#0KCJ$eXS2=(yPVZF2N9)AredUa9&S64-};Gs8a7<+8{VGYFxlfPfvWQyzy`=q zd$z^ad07ptaw!<0p0Q;*gZAtF6)-4I|$#}NZsT$+TJ zS{qmav+d(bM6XH)A5^%WoMd`0vZ9Mg_-}a3fitRttpc;3%3xdWn-)7DQ?VJ}Wi$nQ zVi(z?Jm{+ubWB^-ypJ~DaW6UB`~f$+m5%3=Fm-2X@K15p9?ii#y;{}>Xz8A5_7Ju^ z9F||LrwOlAt5Op8!putkZsOloeTz$T8r8glE@m*K8z+qv>LY9v@g1jQ(XaGEUXeJW zND^d)p`j#(BiAy z_its?^L?QXaH1F#y5K0H))I?am#d*Us8r2Rq{C)f_Gv!!Dw1AqGi?!^wkhj;Kl9Cr zM9tr3Ip|x?UW>@pO9VwL5!T4zGhHm zl+A8HTIfdQq#gh!KTbtHK+W9&NMDBmq5%0e^sHG)pQ4#XxNgZwx+E-Ulh)}hc()ZP z78AHvB-Vapbj&Y8LE_m=@G4qw=SXOv3c1KE%++nd0O=GKu``F)b%faNLNJWwcN_E4 za6vaHIb!Y!K>Sf^VV)%j-XjZqK+!P7sEnq+6Tn4lCKck6#!(S;ZEU0Epo@!!5p6_l zqa)y&pJhSdPfwK0Z&s-$`*2G9$sj$1I)EF14b}6=D&5LEEJ191<<={MALIRfUNd1`8LM}_Ia--$o#Q!aN z*n?ec-UjpNcn)_;B(V&6g+nFB1cUUVDU}?qEN~hPf^;(K1#wgzdGpZ}WtVf5ygg6%YDj@5oaG z1)`JUwd(j2VM*8AuH-dIM)Nc!#3)S(_2~?JtE^*P9t-*>JFRn*^_>nx%FE$^7h>Oq zQzgPj*o8}`!XDAL*6J`O2BitGZExzbMF4%x$78i|`mOKuTbtv4OX@vunxmxkWFY99 zIM}~)&px$n`r%8#Z48`6sEzs=5!SU&x$S* zy3ALbGGo8VG|y+p%E3pzyt|6+5uwh-QY1&$nllu+wmCNr#P!AGa@c61%32%2Vq%*M zo9HiYF8phgIKMSWa5*OF(J@bECK{dbQe?1vmL~&hv%=c<=QtY7o%Nv4BVviawTkUp zLa@1FVm_as?8QUMgFb7Bh9w~hO7NYTmBGNvlp3|$VODTniT6nBxr>ZGVyeAdhUc|G zRiuxe>chS+ay2lbultyt%Yq?^!FqqSpFrwkV!rhD4<@f6*mhpf=RGw$xPy5PXN(1Q z41%aj6Ot6NTbB+Vh)H1S)Q zeg_63{a!YaBpoj!pj|f&soA`gQRQ-b2)Id=^n%dvQ=1cpe8EvpgeuFFGzBh(SH(Ki z|GfF&Cw4a1d|)#xWg9%a_II&9%{FAzA@xf#;D&rO;%8RaYOVHhXh$)tdFEIfY3kStG#Qm}P3>n9-}~ zi!8&m5*B+D_rERpplGxLY z--^T414eQE0vBBhT=uA$QQ&}xFF+BD$+pg@+P1ChL4E^G@==nDbkySyYz4&eiyVdY zdLy&XGlz*SrumgmP4g>jiw3Kl#j&nx``5rg(@?;-(s-VQ#Y{r=^a-_unDeN}e2tS= z`t}FooBfGMe7^Z3>Z9aq#B3LPV580LG02;C$DlkFuj4<}F}Ri+(vb1OF5c_f5Jxh- zV~kAbIMFL+fL(Hv55ne7!XXZMMoLs$+;}20Ru$cL=i*KyjAzM%#_r^pdnQCeWs-`5 z%_2EklQ((cdaS;Xik|ne6!fy4xhoQD(TVDyrG3=JEls(fkCKaUWp{4(4hFEVp5boq zkhViMNDTCl{81pl(ySJib)~}N@+9$`6s7LDNbzJgS&&(R=mHGb+Bo+UAc=>^GClJs z>D%&=Pm57}3eQ3K*@Zuk5C5duox0v3CGN#+Jnp;dOY*5Wz3#>ATIX<18}ep`?3-iq zVh3ji#m~jfqvL9Voz24tzJuelNdfwwLGkZXPZ1Lb$LEs?VoXr{pXxnq-mv-S52$^r zb+c=2pGJGpp!DAExq3f|=VvBIt+kWv^f~jgmur?`@a**$e7NJVfN}-^9VUI?Pl7jNqtQ83UXyi_-mjoF;TFqOc;gNd{aZ87-0Ujk&bO31>Lk5=G=V%D&S__E zx+aHAz-{gzw=G?w=Ou86oUZ~0blgOeu9JctN#Vi-@=Z?}m3X`XCk|JM;-+scRN37; zAv@~=YGAmV4ruPAp;PKWNLIpnP2|c$%@!;xYF3Lo?-|W1IPLb9Pz$T!^_Z{2FzP>rG{X;uX2+~T>W->U0k92>D5#Fw9 zrDKHpzh~3MlCeIo*DaWl{QU~~i1N%`6VmTj$gvCI>t4`FK~655oMlir0c%;E9zcr}4N|!4q;JTud9_F@qXhvB+0W?aPQCfJNVV0fIDh+NrISb|B zK4+q4{wwosP>=1rz}y5P2;`j&-zL!9p;32p?ijYG znzis$cFtrl9B)Ag%$(AydpJ+}OV}9XLEpeG{+R=<@pR7G6KycY0OziJo6Jn9!>Ye| zklfQ^(zPJmpIP_Kn$x*K_Tl*H-{hTdtAW%d_PFgTC2`xt``;0WCSbiisfkqdR_PQZ zO0Mv7)Ak4+IYZ*+-$+UWA6+Ty?_x|%98#q?uyV=`fMl+(ql)QyTEa1EFl1Hkn0SirpqBQEU(YQPqP>Kk1 zKv1+g=s6%LihL5C4tae@-TDVE_DsWD2u-ZVy-*N4sMu*LM7}ASfP7&yCzmJ~1fX%`u3ycBEHf95INnZz6+C%{0!S z&j<+cG@OhWz;^HfAu%PvP_B*1s?-N&?JQYeLS&lPcLYspUgyP1I~eb5^jXF`#okh~ zYteYeIm7*2&I3!pVen7Tdw=@ehvU%c?Q4l9D#72m2up~Ltq)0Ss$=V$Nu_3uo!3$3 zA@bK1=Ar0!*)V z8-5Q!8O(;4`VD_Fvf*|IxDy?2wYGUL6|utZxF;KC<-n)9l-Yf4WMB6>RL|L)p>}gO z`FOz1Z|+_y1;%&YefU%trs8+Fksa=HAZdp!T8V^~TeK=fgJz4ZkdlVJO_r88kKqbW zV-bK@%?9eLM~=W!p{Z~xZgwH(nviXImvSr{d)sB)Gv0l5PtyM)-qM}GaS*M}BO0Ni z?#zC{VSI>qkEbEtuq*u;x`tWx$vIXsY?HL2mQ3B_+!M{a%F1U7tt%mVbuD?Uh(Bl! zb|Wmo#-~!1mH<`Ba0|GcD4}j1nyHiN968P6>OG+**cs?}J^pYKSC-BvY}sBx-5B&4 zJuet=m>upDgfG{XhTGe0m_!`|e589<1S3@R`Ya2K3pv6xxfU;Ry2h9BVeR+jOtOxXlRH-#m?`XoTf=oE`1LS91WF{-yv&~HL_9bUp-gc%) z+25Srm^MSZmfH~Q`z79u6K0i?;9C*5*CB4R9&-=L!IYKz*(t4><0G^$TEO44Ag&pN)p|Qs|QsE_U>NIHeQUb?>kdJ<~XZ55tNNJ$*svnLbn%&gp^TXs3IZ^xxnBn zxCQRGptu0);>O7^wsS#8{`oXUmcl-S;KKn4pTkBKGE9;4*A~>cMRhEhx~a{QC5sd| zQV8U6^kRwF)(jTsX16y^_M+4IR6-pD5Z=OaUtq4x!(!qWVHG_t>GMHva~VaPhJYAP zcc(g#SWu>9|Cd7 z7C_t-0kJ?-V3z#Jf_Mk}V}dPJIlKe1yueQ3fPcvpR=O$l*A&KC;7#aAVYrGZ^p_>3 zg#R0YQ4(Z8<0C&@>~OCC%TYyRDgTKy|*SWjeA!IGfIQC==(Z=+qL)H^ZvBJ%-esshP&TczRA zmSBpchPRo%wZyNJLZVg&e-bh{O-{)1x!flMvM_plk9_O_>G*5?8EwB1@qe0fj-;B& zNb@YkI9#Nc`i*LaHpgljZ*8j?I`dCBRk=`fkbE-*#`QT7srzsX!w!a*U%{Dj(7+Ax zuo5aL-S9218?MDiqu&cGKikvHt;T@KY0svP$NI`SowhhgR$U2o(Yt}7nCnvv;B-%S>5i}Bwe~}D*i1q9`~zQ-*;l&f0ig;I(LGT% zqv(7+T0pPaR&_hm|5wTxy3K)7&MG#moVg`G+1ZlO!!aTuabGpJ$LP-zS&+JWKBL2d9i3U^nasDPs-={l00H9jF4K0@@su z+;2NtmeGhl$I;CdPIiva0{c@sC_ZlyGK!qGyIJ6pY!aT8(n7bjS}1zlw);74E*SKE zP`1C-Gn+{)Y4uFU4?a&Sqor2G8|{_Rru0SvyEIlB%?ip~qe?WgR_rmF4c&ywW=Y{qL9>ddl)wk=sybFvX&X^fy>l{LACa8l3Z3*-e@4eElnzbEXmgu+JCb1XR{w^Q zrqrW|m#NC%tf}?naPAluYRHBAuwiA~s@$#0$+!yov}@$=)EcFtwxXc2*!Tjc@d^$o zw=2lW=l7_c?%N0m^9c;)3Qd7!7tH3A7FbSMJkd9fXSaVmu_*adnjJBaYcq&n)^;qI zhBd<$I8Bp%lIrg<7Uav^U z*OZ*}CtHX}LzR3zRFg$U88{e_z$AkvGiHSL6&-95t-7*}4BA;UE2x?aV-+xL!4BG9 z8>?7=8y~Vm4VNQTI(_;iJtV~wf#d~5gz%Lx@6RdKRD_GZP&wDo&YPv3>wsm} z8*%HiHpO-;GNHd|&aLN-)No~?>|+)bS~Ja!l99RPg~7t(zw_P-C-hmm_HI8zRX}mK zJM|cPg#XO3wx9GfmT_Sfh7~`8uC#MxBiM|LSZ7TH#FQ@vEtux4DVPP?0b+CNg5$`J@;X;4lC8i2 z0>IEGa!p|^TR)vE$W6ifJ6NlvA- z78jz5?}X<cy?+902CyFPC58V+$T>R-ko)+5Psq)6kc-SN z9dgSY88_=j9Vgm~8IoOZqt7=h?c{YwAX$hhN zllbe$W37l5u>>JEw6_G=+4h5ky3O@YiK}ri7jgTFi)mT?aHEx#k?ItSVIuxtGfQ0f7xvpHvAQKc9;3?|M6c!|ZQKc0=bY62Mcd$P?j@Uvl>!lEQxO6$!w=)3 zNmN1CvHC^Hu}(HD@A3E40>~=;QpXrwVlU}bgjcfV;@Jp+7X=6q7BNw$JdZ^b?J<%HYiMKHy;8^UC_8r}GhHruF>8~5bWbAD! zNBhm-q^141Ii}KVUv7@6=f6}uHhpR>lD1M<541IP(>!PR#xsE{;Tv=ZDC;ef|A)B1 z>~>s$6>yXgX9H_GJdRXc%2$VQF2lCK@N=;Udq&~(_Y|LiX6~6*3I{3IM6_2Gmit^Q zza?ygYg?3bY0EW`(%P^M!K@wI7~Y0$fD=EGZM6K8Y{TXN*gV@vgCWc7eV0IY4h+Qt z<{?b3%HMU5=OZD@fIM%eX1eDXHBf)KtMvAP=NOCN7?#Ua2pQ(#g_1({2GJoQuV{fT zekiYiqAmj`Jg-ppo*%_4n*VuTQSmR~6{X?Qeo{8LwY;L3h|;K-eG9q82P(OK?!g=FkYaLWtNWR*=?xF)v=;%z{j z9?FK*5LHu*tp7a6w{Yv*v89|w_Sz#?*Vy83PH)2GBn_LhQ*Io!UXeqYGxOEB3Ueh| zr0YjU=zO!DgN?Mo=6V!HD-KkZ+24zE>Fb@-O4S%{U~rRnljm~J=o*`XOg>8Fn0Hu~ z7E2NlVig$p0n8J7a>mV`$mw~<#7eV_D={n@g_XSIe${rsR#Vn?z0^rzy%lNme4crx z)@vg?v|evs&?;kQHTPYBvROfe+k*G(xS@*Sz0)$Wr{M9%7Spvtz`VEbzpP=JZMN3umsARd1U zka0E*U1D^Gm$s0>y7Q9OkPO?7gfOHaGkZz}inQJO8bY)@q98vYsLaNrkZ(RxxJv{u zY(1R{LhiHsrog#3sc@c$T&c^i&;gks7$a5;B*8y+*xpM*><~>z8MoM^oE4SGqUnUe z{iMx-gO7JGcY4Hm4buj?y1m~Sf@V+7Pa86xZDtVf(0eG8h3_sKTj_QiVe1Z-&u22@ zI<-6ITsVNPmCQ5G_0Bb2-O#@`eVahzk35Nv8Ci^=DNXuj_k4Xb0SDUf3FLQ2o z0S@zogScgJ<`P7_eDhFDd-@pgI|3w$vNo~{h5)Q_095<6q%Tu@A>Ts^$GNB~1wa9> zEW|WYF4+5STqQ9TDWaTzqZi~bfRKH2AlCGoW%xHQR8<8hnqjX^bi8q+? z(jo~!QrwcZg^p$;OmmC0Ali5{PZ5da*QFeAV7?z)K@Q)Vw)~MK1Pi9M*c}l{f6tw@ zd~+5Te=IxjD6P$~C>^Dwl6DB6{?^kvJ?XsMd{6$YtO?iOLnsV2rptBKw#$Q)wG4ByEo7o#&FsS69KnfQq&#u_IuBHI$7>+a@a6b@0Ato2k&mO=U|jUXKjwzhI~h;nS7vr_wVzl@8t)w+TY|HYYQb zF4Ch@w&F!}sBb74RtQuI<|Uz0yfyD{@+XVFhimUn0poOGSV!0Y$KJbuS$188nWere zA=$?AO9mzk=|mlm4Cd;*ACXU?9xD_TJ~*^SpI$bydq2_M_|G zd(PQs?X}lld%ahQzS|aGp61sj<$7~~O47;mC%<$Zg2`7Oo}c_FVm;!~D=R%h$38aq zc6L_|nU>a~ zl-AG}`IKzjRvI+;2z8wanO_tO_&TNcouR`x$;0Z#GZWePg0Y|J($yl2!K1$VP}=|2 z7?Wy)uT*jJqGGB=Y>|e>81>>7$Y99=3ZGIK)0AO~ZW_(v!~e`|MilVjlTdca3npJhH#zA1XK1#i=~!V)enR-rKVg}{ zv)bLYS{rW*8mkCevYDP{7Gmio56IXbslgXSX;G|UwxC}|leAWrEEL6pDZ$hH@D&uS zQ?pHu`o%iL^t?fm9Pl0Wp+XWya5;AkFMCYm=$aM>W#sue3?Kw0 zPktRo71t);M0NAU-_KwD8caU#e%@;}V|>l}O|1d{!wauc1O0buUF(6SD-Haf=b1XY zT}a<|jfV972GajvARYg%A^nl(9s%ixFpdbM?}y?91jz~sh{pna+}cw>{|f0G73pZy&2M0ClX|HRGGOya94U;F32M)v)O z3CsRmYMv8p^s;}p{<$}!rMw<%&)>sQiKp$it|F20^R6X~_}W)0zsIl8Ge_F3W9#@v z9G)+ky!grW&wF6~27+<^R4KJm%Sjw0|AZ+1`%#R(bNh+)mt0!E;ak62wZZsX=%Au2 z&<2ANUQbWH8UL5G!}vjL0c+#~+#%+fBRgS~YOD_tgF7GVwe?s()Eo=@4CmQ`t{SLV z(pBS)923u-eEbDei@+?l`?#QqTGhl!ih=X{*FV;p)d!i?%O*6k|6jQHht%}CfBlxp z|Ddq-XWk-6{mn<8t_Li+#!n2X(-4N2M>;W*B-UIW)rj`P_@6Z#>o@!z65V<@765*1 zW^`kX)hEG(ytTsW(@SDi&!&%6J(k9*8S6-_qBjpGYFL--!?VG{G)Bg9(XiqOY+Q((IUt_cim1mq!9zy@D z$>%@5{^$Q+IL#L;s`&ABObUi92&_{GP()r~fB=MJ;1j;~>*x$!d}1Fs209t+*BGou zXQ0q&DEv>Zg2FEh^Td}-zI&S%R~L%)&wGoS?LY0X%nxp>DNnv0SEA-CC$JZU=nUWg zJA}Ud5_Q^M_AQ3rLm6{^PYB|2{QlZ6>@lMj!{1lTvBB_x;70l$eZq7RT9z%T1)DV3 zk{PF*d|Y)ST9zf@)fiw&M>6{ETFiO;5MNrzf#9IQx_$EjzdEOo<6rPo#J>ix~Hz$aI&>wOIL_y>#zOWg-K;>knCPJJKt!k@)` zDQEt7VHv%TNBO>f-CgU?`%wapB+Nhs2Fsl|nja-h<0rpjI{9JAVO2qN-+^`iK2)J! zG^2dm^PW=Qe}4bGww}q$U+~Y(%YT~0t`|P%mFj)}D`g|({l7=?O?m&Ie|v&KMm2GP@vf&Qi$=)(qt51Wbbef=-rg&fEDgqS_=2}b*gCRp`o zztkA*uP-?o(^R9W!Z0$)FRmuJ0){_>n71E1^AtuCwHAWmrv$?Xf??H$5VDgL-6K(4 z&*j;QVt96ILwqA^b~Dc7=U;RC`VBKeB~_7Bit9;r4cNv1H2JZwIAdR>#k20if46>k z@(v<7k9@qj6W_zLH&XTx6T+_(sP#$&0PHTxAaV)MA8%d^%D`Bk$ymRp#`^p9SR~G` zHrBTQ*V*SBDu(y_(393kK7e-f0i%)JJozAbsUrLR{87q?5t~)r*8fOJ_xpK>7Jm{n zKBY>L1crb3jFElsZ_a2LD1LxsLxJL>Ck@5VR9kQu3eoh+si&SQ?BGx|mj+!;r<(tB{3}Z7-KLyD)rg6{=Vj2J3qUm!pEAYLoiJ zs_Mdu9OJ{wf^jTuW9b#S`+EnmQJ*Krp$a2BFAc*8Wp-g$i7Hlw;Xf_L!*Qu%RWQEl z`xY+89E{bdVpTA@D}n<3^6LkUmj8k8S|04<)A)Ps$0bS_q(Ks zOAMD3SP^N3im8UWWMzMIP4y#2R*?bee1>yDp8jEyAN32KMh}-a_OS9e_V1ugvGuJbWr(JM;N1>dsg4OLa?UK9cgI z7zoK2MDHWf=C{{SI7E(J zt4=;`_O9k-rmoiKJ$PfxOnB}9HN4S)Sx-ir5M_zP*8MlAlP?4O*t;-NQEpx)Mm~px zzy9yZPRI4}N_kG@!#sCZ#Dzqzn4d7i3GxVSdumY;vIoRc?9@H#YI znqn6hm!{gl9OKu2Oh-+~iSRxD!VrxH_;qm0gnAa%fWLzj*0*6tgP|_z_QNPA)v6}f zQ{rElTw6!bCliJQ^J5tL;wL*8`mD(tFf2W^{^$QPJ7>tr)xeWDj~4jUEC11(m-inH zBGvlg7L1VHD;s3jWVBSA?D`jm$d0O}*S`4}WT%*K$JwPQ;7jHt_tqb20sA_9Aa9W1 z?D|M1;%-TnG`2O0MO&i-;~+x!ezXOnLMW~pY1}v8!PIByxYveINjSwAm?yG>AOBDb zRE5ruHNae&zmGwA*~qM!;&;LnDa?GG^l14vkBa1l2=)WyaR00I&)Qi3qHEtzJB~*` zKzo46k4h%VM<~Hab)OHNd4j6awQHPXTnK@%yeP!e78ZD*=RC7SX5_PdbJC8ha4 zUiXyBqoib(Ff3Zvv2s5|86pDWKXwL>+xsZN3LpDdlq@^+w5aksb!0NAIH> z9#Aj-@QZlWcfRdo+=RCHp2?TsD|jgdoX@zQwf;Y!x%qR}UwY;*zJz8k?^Z#9A7B53 zF8<%*{~x59$>-Bq@9gW=KfhQ%`?uF`c!!RyAH3^^+jPgK!HXv`#49T(wiiL+FM{HS z*Khc?MGp^6;UfcBc#eeMwI*8K1s1L!z1YOUaffJNVZjjoA}ACV7CbyOg_<#-Zk3u_=I?X&*!`WKz~Vs_V4RK8Xmf+OQ2kFr-3iy#m7-WMA#L1huO1JsVe zEKXpm@C?d@5AzJ^Dx{glnO9#m#5O*r`NTCJJ@YWRP~Sxjg~!(Ir_|n5{NiJZU%Z`Y-TE0!$gWFVFCMWxuFJ5^v{05X{FCZO0B(JU>t^&N_BF^4(Z`i2(Ul4GD|TU1w}K+5M` zLo@CNlsW60uYO7)gn&k2UlN|C*w^C~`?^)wm(^ikUwci}yri`!YyJhnU;Eb$zG%8$nu{Oq zUR1KWxmcgwdRUW8z4#)~{7iGq*F1-Cgvn3Q0`xjzUPnIMdgp6sTX8?i;CJk*vk6;> zoahpm`LLXDC+BMduKS)l`I;9R-|TO^-B>kR4aJ{$-c{rXUjLlQ_fObL(pd4k_GnKv z`Pu6~v3?!R6wCGNK2ZO}uBWZm7p*@Bli3X2@1rE8^Dy1Nua~`kAUEpE-+l%e{i9?_ zHZGs%a!I3Fp8j#Xd0#a7Rhqj~N9>x{T)i=QpAi+Ic(d>ksx=_a7uI_N~`U{>KC;CXc=Av8y*l zw9#?bf14#d2fO=wL`wfv443rPi-&WX@RdtcLg z`Eep==z9Gk9wHl*&Lnd4ckd4NUgj>zd-z6bi#!L9{_jv)gxv2$O<+3lVp2vDnQ%phxMuQ?pLgcvtua)| zi}5j}is22D@4dd%sQ?edxc~6rv8&%Ioce3Y=(+CqSUQ@Cuuwu`UyDgVt>qu@u>{{o zhc|ftPg4p?o|t?$Jt|~Tk>%B@>J}64rRI`OS8wzVH=RXE*#ZGSJVAW;NxDJMIh9VM z(msBhv-B?@@6rN--(I`^LJld@YLp+}`~=3;nL89E=E?jJMF%FLa?gj`=Z`S5d@i>5JjvG1oy zh*|%q_3CS!e@HgKoVdiQ4&WcXu4=l&`~T@XRGJ@+CrJ>|6n6e^d`<-CA%>?l zA$$v#B25SY)}RBkhUz&eR0T&h=->lwI=~$xIlNVk04Dk$sApmjt>FIb$^Y}{#{gn| z^4_ncEGyNzDGs~-T8{PCk%xe)0#>x3)i>a zAp7bICQm*1q@a9qD~yq^w|t=W?LdDM-g`YAJ4HfjY{5^omq53HAKBiL9M#<2ecV4T z8xY*jiCw+*r)YT7e5qOYPbeI-?yYUljdhny-8JchbekN0v)aXK>p#YuW%?W_zj{^s zZSeaxm-&DKYGjgQubOiiHAzieKlCE4VSn8vXrMt{9VRnMT(O&yCU<>^E!#* zk6s{Y{p*tslX@*|{rNb+o+l-uHCTU)kXDUbRm(=mWBbUCo-?irt|!g7HPOS45GsCo zTaMftRZsfY*4;WsMSvHvM-F&^1M7F>EXPMCbihFWREk2G(;P8?$oJM=PjLLHE+&6< z^7OTIt5jU^BNOSbEgbLzB##K6{J)=DUcJfpZzC>K+@tU1yXJwMdQt(J7R%R6UPf83 zFO`>mDQUJaK1wwHHQ{@x?UPOUNpHml-=i1w1G;e{`H+jo>ULd@s z?C}0@Je*Zr4b3StTRjqj1_I z+^W(q|JIJ|iqEF>(`%)g>*V+7yZ%|PP(OXcL;N)PZ}P*PAY}iwSI@xHe|_5%>o+|J ztZ#ct!Xqfmcb?xrXYvPM!NLFC2$wk3es&G^F}c73Onyq$d66QH`gH$UF-QC<0Ua}% z1j8yPe@XAke+{!W2OPr*PvHny4_M6lteKzCl zS2WJP8JzJEobhQ@oSpq~V+#2bjkACIEXUc`pihG-dLd2ts6VZQGd3fncK82b(DtvX zL@pce2^z-CpvYf++hgpi=hN^HCG)ClU!-%Bg*qRv9{Eu`JM8Fhc$Q=OCp4yi1WfZ0 zO!H|aOgFjUKgRSg`P}cKeET(%t;fXoM5*QLzI^@qUz1<*5*GKl=TVLEGG2ExZ01ED zkY3_{EWWXyeb@B4lkcJ@T0~cccTG9`iTWxz_I~%8$(K(jH%hVKhkii`xxWh^olX8O z6^``7oIL-7C)RJRzF$B2xQuY^-IOzX-JJD&_#=iMehNTY+;`J1@7c_H{vGwCSkmu% z7c6@si_52DFYdQu2w`!5|D7u??thog*Z=;VEbez)trqtWY16yx;_@(y`|f&i<@@!M z-<1)%i~C=G!YuAnS6?Mc{c|QiNUZ0Keg1#a&+5gTo`07{X*1-@-=g#6XI>+1CVqf{ zIMzOTHOl6M=-vTBmP65K^C#S{!&Q(Ngm=5zEsZHP;D^&`D!x% z*i7aZ&1C+GnanTLlleA1nO~R5eACHKhH>>|1p42WrZ(UA2z2!sPxJRNnF$^Y%A(3t ze*03n{+d6h92EbC#%eQKjD3(=@iN=LPl*L{i<<41UA4A$_1cG+?^Rb__5VFz66dbs zr#1e6)&4A776Ezx_GnIvm&Umis1uf{9mt`Z}5%yx;-$-18?t zL{*P7_~*Zqj;Qj~w^H3-ey7^AdgR+Fg(|MQ%x6V9n0~)(Bgmb%U`}$QNjK}u84r|EaJ^yd^0~xBj2*3#EG-aO2a%&zA$^> zaB8heX=_4Z{Ij!vu(@|ITYKl$#l7tttw+~3zw8a3Tyyy~uCKf9=DEA>J0~}tJ9Mmb z=Wf0GoVuvK-FNOa_nmW-Jh#IOd0;zfoCj%<$9@=>x0|6oHMDI7Y9M*Tbh^8@Kb_7% z5})spKk|;leRhxxsD@7V)gOKT{`OYJty?>J@yK*~uY9{xKFee04*m2TPy6{f^)Lh2 z?gPca=HX6up~xOA1US32LN6;^$MS;Ivhv&4T6dg3jBWuZ+uKEUz%uQxr3bU3SldY+ z+Ik>4DAw*u-f`)!A}JNDf+;`Q-rmh@yYY;#o{6ew+_?3SKzi%$Y_|LGeV6u%bGMy) z9sj>y0Jg2Iovnk-a<;p30Hm=Ol>FCE!os(5+q->je)+t5>&8aots5KawHq5dyLqv( zaWR=aSj;vy?!0*M@Zc3^A)AejvfSF(*xldUKj6X}_wR*s>^$&_vw~TE-;)XRyZU>6 z{DE6;S#I8;-M$$}y)A}31o`1a$UZPk_!{V0RRTr0QSB8oWNE+&`Kf-^?A^V;j> z%bWD)`W(GjT(q6$ZI0ErPj-bmKJ6gc-#@%qY$`r)Sd1Tf9HV(?J4qIlg>^duOZ%qt zntyXx3-90A+&SFd-q?7(daP*?cmJ)J0S#}AN_$$dyzFi#69_+}{w+bSz9OYN+ zOo<9Bu%O%74)RQx7yDVUBgcRrg?^dGndg*_TNL5#Yv$U~*gr)EznJ+b&TPB!38G%8 zNXax{hqL?0rK}G73Zv0Z@o>d$>>_e~FNli5v(r4~WUVefqc~mh&|G2(JnJZ4UZK>s zG{ZIgICHGLD55m696Jdu7{mPXpIIEa+r^HO%k0>3k;!t$vr^B#eU0Bgm5|bqww7R^ zpIp0mw)Mb;gUtsY5}C{j%FNF~Ck;I(PXgp)bMe`@7`4XdIN^%&+zE2wrP;0={Kq}~ z)B&i}ExpcJ=|*80c~({gg^f~eu05m6e2cL=IF2$r9IdH4LC3~%BrcD)ZbuGVos4ZY zc!eYNa@W@GsM}7odG0VwF|qJZw!OQ5I4k&!p+){-r-zOem2ME0p_MtlgZA}Ka~l?= zlNBu&GDH_yJDe4J+lf*NL$}CXRCCv}y)4R7QP9=3qX||-H1N+0q#3ZZCpFGk{ zW6M_>08=x(YoYLXJWhF}Y+QtHoZ8sWogmLJ6SigJPfg4ojYr$_kEb0CI7e61eC8Bj z^xMjWRy&JA*R>-47dR*^i6_nsaU*@IoNTYVfANt&7f@aQQ^XR{TQjvUmhlz8PC3sT zLTJ-#mAPpagn{b@St2nu#xhag@{F#yTEyCEb(~O(u)y=2=7B>{5i=!5fDjBLm!Jtt z7{J^)wXxCgIxW!2@!c4`OW93AO+q>-Ln1#;HXx&Lf;e|^**bY1<^dm;n%t;f+4vI31v20*NI9UK+aaN&r@s8H+n$SHSOI>;|bq!9( zb?N9m8E)+y>}pG}24qPGBb{xs!S!ye75X z%=K5;iK`kjC_s4OXMQ8@cp!(y@OmW0xZdRPhw(FH%obbUHgWr_^ zySasHe(pa!+d5E@DXHVw7&&a$PKh1>mFmjTN6)iVm65HtvKlkrp<^m-aJcjEOlh^2 zZ+mfJMRA$r#D^i>=}Uj6G2UQyE3io<%~dd8rg2<^o{ibWbBKj3l#+ae9 z(hI_jP%Ss{?a0H@SU>JErX4V1>p3yb=||m&2$9@&3x^=D$V0%_mk8vo$=s;eui4&B z312kAZKQ=;9eHO2B;GZhcHh+xLRLY`d4Y9sI(@bLk*WCV2PT7_4=|X#JvWY`0E@P| zawI^mhA7bDwt?1;t5%Aoo1XmxPHFo@+o^OLreBa)XC}*Csoc%r_ff zsTTfYg`dDv(y~OIPsux&mh$)Eoq|7als|XmeVEFN2ZERM@By{Nd<83ZSY*CSjzfX~ z7>k&%U*p@4uI*pimj!oui_7Oghba5$rGsMMz4fq+SW+dsGmhg&Wf54em1Ic)uTkr* zF0K*YTn(yVw=IoI1w0pJ1`_)W=qC2L54&1g6J1^hmWvoO5UPF$@pUpowfgEAnWyVS ziJf?5lzBb^VKvWClbbb1=PD455?dN$$MEvlix4lYO#H4YjNb;Wpw#%MR>8pF>iNVU z7J=`3k(cFG%8B}>gEG49!r{(?YUwne0=GWC;r&atHNVWhfD*t=7^ZlEFgD}t$x91e zRRGkH5(+?;e!fI%@lAw(f0+h>Ofw%vKaTP+&&xQ1i)dVUW@9bH{gUr+)6(|JGPOfL zbYcfzfWfz~@vYg3n$F&AH!Jp;(rp*Ew)1-r^4-IOCEtQpkD)N|EicX;H$YnwROzi~ z7=xmoOp`N#p0|@wFk5o;9A8`HmtK?*yB=4LISu)_d+v}FimsMFh;PR(L#OoZ#CKWI z6x!pq>hJ(QOw>Bnpn|Vry)Ne1`P!QaDV{W)-ny%DIqoBXP@NDClqqHrq=M zE^y{@Dr`M++wR4^-JN1*>2(j?C`W9~B(0$ov*cc~jqtkl$eN+1&20DL#oe8X>NI6X zL}w5?JKsb+HJ!?1(`ikG?E&OO$+vcw#BP)Z@U#$_np70W0lRnX&MqbgBm~Gp>fH~* zfqq=0k`Fiu#*+-fs zbFn&Ugk-VdstIkmPUGZ(UByY5Mp0@NQ6Rj_Y+3!9z@8(oMpm_Dw|17qQ0{QPu_4Nw zz*X1cq}4BR45_yc^(DoO#_U8?;wwnx?921i_mjXOlhDS_!0$)O7LLxn@-(3|O0p*@9l)&RTXL{#9+OW3i3*1T7J}RmUxK1YJd2PbPWSW>=1xxEni6>K+S)&8?TDzl z9@p1H_`z(e*jG~vA}rHv3)>GIIkC*O^Dh(eRpzp>q2{u&A%Kz2#lJH7TS&iA0siy1 zf$*rpw;goxZF2L%EKd@*Aa4q>0ZyY%7PWu1!Nrr;*si>$Mw#vH?UD?#wIl4D^#SlS zD)Zb+&>!r`jS}>{_AQO|3AN;7Ht@N-?mqV>c>8_l?zww_28Kz#bdaiI-wVl)g}ZCw zgWHW}w2fb@j-bd@M^MeV6p!g-;VkAcRgR+Bm#$AzW|+pDtt4d%11Obb6m|ui25&B* zw>!4Bi@S^2#jSlw3)QKPEd%=?O2Qy;9oLH;&vSiD{}sE5G_u>%T7`8U240hOLhB&k zDpD(VaFuClSzS^{F~eB+U|ct|3GzW|687f(C{jpKPslTdgLam;Hx2;yU>qU`vs6NH$CWyP5}^pq13|+IM9NT%+jW{Nd?M;&fN{)`06#?d)Q;u!RtJ>p zeEFCaQIK~k@~)eq|D^?HP+}Ge30V+%*G&3~NV%4WrN$xZv%ryQI}IUG80un?mYoW# z@gt-X*m45TnTxcpvp}Y0f^$!U*oBW4X5$p0kaUwc%2+nh>?;1Yk}#W)zmHK1e_@%G zmc#b$3bO|JCQW-48%YGmiiv`DSjf-|k?@7EFqGX=YxG+?J6es78~ePw7i-P5QsdQA z9P*EB9o&1692_nyIl7LWyJ6zV|2)Krnr-W2b0I%4;;M?K>ZxzctJ1|$n2hLUXIaK; z0xz<2FBP}HtkCKLWR4K(hOUz%Ncf3oIKhaRU&;7BGQN=sP!Y{1PA5v{T-eR$c1th2 zkjz5!Yec5t<{`#S(Q^C(+1EwmC4dk2gi0e+7i&UmJ!|{LPDT)_x@8l;2V*3DLgu+0 zLed9v43|3+B9dQd=$^|R14@US|T#MGshU)m_P#@8)&Kpp9^ zwTnh8rl*aKdzDG_uHEdx&c?S}?kEu#v{*DN_7As#@E-M7ey?T5+qCtoC;kGTLK{vm zc$tG0A#%JdNmF!?)>}-_lzzp=hJMBQn=k+>Die5>Ty0E-H9hmZ+;8kv-xIy@*IF(j`=_%?Id!Ovyx5_AfSPIeAnFHdPlA-GjF3Hpn_*!dMB z5)$Q5xQQDg8Dc5a&M#R&?7@YUCb*|4Z{x$r6z~#)T)kTznO^7F!2DbbzqWTUyR@0ANe7h{D{nEK?rXY3+B%sJ26w=BTek#DnF zZz9;YQM(<6+Qp ztpdLtUS<(AtE9WmbJSr1tF913jh4nZIT^#L8&U><6e70n9LS*u-F>BJQ56ekn4gr1 zllYOO#q)awu+dPA(Y`6b3nb!vkh)BI?VB{E*^j1t-0+-p{41p82@jE#^Euy8vy!r; zG>DJPR!Jg)PtR|$nmI!oc&qSu*m_Y~F;+TW4%h;a_7Nef(n8#qswD zy)5w>8?IC2`zfvfs#l+%IMiNgP{%Pqh$FaGDla z9knp0fgX<1XgrG=QA8FlWUsXIq(s50Cp`QtEO2iRx7=p2U0mdR5_7rdc$_Pk9VjMX z6`>?zweMLlTPe-BNeU@L%BwLcD7TN%9*^|MH1BH+#UaGFx2s{5JfhsEw;6e5ffu6M zS9W7CX6Qs-7}_8yNQi3@G&Qa-nB7sx4E4;Vw%o-!lmZVkAqo_qvMmIn6!Erq*Wy=7 zz=pH6>x-1SZ>*@b#9H$dEhvh`0)t1^l8;KE?dkFFL_>bXm8L@uc#q*)m;@=+s#0IPi*+mWwI`bl8V{#G_uN2Cm3 z^`lKvz}}@z%!|7ej@;Jp0&7GFjRhy>bimsn=fl8#EM9|s4R143Fa>c4+hiG_>R=}n z6<8mYTK+P&Nzr?&S-rV`JSycuEp|(tkPV`Kz2oA6I!Zi6(s~VfhS?;6N2;k+V(a0M zNx^*kmia-V2HM!DAKut7+Db(UOK^0BlhdA3kvn;SUWU^$$^DYUr!yr(vgk!npy)#K z_lkf_;VOv4LdVM$wd#ZKC@6vi z529TJIl-z<LxdUZm@NEk7lCQtNyZsPw)+=O@(_DQql|t%bCiT+_P-4OVIv)&@{u2me@ z9HBx&LbSFuzZ};f+SdHeBPkYJAPh0~T`M3D!sR@zP|zyxd=!zSo+BD9;tGm5>P!#) zb3j|`Jco1;_lOWCvPF?m9WrJtZS|DZsvJ-w87jI}LV@2nd-GOa=##RsIHF+_#NJd! z=Nh&y?$Go+f?}fLbda82kcN^QCRC5LvY0b6v?IwJX^m@?Ts>&JRC0TX8(R_R;2T}& z6cls(Q3ko%WYg&!f79uLs!K*MFS7{0G)7=@Cw&ZsU62(4&fm1`N~sxW<<97(d7)$$ zh&}hI@f1*>kziPiJ?Na!u8DzE_e`hej}DjY%ZldmtE6^z6=P*n&rtnNoo!wcVCnY* zs^TN*W>$dMKff&RGl4Z`B#iBneIP}|A2uq*eYHl>^Ho6k)2XaU-;!fnmd#rc&e7tN z$WXvyJxKFh7TR}v3q1~>jx#W;h@&%i0&&q2R;FB8t&uA6)=U!{s+#6FSZxCIg4SrV zJq%n5X9i&{fZPCE76oT>*D5g+3i_KgTmi)M%UDoq3=z=W97Z6iwn8uV8(wL!Llm@U zAxj5AhD+4tAZU%!I5?~7<|=#~z9H-uVwu0c&nVRUhlBC8F%Fg>Od&!|wm6Q4->%}F ztG8GA1?_jcBXjRDBdFg)HTOcaL?S(jp6a1r?dmqqsSXfHp}2ghCoM~lupMMl2XRG8 z`qgMW>f9jx#Y%JP%7j=7T?uFC9NPeh;;@>CW34LU5S?%NF-21|%<7(4p*v929G6o{ zH1``lWQC0CQwI$JVzJE77-D7NhN4)W?FO-p;NW2m=)t!F&%V(<5i!R-YGot0#Pk;= zg_k*&D_ZRwr{&H~Rox)THxtc}KSYg|Xp$;X>`p%7Ph09X^2wBwuco>{erEju9OVT4QsF~>Xzz0eYst2E0vt7 zJ#;4{k}X;+XZJz)Tbd&*W4KNuH=`;J)W7@Sd96RRxEi$u6|3v{U+1Xe+>Mv_7%Ohy z=D0`uj-vux2SJfIt$Vu8p+!e`aD{g zBs>#}Ot4*r;&#T5HE__@FdRi%YF^8DHN5O_Hp9rji6e1$CO(veBr)3DkTvL$wowT8 zZrw62`KbM?<2}_{cY^;$vlbV~gf3lJe6kL+5XnqcS*iCa#7A7L|zNc9#Ux+BZSsERFN*a zYh@7E22L#?x?{CahNL8AE46JL@AS2EB;mU?T!kbxmIN_8vIwv?6?uIsT0lUWp^z;{ zca9>#&lS-WW(=HxHB;{nbg1uw*Q{b>D2ZvYOVU++O#j3lE5Yx02W8>Y{mPEXG4Z@I zmjv+6L8(ACnNlVncQLn7#Hh2D%ydu8xKbkS5kT*RPC}4G#HrpqNW;-(9ROg#O3XPk zF{dP~(zS?$S}e0YE!yCwYgJhpWexIN=yG=JPIN?kiEo>lZ5aY^5E3lqqEkt|6w|9t z?hy1Gk1YHm3^L;HV3V;V75B*E^HuM@vszddNe-fLhV#on zRNHX|48G&U+HO_2rSf|WmqOO2ay|7V3TPyh2)98l)uoW5U~Lct5+W(PBb>B(1TBCv zA{&4jc_p&BB#96f(i*VhrL}~y8hCXn?lAXrn>;7Zv(ysPC&rM4-Rvk94C}s+4vDX) zY%mE=uQ>a_*2Qfy|K&-l$)@S7cnBxG`n#2g*KXwKQ5cK0+-_EKs7)YmMDsCk6s<^i zPpo1`R$;<+MnYnqb9Vc_ANmHVmp2O&HsR{*QfjC*gN#mMK9Zh0omR=pW<*k)DYPd! zyOk|HR@L?7W|&M#07690Ao=@*&WkCxzIrmV)u{tZE?x!dGDx1Cd@EOF8a9wSZ4M8`KsS$K%yBe6w_AlW0*8ZM?w-pCGZyd6i( z0UJk3bh3%6w_o0ZG}sQBbQPS6r#Yu=0~HXwT!QBezcr`al>-S*xN5*u3`ffCB=QL3 zqzEA*?9%m3k7Puxh=>!aZW^|#4Vtj-47Qyk2>Xb{0U0r!nuK!KawS`roRT^um#d#R z2roWgmwNxSvdgJrmErH`&FZA!Z5B?{g3drE-78f4^wpP$z+&51C(7m3KDBkhwg-z# zn-3)->X9AbW9=vCid5pjt7K7g!>ap!XxHwj`u9~$n?(gq{eCsMVPD)zO<}V;r`&XYIZ%!#Sy(51RUyZ{* z&nUD9!=&DuLlkRoSD2Hwt3+J>L>pAhe!})RGSjA-al9!Ko=e3rl6pA65;7}BWp`2*=Gq}a$Pn3KRUp@NYUa9^%=U}T+2Ia-c^}xkh`_~dXe|4;6KH*@ zHe9ivu`nj6&YqK4k>$ocG43tO5ZZj7m__TrF*ECd_et$_^S;wDMJ6RtXK7(4F(tN0 zhc=t(1mGP}*jlEWu?VLorjD^P+H^;S4~kEb*5#m=Mov%rJ%Kr@jdVO7>}NQ|OYDji zNK2@X*yF(`0N#QnI3*j6=!=v$WJa8^WvVTdHBTLKQI4BmKtLnD?Ra~1u4z$TiQaD=rM+fm_c)SvJr6}BDpPhZ zBB>4Sf*K2rpbBwSW@Qq)6!1}@KsxNTGCS>4C=naaEW1-G8MFnS{NZF)Zfv|-{$@&n^6CZWs0B<#xc!#h!2<;=8IE z>8tVxFm%#S9a3(5i*kxV8lrotE7d!+nd&rvT(o6%wvgE{G6BpAoeA_KOcpqL;!^x9 zltv)y*778CsV{k6;W^G(#ekGQG;?!QYh#N77I&LajjU_yVv}$vfH5bW#+^0oOs7rS zsbse5F9ae+@&xIfR4R|!R2Y(4f<}+VpE1gzQrf}p#Vu7?TVYp`exQFOG*MkNscbG{ znv13uP$Ep~=b)C->!Z9iq}{k9E{lWgf*Bo$qD%GwmA7%{=2Fh9 zzN)l^6L(~a10$n>2vs;Ja#3lWxO?+_=4@~6U_^V<&ep*_$<71CqIx|wQHG=Oumi5m z`YqFG{gzs0G%DzQ{@bSVlfks>2h)O2>%!!7}QgK3Ml>dT^S?v`R%Fl9z^x{gTQ zg(AYWM(qU>Z`${aVC$B(yOK+!*VH7Sg`j{iHhvBCMcXBFQ(kt66s@Y7_`ZuXHB3EX zM_fnM18v?h`m(0G&!#EppiEz5MpgO{oHus1W)LUA11f(tOn~Zl6vT;XVomWSMuK@_L9RP%(*uq#x#bpg?Ss##6(@KiRxY6qj_ke}SJ$%X>(%=AS+7`FeE0Wl~6A?s%=f> zwl_9wUBTx~JNrpl+-B-0ojN`YPAIrbx0spJQv4DxRqT_-~(o|_?bhh9!lpC842)=>enu_1s!0tOI+l@p*9$9No@Eut=i zBB~sAO2C?Q`~6dq!aHFWLwhhy$Zr*yi|S}}pXmiBYZ~g9z>XrUYJNnsSMzIgw&RQR z%j|525=LE~uUG4YcXl<;XL=nC@32x*eyA9o;7gKK?H(?A*-nOcR8zllOWfv25_i*G zctb0NDXkxGo2vMt0sBn7H+OgA&)Vs-n!|%xxB0~cE1r) zJ7y*--ybQxUJ;vUhZ|oh!BcvHRB~4bgrNfg&Ow1$l%OQS3e}JP&`e~R17YyazWw4R z^Hc5VXde|u2!8cRIypu(wa(dM-h2w;_gLpE8n?DIxIwvRrZ!Sq-m~5!!Js)iFKj$d+{uK*IdRS{poGjb!t{x@2cCbEpbrUt+(%vC2@Ru zi=EaMLvW%y20jJ~fKe6SC)1)U1J^6IoU-`o&2&S7X*pec1gcK z+ld^TV6_rDZaHJ|XY_Pcsm?W>HbTt_68%4dD4-<#r!EUG1z0-l-C%(I5#_6 zF}ePPGgDsNr5pk9wE(IDF&fZ}WY8>HibdB3m#J~SHZp4boSN*ke~e6HKrg4RDr>!y7c`hvFyXunlh$eMm7x9;3%R<3F?gGE=Q`KpFE(I^e02`KB#k&i@hwvQi876HT7yd`B)K4u zg^i*&I;fDuGTEUN$z8Us3r9e|$_05~G0m4EqKkZ+n6IV?pe-UPT|2j=J?*XfgLI^7 z_6L#VguZu%X-Z7Egg*{K+PH3BAVrVVo74*`lMz^nf`pQDWPLh$9Fl9-JvPoci=l6p1ncS{=$(q~L6_?c4j9*$Ju{^1Q>&C< zHL@_16tIbeVJzxMvo9q3l2%D(8d5varD~FQNJVoW@#jHGDK_r&71;!bJ8}tNbJCCz zr%JrA^o11VK;1k%oVrBTvU=^q$%C?;@fKP|Ow&gy@YB&0Nn(C^c$6`qJToHE3!Y_@ z@JrHn82T*mAl97<>vXslK!|*cZHFdPj!zxqKr-1($f(?)S_x>p-nzT1>Qbn4wME9( z{04vD44XwUg+!^?!`2`)l3~@A8YUJ05RLi5`u27uq*YwQ1WgacN+?_GsW>bvJ2ihn z8#GStU0Fss+o_ZU<+jwiNIBR1h)FzS*5rnS)LKc~ti9nyRHU^~hB$4~I4-1pbL0B? z&u0g!}5)X2YZJHucSxB z{Ef@StjrDRy&Pu+;p(ixp#>`a8%Cdao|s`_8!<#dx<=62OAi&67PnvJOzF%WTOm|3?t zK@F!0U_HSA0|E$+vb1s{FOwW}@8O=nbt+PRWx(WI!4crnw~efiEJ*T5EG|t;c`Gx) zfYd&4jvq;QI;8?KS8ZC0)CIa-RLN@R8!LXo(->Lt_AYYz*bd4MoU&RCX^l`FlS+g#*mHhg8)Z!RB-;^tLOaQb3e^mMbc zD6xY8RYEQt>F}yt&Sjcdz-eN(2|*(c#f7nIQ?X-|l!*U@aDd)@G$JS!!F1^+tDamu)7_c1(Z z$ccu-zfq)ee0QE0i8uIALm@9oH*x}Ld2P|Uz&5hjk$k9H`YXnV^lARAb>hZ$W+jQ8 z;~RG~t16wlxr`I{*!zBnDzAWR7xx>PZYAAn!hn;TJ=1gTt~w<}+9z)W!9*lE`9#Fi z2$x#4#;DLtO+R4~;^5I`2uA@Y>Sa)vA5gnStmJ20{Ek&u1mUcNZVwb7+x>1 zV*r1Hpq>T}kEgP`2^FU#xFIe)G3)nK_JJu$!zER#Qa8)J@~XFw3z%jSS(rvURhpN^b1hK99Wu z?X4B|YnGaMjn-oo9Fp4EUhc+(LMtTGGAjr+pfb0^Q8Z{p7%s!Q$^xmG9FM^18y8A2 zRwlJ0ah@$EZ~|@UCH|_a#P0o4WU5V9$2Ol<4DZTsm(U9mn+R8W-C!4x3Td)T?P)!; z6R$U)Jzfj#sNE+sAjqJ#bf^y>!m}PUdoYEw8g^iIk*oNZtQ1n0orWBhBq}G z3WCC;_{1}b`XqAkv&SJ_$0fL61ogu#=o!ZO@faHQ{Nki2@eR<30{*+0p>?=yd((dk z@-j4i+B7+VXQv1N65HJ8WzX208*HqfaeO=>;tFvvq!L8Hgh==(ppITY2~d)6h-lJ% z?dyi`i$s$vLuy^-HJUfHtdMhs5T3bt=n(kq5Q&^oQD!B+^^6dB2h;GM-Z4=HjF5X} z!hTM>Fo;%b$>Jz;qSA3Y;x?6l%oc1-UvdT5DHQW)BZ%PT77#*LDjn$@|c$o>M2!aOb9O z8l)vn&3l_yA3e?btbs>sV<>t#dn}eltA zPoBfD9f9NyDCCtif5n)drhlI>DT3xnRZsb6K;^FBI?eM%5$4H9TUZ%cyNT2)vB{RT zOgv{R7<|rr@7xgsLVm{yADu_XUq~eVxPgB_AsXC_9q>;@a;?-?BilG+zmvvgr7>py z$X!N9sX=d2QwQ{u5?aPE-{68Hp)WakKiHoF&rdRG1-m%(<@8Bt4)JoqFhQA<27!N% zVo;9lqdv6r!J5G^R|xu(-`pYX&I-#`6>bUps`9gzn%k>jYQ_Hk7=^T$bv)|%Ip)?h zFRzV3W;f+thOdU?Y0oOGq%e7mJwJF;<6mYs9Wm88X^pig@q#i5;vz~>VtlHM9dk2O zaLix094+HSkC4nF8)F%%jW~9WLCgJ@kImMnMQ}p89}dghB^7I6w$CPsuwj^6ZaL^x zlO|ylrittNrGrbPvmDPp?3_I7iafelA-tw;Ugl+WaGrm5nS4hqc*0vx9;1|h#8^s# zzWQ6W9~hDJDiN>Z3JV~ueV6fQ&cL##KGYho0j7+Q5ocZ<~fAtkhx>`IZU!hBdOMO{#KPD zHM)BH2Q#WQk-Mn=nxmLj;VxY)IC)YB^T?RrS3gUtp?bFcMhdZvDA)bmkYU%yr|Zqv z)d|hAP_u$^@^ln-!-5`wz0{aNtGGfgMZq2h7{JH7fo?S%FRY7*SVbxS6b96!b$g=I5lCyVbRTC6SK7>LI=$_})^>jHLB6Hgpr(9vd7`U@yRJ-lU4+~)eNvRW+vDAR0_n=c( zKAyv))~SaidG*O+shG{0SaKYC4?9_$(rq$HOrq}`sui%rz{kasfk{Xyk0YA^4F_LX zUgSO5br?(X>K2xk>bp#>cq^v>aY*fWuZUDS_U5c8t5mMKCf}XHL^T!b(!^4}fS>eq zwYgxVu%WLQuyD2#nThyT*Neh3DzTfWD+8l0F!O{b-B;O@pn`%*^eJ8>OKPzQU9SdI zZF?fSvb!mUG%~eOG#;hz19)uEW9US2Ohj2gKq0pDF$uF?n&m<55J;cN>BC`fi+UJ$ z!}{l$GcA2`9D2i#DWslbBn!!LpyyT8J6!dS;x%&8@APPGg$cE1L<^uX^tVlaR5Dbx zX!U$m5!%WsM!>h4xG2--?z!WfL5b7=7cqlBaE5Xh1j*++`G~S`uF??>o%Eb84yndJ zcj(f%L8{*B;Uun@JM@?rli7nJnA}Si%h1nMa&J&YPMB$lh~<@8;JH#XxHZ)ZiA}v@ zLA}QFH@(a(g3LmMoN8h$Ni{K=XX&{}q06&hV5;qCurZ|pcK=6!9__g`XHO%}+?0w) zaS@V2Z6nb81OasIm^VFBbD9&{a;DLo8k#veqHX(9@j|Mnw(5L7vlBUat3DOeVzN_1 zspt@8dDYb58Jp(V2{J48W}E5O!CsO*SmZ*HQtsc`+Vwd=cV{*gx|%l-wOnModBK^u zN9f0e)bnCLkm3~-m)D7s^Xmh9kg+NDyt}cXMo0cVq+a{Q5#UTqj>he6U^X`1N!{q} z8{J1YHe~bjJ=@;hKb#et#m+-FT94kcR^1>I3!_cp;EG#s!LSqv5;4}CphS-C%@m7D z_SK&TPn4JR`&WccO0}lgFA3LivanGRU+njOze(>>5NH)6pn*+6cbFVqk}fg5M3^o< z+mn&nntL5FXz2z%w*T-f+2c@pU~^uZ8kvB;?9>EAt;KD1`&#E7Rmi_tv1<9(IrUJw zYBgSSH;g=|pumL~&KvLIhRb+SSih*MR}CTOG{JCli}nqq%w-mc?%hSD<2l!pr9~ed z5pLS2Yj?dh(KpUAn{HrbSf-_Ahc;!dk3P$~>%MRwwV}4@-p~cR3*qgu_g|eHBn^>g zl{p!?CxK#Z0+QS?E`v~(u=Qpw*EF_w{o2dr937>DF4C!%K>W3S&HzMSa^&ArGSWp0*0CnkWvp~o>CPL;=EGMm$Zt2@Jb;0ZuqYc8+N2Qg^ zf#~GLj=&+0yhLBd>4EAVsiqHz}yOPBxKmH2xmD zSjhC&UNw8*@M5uZus;{G%Zmqb{d2HWJiPgk4Q11GDxom1LuiX?@pSu|z9bI@{#>RwlZVD!oQ++>HqM%%2S}1Dg(L&V8?5YHx)?9TW z);&deTd}=8w0>}^p#|*c(5MAkZVp;FmRF15tX@5`Zu;$=g`>hlnVVVPDG zHpj1s$wLKbPLRYZK$TC<0IG}eX+THlQN!A#N5f1~IEn8T3B@zY$RAO;G&4CqO;$iF zSKq4Gy=7hlS&pbEP@Kn{zp5-oT_d^OMfZ58F-_a7k~IIqr3^EXiiUb_Qk!$IuJoc_ znq$_m`6(?VGgPf#w+mi0KQSsQ${Ma#ys%SnWwF$Hw@>L=dc9;B9WAKA-SeOsH$K2% z&e%EF-PGHoE(CnS$Z2n=ffinMA&SeHew8DGNaW;L>54KhlB}c`RWJAVEytZ;BWhcC z!%97}LiB!Vr=`^O*a1NLFcqYKNikY;?fh{8YomC9v#0?@=}@I4jghWGEI_5U{MeT6 z_H}vtQRrzpMQYeOz@0DOID7czPV-5aRjd@H3(%jaXI_z6p&eLc`qHQhSn8|C#>t3X zZcT%=Ry>kq2b=PmwcF+6y?mSpM8X#_}-r3;LrDbf2?JSHUN;d0`!R?z)oG6-B zKa3t-+rkO(X66;Ro|D3tO44V2+#_8h#AWS%+Yi-AD(Jnu-8<06aXJ;0XzQ`o9hC}j z9Q8QLD6&B_Xy46>$Q5;`iF=3kAARIssTp1FGE*=~pY!IAj@PQhG$MoHr7z@ix1zZnKEm)p(Cq)-GF70e>hX@_dN)1%U#950?hy5K; zc^bP7SO&=9FsfGEPlXA0q@32p3CX^>=*+@>*felaX{D4O5jaAso-965|xZ7^hx z+`@+C<3x;u&?Q8=yEJAWnQ`i3s^fsQNy+OAY(rbV1(HSKMa=rCS2`p#mpwY}ZSBzo zy9_dkz=h?65kc-qW700ELnb})tl0O$v*i>?$fmA$LMT=0m$?&31aMPyj{1CUoJ5!# zj*DtSi%#U!3M{Jqkd+yQzUr~u-q|DMb3Ej! z+8cZz252rG4a44$jIubP#cm>vrz2$Q-l3@_qd~NvkhRSMcc`3nXbe-|l48=8wN26J z;H%phSk9hC+)bY6P8lRF9(WrD&+dGN>}jq;5;p>sl{k5rCspjFSlcdx&R4gFMQ-d- z1}aK|gg)uQ=$EmEjjzkdv8~z0Y1+H!ZOuGl7)F-oCQ9yd&0G$#`c_6iT_??KSCG@S zg&l9LK2a*3tE?>UOC&=0>*r#k%uL9BkIWd0s0Ktj7#$C z1xB9ZZHVJZ&qE!}l4Sl+=lF#hKp(~Bc zg_|r+{^@4Xm1Ib&1Qv;-dG*#x`9Mw)1A*_BQG}2pWwaXkKu5i35#^k8iclE3sf9n7 zaJ{%hSJZ2$S?y)OIbW?&Ib27jm^u!M-gsXt-L>Rva{(G^9CcYphQvw6A>?5i8zDXI z+vgpZHKDfrGhi`M5}*-qbvc&0luJ|ib5lA!(FfH-HcF(GWs9X#CP?R%w+p(Qjxh|U zi-TDpb^|MR=#ONUeGq~L?2(E-{|C zAxcAM!4ylc73j?woO53pvvDJDY?u}jcWtG!WOnJ^;sJ@}TtHQ)wVXt2C3Gc>Etjw$ zDXJ&?PjiM7gS}>a($uXhu^B2Dpby3Wnm|maH3Fwo)6b)gzy>$W30o+$!Y834z_8Ub zxQ|fJ$*o$OL*nxvnYq&b@l=TDdU;c}OEOmi%Au1MuSv4?&MFpPnE`m=39fQ`u0emU zOHJ&y-JOHt5tY%7xRPZO>upn3s>sOo?-@0gS}8N+W$bgRe!5QK1reR0Gu&#&+vml0 zDVdhD{UXOUc;)wb?$CG6CFsd@Z5m%zw&kU8xHRmixz7PYa&Qd-8~fZPohcky2J-5bLR$kE?QXQm>L5QnFRe1MsE5)Oo|nR! zj7q`)|F#!*z@MZ=`l`mG4nn@Sc>7_olNDSe^x{W%K5^-IP zaXMl>4r5FFvV{|tWt>#T{1F%yvF4Lc1d8c2M(!&ymbROwCJeV#8&&Xg&+fxx#X{TC z_oxf7o!mIIj=ZB@LbHr%Eu(M*Lgf*BI@k5SOV zSdtTLXoRA9Ue$<-P!HUutr5;KCk>TTJzBD!)4Gm^GFWZ?)QgBoJR9P{YeFTed1Kig z@U;+NCR2YO4Tf229s{NKo4HbN+S$ixFPU0hgZ%wk(K&L4h6ka&rDRUg03{7bqU|{c zb=;564V%BTr|Dew+yXs2Xf@j^dw z6C&(9vg2(DRB!RK(U5>4el|*6bB>m>Ze9VOcj>Q_yJL=}t}=Al+oLtBxL<%_V7nhf zECew${0(b2^NZc0P3A zuo0VyhRUnLg3DRi=CF;B-|^WeP{(;fDCGE^V{o)QyH3xe87go`LJ zfaie|smVm+KD`-sGr&YwCBivt^&R9=N=KHY;p1Xk$+6osGYokFj$Hlr4jX5%Z9T7D z?j_l|B$ZSzVaXUQNjIOWMKBh@Z{iP&BJ46~wFIyUh`OB75);xSXp%aoXY6WqbAb+%#wbfpH@!XldKb>>&ZcZAf%L*oOffM>LZa$!Y`3c-4j#G68!?*hO>1X>hrDZ zl+^PnNpGef0yfB=Y@`K)PL#db&+S#}R6-eulu^928=p{@Og0}jv)zjqcPTJhmxA6k zGEA7`=nhJ#*R||8>shhYvD6K>sH+9Hhi_Dx-koo6QMd1Amu5FDPPPX{Q#>M1PT5MALoW>oP zgykDOJoqBj=$5iTE^zR+k0vD%>V@Fd(`ob77~JQt7W+X*hpuE`*Wtf`?a?4O4M)RW z8mH7-E_beN(i(GfO7X?207k3!kN#2B0HQXLnTAjQQ#c!u`!T)z0;6uv?Kp~LM(g+J zA;}g~<&N6$4YZFQBykBTx?^j*N+F^+6=D2YmLwUO+m-&`0jRq#B`!?HXhSg2X-PrQ zd1IPT3XxRt9CrboJvm@o{7_5KBX1Z8;Hyl(+U~b+@Jy8lQhqW&4sE)=d;RFB>M?EA z+i%Zgfc+U(JV4jOOuEu%3_OJD`*^w}zATGfzsEleQ*M&)AfF!FmmT;=?T$n6SE%S% zPCGNOilC(LqeD6uk&XlXiM3g#HG^v8w&`?e0pL=L9l{@~F!lxJ`pOlc zb-)#*5J|12(jl1wbb^UfHfmc8>^eW%FFJXKuHq93zs(}5+1IAgp6j3nV;M=r@9R>d zETbERh+8A}3#x_qRMMfMDM1s18+nLzG{(EYir%gaj~dr=>?E5<$_>LQgx8@#h0ArwjPG<=|Gg;(!7< zx#a3}cA*}$I)B&rpo@F0mD`8=7dH7WXtiw}G^}W;cVO!$)ImKjvh`*`BrV{pVbtZ- z%OqmQj_Ax?`kY5`oT1DBj-I>JL$QPVwTI-s%6~>MRk9_8W6(Q%O7T!lE{&;Gr5xE@ zK{y-U+OIGb+zC{Wod2B%2s^w-{@k}~in}$CuPUq1x*;zf@zuS&koe0aq^laLF9qT( zmQY=(Q*{>(yJ$+`esQp=tKmS2;tVC4l2S3GEkh>y+UT@yK{{aCY88E5m9Xn%Qa4B~ z67G|0H7=Km;yA%lCN|9-M6_`|bj4I;six)19$;=)U@C~yM`oxHNf;BtQi?m=&zzn} zX1E0eE49f%b5*Q79H>AtMxa{7G$ld}Gh;--KO-J{{gjg!^7U}w`}Bxs1`(xX^iHc| z)XAK5nkHFj-thJn(ppIl}Km1Qf^8UFucd5P9ZNR zu*Smen~<)^$tGtTzl(-e)0VF`v!mmjq=dX8d!=%rOqpXrzkx8z2r>*wvx>yvC*CzF z_|zKDw#W*k8SDO5wh#XHE&&Av#RGUlnx$z*=S3cq3+gcfCARWJsysAm(_&n(?Zy>5 zIy@+&%_PgP5bPXmO09B+rDG5Z0Qnbb7?wp2%jw^?wwD|LqT&F)KBuz_$v{zi-YK~g z>ShTZR3FrF=&CH({UVuV7YZr3218Cs0F{VSN-t%cj;%XPp?%MKRFE9%qPbdq?b~P; z6+S(fUD{N|!lu*vW|st(fB^8F>;f>*%r25@Zy`nKe;lD~nhV+GWw>r8*_$P^%ZXR)AY-fh~FF(5}V`Ra3ksy|h`Jze6-T?2UdRd%H|iFs?Sa z7m#uet;Arwb5Aur*{amugwK(1XBe{L@R24-v%h6U5IBP;aH(XPhbGJ zL}CzQ`f$+doG!YWs3INcHTXVwiBQtzy%iM!JW|A4I(w7rt4KNSy|w1!4Z6G6FmT!D zOA%iE0F+nFn%b`=##~MxVjY#+R?tzc!%}3{B!SQX8ddMIZMDR+LgJm(rlY84h!p`1 z*}{=vNI+k2zSayR)x7JSRt?&`Pp1Ws?*c_Ou_pe;GS&zc%DJ0T>04QHKrF6469uJr zEVGyE2V^sMrs~8=np0iM%4rqK`8qn)qo%NiQCjUIm+H|x;e+AD;^4w=zVCF8DXs}-YPB9TXPbx>&zs0h{;aMu!vqFibh1`NuT=;j=Ut;~(A@ zVev}JC?*?#Xb_3dg${jP0?N13F_j-UWlEwbB~dw?8s4EnTUTCk8dbb_+G`*gzpI*jtEq3)|T%c zrrXjPiRxge4(i+O@mRqD4ss+;KK5k9aLH2I3a`L7h zDo93Qn1C)mQDI3kBy|m?_xQ-Y)t((??QsheE3)?0=P!A;IhrX6;j#2FHGm6t1QYmj znhVngXGzY#I#4uRpg3+8<$lWPFM-_(6t4?P&Al3gT(hEOkAr*kBG%7!DFnlEEL(sa z4hcFyE2!zGTFj-+ht7LibXJ`gw%@tSrh^AGr_Y5=L$gw{J5Ov*51hPN$zj>OsR`JL zo*Xjb^Mw`9Gp&XMUN zlqiDvq{I+M9^D(Pkk$*5K~g=hjQ~S-1l!)Dg&d9Ugjq617>B7F5u8en00m7^-5S?h zhJZjTySD$vJyGxL`M6{cF%SVV1T}lPgCrFbmwx*izn_<*^c80-9ag>(1ti>_NGRDo z!p196K0uVOx7dI@Urlbo+1c04s6S`f6rJFV#K0kuTP@YpY?z*vw5gX}L2;D&rUk8Z zNZBB~Gn3U2gfw?`o3Jp|lZrldWy(#rTe5wkuL-=*20Pz|1ET$RU9Bc2$*sev1rC zR(L}!Q2Cfmt5x3u)N5z8$UfGwmuiW>#W?_z_@6`?D_Q}e_lY!;sJ7iwM%X^H$}vEa z5k@u6G)OJUR&2czc3d&f9>W?oCUK0|bU96O%yk%MAJ|dmI?7sx#Ia@(-QU>t$bRix z&f`X#8_QYCq^2d(X|y<=-nFK5%Vp{4ukp6QgErqeIm z+LJ@)RcQOS%7Tnp9{P{nDQ582qdZ=j03s{PEW*n@pSByRcsrUrcSv5Z7C{kEb%u$i zA?Kw+Tw8p;tl2DQy`lLqMb$0K_o>ekdn!WqVy;9OyeSP+yzE1*CDwM$+PLf5yE_H0 zx&8gkg9{1ri-@3myAKyLx}|r6EwC_T#teu>S2lPOOq`o_^&Y||TDtqVldVL3S zZ10|V4eO&~*~vNBjC5zQi|f-Amfd9q{QdU%cIzxs1ODwtV?f18UIaqRL^)Vg_?>iN zHw8nnB&n8j%*$(h&`V2V%ev4I>ku^cLKh--iZEvqDMJBhKUeD3m0SLcij!n(Ig~Q*P&3VUyno@W#N#^!{D* zPY1q@ughF}?Mm1X?k+1K6(a3gL_Vo7F9wSj0vTG`%-LF@H`ry}IPx2hWZS{ewGTvH zOJL}GIU2RT;W6XO1SrL6uTffenAAwJn*r5UxBw3LfVLI5zn$wZ zN5{YQWo<=gwW6(ORL%Q9LGYftefy(MWjmKk&RQ3C1;F7!z`^*B4F>AwnY_#Eo5xp# zTvh{^Sq7AbB^Ag=SyFcHe_m6l&7R#76E_-B3R^4_lWgp|945-B^5E>HZ2`hhukKsf zVTsx)5<5US=9`6NY5oh<@Y;1 zzp*c5o)IeA6vw(k7BM>HackknR09kXW%C_qDap}eA$vTI71Tc+#@Wm7@}BdTvt z%qLlPH7|N;vaqD9*;lDRn-d;p_+nGoa-*(!)B4gqmtQ9w>jCp&Dz){C%X{YnMbZxb=T)$&k(m8yP-FxFZ)!* zn(7gvGa-QCX$EJ-&IkYDm%Tq*i_hoEJV+>xC@>i*@}!Pe>@YD84nNAO&LRj#opT#G zADk;DOtKLlsl9S>?Ky*Kg_A;6rwBCgQ<|f_4tXEM_a{3^K8rZbxqTe{aS`xkv=k{q z);ZJFxh{{c3gX7(s#R$dCbN0zzu9NXyNkU!7=!PpbY}+OzvdKP3gS#>4E6EdenoFW zl+#|YF(w)v!00K8G9l^8cT#;@FenxFKi_JXt;#I7^bLqtUWK@rVA`VZNr&68!Nf4p#jUMZavOl47{uk75 z_+HSzf%WNWVR-1OqCIj$gS4!jGpUR=huR>Ev+2F;^~6IbRgSMYAhn_4G7N}*mjUZ& zx9Y<)gP@A^f^thEf~E<#n~@rW;x?e+m{Jx&zoU3UQ~OrBWeLrb-h?3#&jkV49vR$Y z)gP#rQV1F_nF{hKlJX`0AbM$^ag1(LYD6_9Jt<*c8jM91n{E1_@1HOzC>#Un+>LxE zkJ!i@lHFb0Q4T+Ju)ZH|Q}n-W+^q2Gc*S6^tH&}ZXbjM_HUea)Wc#u8W(a2DYt>HqTVWaZm(XXiox1MY-j%vloB^Vz% zbf{7ZMq}QlR%}N)HtAbcN{dW^o(02Jrm#m_6)D&EF-bog7i?qZ=$^m6zNMG@ z;={F+h(Z3RO5$jEQozEB_u9STw>x*;S!iUs>p%1+ayG^c(F=`5QAl3TA@hKH(HJ-G zUd6e;5ec20Smu+|I?c*pFJ)OUsDj(WTl{@utH$g&4m6TVD^(1_ZMSk4)9p7uvBs#P zvyz^1%qwruiXc^0=AtR#?bcOcA}R7_)T2m`TtIC$G204@$2Kr*l$lf!Z4gg3@oyIO z_b9_)aQXUf6xn7k$?)n(ncBYME&>T`dmExYePdBDdETM?d$ul<%HQP>5uFcc? zy(fc@)d}(LY^h}AbJ$S$lh&gsBTx+kROQHh4_qu}r|wz7j!r2d^qn#!U@3{%?jQq$ z`^c!gn0*COFuh>ZE*AKX=E{Dv-L-tA$o}p^>Ue3MyicV(n;3-)OEKjIP67fn&l=pb z&)a{FC-KbgcimfQUp-In&LvAo7^lG|1I3b7j)bnBK*+5qxEQ~6pP6nq?;>qZFHm=s z?HDNqK`1E`5JVS1bO&RsZal#VRc{^9th=wU_lQp3yqg#+K!ihH zDgsZJ9%E1j>4WttByO(m{YD*!(E_PfbU1?|D^sFhStQ?!Ve;4eyMCo?-3c_XPlkjbA4SP}?Uq{fq z7>1#vD2q-NoF5NVaiccH;+t4W4_PLZt(GWlK~kAE-+ z?pI&fpMUz||9<_2^*;HcvolJXHQ3E>+R@4bJbvx*O*|pV6Q4fD#82pn1#8AUVZ(=$ z&)EC3%%Kz?mm2IUT?j)q;TqiayJj(>>K6j{5RUib+fTqdQ=|08CKuLiRBFr!zvLzc z>PKM^=46K>4Ix-)`@zkjIE^deHNL<(xhi?%F!s~Xqa;s7Lcju&SM4px9W~gq*F}xB zquB^B**>Pq0{Zz*-^gpI2n+6Gx)#Wl*20GvGK|ZJ3MCiP4xinq9-P_{?TPG49lLBLo6Mk=L77`TrJm!#3}lQqV8 zp#_@60j;oLf||?(Wu1GR7VKf{_iFb(Z)M$x3f4jcJ76I?D!~6Sx2Vo#q8P3!x5#21 zbQQywKYiEq-5QA6I2TMRW{$m01kRxyOyd$MdWBh&`r^w!{$al*+2d0!!ksNUe7^Rx z)vuUP%9FU}`G@OEp#4o`63jqA1O+W0r9(@BjeItD)X0HV+TZXy*uS$(D8oPq&q5#_ z9jNJEzxaQb*O^5f>wX}#zgCX<__@dopN8VlQF%^9eoiKyY>hde8^Qm!SWAjVkkY%VE(lFqGRN#OO2u zE&+xDLV=XI8QdeotiHq$WGVNXYXi$~Gai=e0V-v9Z(S6zqUT*A{X+F%o*^`{SCDVK zTIYs5scs;WMLIi6GZ2tIaMk?0uw)Fj-pxMLmrpB~PdA-W6}?2kt7>|Eg%TnM58FPo z>Li@{_C}X_-7Oz}clF~HL`-HEUh_95Cj>AkgV8quzdlbLman<`5_@L;S;od0PQ!v3 zXo^m&&svfA8g$A9&+HgbYzGjJhV&sOTvN57$wVP}X8K{>?JNU#Szab40$9HUuqpr~ z;DyR1`rZ4|m;W<6tm80QM>ws}o6uF_Wxj!AmvPNc@Rs>)B|}`X&2lQU8mkp_DXY~# zw2{d9X~fR5w$@u<$RK3K$JJ5l6HOn^Vzt;rVobsQy3a2AfSquJnmbJbXV*`rty(^231$ycR6;;m)AuqXe9#DGW8=O zHyoF}0n`U)=jmY2$?KIb{Ju&*mgU9SS&o@?QPcozDlx8VMTXSJrCIz)7~VXHV7$U3 z@+?gw)@XHcgYDmZ)#)S$y14;`^+;B?K$8r=0BpHP9Lh0cx|}^UvIHa~O^?$?_Z{5Ro-Wjg9ci+5j6XQ)Nd8wNzY9f3scbum35JwScGc*gAC_ z20rMx{13_@goSA~SIlF(5hd%~O4z6Bl^?iX=7GIunPGm@m@39-?q#K_S70=*K>=pV zfmI!m9;E)mO{f#l|J)cyiw_VExXEPQ0FCING}?C-SFZ(nZAQRv&FNsDoq`Mn3zDxx zkEDs5rab$9?qg^*<j!PjDQq*nxV zfTDX?FC}smimSydG9*EBw1lM#;$Z%5dUp@bj=(J2z>MnvF_{r1aWdD@K406vW`$GVAfNZN-Nq;JChUjI zpoxUut*pzF3)7*wGCO;F zyj`>6f^NR$1egt+MPz#L{3965geeBOGvjT(d#`zb8;zBmf41-(<}UGrIHE9&5PUai zxBs#?gMY}x(5B9Ig#M%y3d9UmRzqVoU*DaZxV{>HUm<9D>D8x&6QMJ*#bFLzGqmWj zWShDZ@dv9wca;zYC~U0@r$-vgCa*LAwTuK;DD4E{9yV`=QeUh@xQd0^J^tV9+v|_F z5?|V`0P2~s>}e9$Au4hOy4IHczW@6!-0z~Pwr=+Eg=A-A=A__SDX4fsy^BeS@)EO? zvd^kn8!xmrUee>+kr-yp$y80gwSzbiH{)qC^Q+Ya*e#!`q1|E^>LdtlN*H$FVjx3p zhv8YG%?iv}tN=NGHw~s93C-W82tGXpyNLwrrDoO_-=KPuMUjrXOaeTs!*lra-MS$N zni)ZJAFrq!17~h{wOGhlc|nw>C19+jM^Bmsu_Isz?beH5K3@NK`lG6`Z}+CjL=%Z%mZ_p(o$SF)z)OetUWZNk@*(e_K21Tu({z^nbX zZn5&o>ve3^2JafW2_h8>Qzac*(v@r`YvgUKLJzy81{Nnq0z1o=r#BPaVkR~g?|qN~ z`C3nTGYC@1i9^YthQ|~0u&x3#mUqVrG5N`g{Cil?)du)|6X5T%L?jw#3p{$*O&ton z<(ww2NmjEWlBmQ?o@AW6*6R{q$&3Q`r(J!?LgMEwul!e=W6D$nRS~4lgnlyI%Z}~M zzTMX%0aet?T)IUSKx2kfxj77N8dy190>$QyP1KUZ1&6Kj4h_4uaSu23Rp(=3L{=V; z{-^zP>w%#@B4cG5--@`KiX%w4m6zne*kGmeVG4*}if{Qoy?u9U{xsPU*=aq}*3L7{ ztrBUueP`}nt^UeidoJzfn2m&H7lbLkxww0EW$@8L{+$}`D5bRr88&6r_!7kS$+ntH zFE3ixH|`!Lo5OkV7;?fS@D7tzhsh@Jaf53Mq>U*A=G~L#)m60dSQXq|pELT-J#PzO z8j3W9K0Ne;R03#&d#d+DB}qJ?^7YM@+U?nK_j?Hjy)mrRDuk250m#<@O;-tY_vUTg znI3)c*sD72_n^wi-eG)Y9>5R4sAS@RH8auu`okZR^(hv@WJ!qB0p2yGP5?2gmvD+i zDHMh__{7e$>-(!BT}!=83e*$CL9%Fs&~j=!hBx)Tx^`JlPeolFa?;FHM7Tp5kijBh z?z?aPc*ARs7?b!cv(za<58C2RDXJ_@HNbEbrg-7u#@Co=nmGnpLKF(NE=oQMViG#C zgmOSuhmCQo=MOZgP#IucqM1>wu0kLTbKg*OC>Z8kJL%jQis84pAtSDz=$M%)-j)h-~=Ud|Q7eVwnke)nrg; zLcs+ANn1s3D1dkM#TRwtzMW8|I${36MEQlK&<*Na<=FcR^Y)K=?gCAyMpQ`Xcn&4z za^`|45ZUOSU8a$5^{?Rfj-Yrf^iR5!Z=FbT$h~p^uiuG}^y5buC3t*2j9+NF5)oBS zcD-I-f2>McB1M**Z~y^L+Sz=&1CKGD@82TNTiG?GSrO<`X-J}UgbbhZl%v4o#U3_mZmxgk6RrFK8To?+d-e-z zZPnj}vJcE&s24}_s4R{LE;RHy3ci`hb0p4DEsk72(c*01Ax4;^E_VSZ)oN8U^{!S! zrru3|Xpp25i^6zmPDD{THD6v9!5LNB4A{&_DlH{G5s-)7Fq_14tz#zhyb*TVCB~LJ zIVU(p0KokMLX2uM^a)c#(^yZ!$e`ss?T1+GlUuHb=GN8fb^R$BcpJk=Z_W7aOYSmo zod(eU<&?e)A6^|Yt3zA1uu{IyhIl8Ap+N*cvCmU>7$UHsubpYN@+H*LgbLGHEKM_HeVc!+V$pJCB7*NQSpgAd_mdTR?%FAeTYqI*ltgBzqJ}CuO@tJx*+&9=;l58lWt!;n1;F#J z^H=#7c+&i%ISEym-rjOHp+;%-mtZs_O(P!&1<-Eu2#^Y?wI1G7of(W9dU>!HuI?`{ z&(5l|eqNl#@)7Zw(8rS&bhq$&+m0sq^%%ljJ5|P<`*ykODsm&Aftl$xhsTj+2&iTz z7nLetdWbpT=U3O}C%AU>9^m^d(HD{0Z;EGiOKl=E{*L=BB2()He!cix{_+o*+3?+m z%Kyi;3|vU>6cDepyc2}Bm-ZCL9kfH=skzaj{_) z&*^4&>_!XMidB0)XyQ6_bqT~t+BHy6tl%M0r)WDb3Yw#GA2=b5 zjv~b3tgcNA((J6}kxf`n2<^cAE}*FLeDJL6u-=qk(a1_*dtSn(=cO+9j->E|CYS0I zK+iL?CD6dSh@}QXQ6R$WZQM1lV;-u+n{BgAjJCd$G}iRqhbU;EF}Zyj75&8FXsrh~ zxtom9} znGn&KvCQ)&|3GA*r6+n#T8pyKI9F`O`r?G7?=u_!AU1n-w~H!tPJx!EH-jE?(cBmN9yd!2 z5f$vSLHgFk&f7zUCSCIJ;_mG^-HP~4ytDE+-gpldJGZpJHJr8+XdqytwWEycM$M0t}R{^j^RJ#f;Y&A@(Ghk0&VX@3SP}Fv@ zc56?fReU-1MlPIxPDx_i%a(2M&u~UmH6{4DbhzCTtzyH1*X_HY_By0!L&B7`mD%33 zrwET9_sws|LJ6j6%J>9S!AoJ=f5h;uSgUuVF8-jyTI5l?CJ2fNDKy|rT~s&_L7?t{ ziZ7fLUDv%~Vtfm9nX5iW0d(x#otNgAjH8es3x#L__I@gG7wzSV*_*PeT3et?^NS+A zkwiRo7`Z2PR}_^}=t#UsE>uPgdR8*TZN%v8tP?Ss7|$Zvu`rD{(wN6Ur2LCA$N>IE zP}Zb8$v_~Q%L}XzCq8N1VX>C44d-3dwGB>4=bMoUkhz^CG=VSq%X4(wJ6wxVv4)$vD)E6t(v}RGtnt*OA{5w8a~( zZ%);7r(CHZAsLrefxe_jvy_GiV6+{Qf~1hUH=Je;s^a>(spWxMwh0^Ul`kluU!}A+ z2%wv$QKXxKSZHOB<_ikJ+{kibB{WXZ05y^?*d8%4`|2>%T?nP!D9cKGdjSQi^FuZxT{TifW`J{z6td@dW?P4_rI(^Nf|zKIv~?$fc2N_3T>~ohJtjxPCvzVDIWZ$US=2SznTV;-b)j2$NOZ$2?-}&RCltN zko!YrYW}6Enx_Syg+A$~8i(B_!=EH6U{6T_Mp4=6Bv{n9H2$U3?<$954X#yKLF7v% zpV1%#9(S6%k~JMvIO@s9>q8C;q!bN*xf8LoALC@R!o0EnsyPBJ;GxoPu?D8+S$XfT zKj?EhER3qe`iX#`r2ieJ5el5$6z`&U$HckcDvYlCq&RGE$f8_d@u2l(dUI2S4uIOq z(l{)D6y*qH5k~Gig?DvWQTvcyc8w@$-~s_M1{fV+h?I(>?hO-@xyUhDW=L+;dZ!h& z@IjRrO0#@Gz6O{PNyHsc{CfI-yb4GED+YADa$ zu#ABI6%Yd2Fysy8(vwJzG#1ac_mGr2F9D2j0Y00;4vc+@v(Opo&C5Sn1-5UU%R%xx z3;bK_tvL>w9g~%LD~Tx_M_w-RGRMQul(o_wqa$F!~k2j%DA`Wucx$gS-2ru~XIsy;L2~y9c zC*agUfL3@}cu&O3(8ALg@)`|%Jn z&{Z$)OC&vVr%rq1$^j~xWEi+g4#lR=ZVk5v+#Wl(;$S*qR8Y}oS~pNc&un+h&nyWX zcY(388TZyMwl;=6EG-@!oVY6exc6f#hGrWs39e^U^ruPa!YUQI^nW}cxc=DhUBj{{ z-}L4x$0l55STyDeU|lyO{QXsaNj~_4ZbGe_NnvS+-tsBwkrs5$?R%Bjvrbd#DsYbwrF6+QTL}0(xmp86EKwBmfR)pW{HUK8EeogH&5VB zBU?;)LP*ud5)Vlw53e8DD?9;!AFw81qJx-qaapYO)$O@7f?wU8UtU~U`a#$iRUkG~ zoKqFeNk09Ny?p?g?X$CuJX|A5%afMs@#a&+(99>xv3*XH1e~Yb#~96B!f|*}^B>!D zUYF=#x7#m}WH}2YVIvQ7V zTl{HT6yvjvHcDRDifm`&vj)`Nk@G9)8`L!XD|2*h+_&c{EE397cf+*l3L}`oE%g}v zDFITI{)2$nN9y>#gV{E?=ONQ!i{chmur+-mP+s^YcqAF(qv#uRhopcD{t>Ys#dw7yvB6H$A_X+>4L}2=fRHd_E5O~E$AY(PFU{9!>|D@cEYHU%Vz8=y zQnp%fi$xvXvqcO*aA_L3bDb70?M~>G27(+Hkk?E9;aYg1?hCl4hA zu@|P=bHS|@?q<34(l8ZQU%S2j<@v059dqqsAOXweP&659I9UW?!{Xn6PIAs$Z%v8G z5z)a80SPMBdE&u#4VG_;eAd_@pN$k)I+=;rF^0=s`VOYwd#L2<4SKGxKKuupbmEg& zrnBq0Y=_2q-oCSKr5Z#nFpLOBbM4gAwDm!Qt~H#SDJ3;^t(w#7M^!~K)59r}8`sN( zTN9^Ipd$RZ2wWcJ<2%(Ce_t}jF~Supn`t|Y_Tmrr zOBYQnAQ_Qm1c;hp7aH%J@-)AfkaJXi2^>OC(r&BzQbd8a2S0<*>&T|^cd~8JdbehbV&pn=lD9e*FO$$Ka@_@RNHjOX0Ee@YF0Y9ohp?9UmAJzlfcGyu} z6ScW53Zsa~dEmM5z-9``v-nSyQt7DA0lNNku|<}IkRL4#RHF&O`wK!NbsS)SNBm(H zE3#Pa)p=wf?_g27HodS7WyfZ=)TCI2xq7wwGk?mt(UHuC1l%6%^=RcAFb&5bp#{46 z+o_98noOKI)QM{ofs}%Hty0RuLYAjD)OrHVIN<@m{NGl^9(M_32#%U^AU@Z8f^5A$m{7I13!k-jyE*@_@ zb38bC=9CFoiy2{Xa7ze)QW`zYgJYxQwl}dsW8Cicw%TF40@~7mHMvNS#E#<=*e1gd zbZY^avB%0CjUDG?6Fn7`p5A{aS%jLFMNU)<2Mv{%2jw*}d*F^j!9F_*XU_AP{wL3* zL!{O9q8!s6ED~^EnkBnCER)XeOE#gmCbf?_B2GhHK|x+Z|2kwui3_VG1ssQ_U)Xip zrgegie?4VFi=?Ei0pRe=O?({$qQiwIq_%wK&#BpV^FzmWcM)Dgsad9A|sw43L>4V-k^x#d0nUS506&f9qynGzC2S+=i z3y^v^KO;AftGy>|&(71;&esD_hrs!#TNX}~+=W?J;Q3EA{4PEF*4(1ich3sAuqEV3 zV0kM+GfIK$5&TQ+f5X)=>Ba3T20LiCeja1`plPcXcA(_Qga%##!v~}QXsp#F`vQH3>q2W1s7RfjnN1|hfYG=L3L z@ZdV&Z)O5rUKT<}UZ>!9m9AFD^kUdS5O}4N)5{VCWEk*lC&&aQ%)pKeZf)})g)ac1 z2ZpsYDI#b^RDh%%i|S+N8EZD=Hu2p0rW=3;ic`Au$~1E@rm~WCoQCg`%2%Sr8*F|g~yNbxHgp3phw+d`g z6&bF4nE5~#gI^p8{(E5!qDH4Qc_EOxLlm6nAP)g4$;qv3-*n$fJ{&_9c4uGLiY@4wY*wh#xfVoh~CUlu~PW13}W*g|%G?|FT|F;OM(I(e3k zBQ!{<*kIvmg%d{Jq^91Q&BW9n6AQznQpPw$U@_88kbu4vy4XbYkC@c|QVx;NW^(FW zAVNW>R~VHcWXO=V+xa-CHty_-UF*2rh^|F9qMEOynZzR!xZv#h49N{zdobf5RwZb^ zFx#UjmYv3*;f##(jg;VM>O2zOH63Z!Xgkvd(~y!JRIta7(B`)t1=plw5642Xt0roO z)wc*c#_!01Z;Ybf0$m72FoE&{ipG^6LnK?fS<*jsP?=dU-y5A*nUI+Ht_x(9t1y!Y zt_z`fMHW*v^DIx-wfcChW5|J+t@QFZOiQ}O!wMTVo5a$CC~buhG$t! z#s#wY{4wKF{7M3WZUjn21mh&CL?mt@dCB9iz+r*7x*%~lt4W*)lR^Tcf{s#$Bxd)9 zAWxDzfnP)7ld!H$?aDzH19`=PQoB23J`dC26YzzHPWcp zXHVbnpqmc(995n&(m)hhmQmsAoFn`x$y2?RZ_myQFwNPS>A62N=KD#Z-o|rdkiP-T zgIQO=*hJ}ZE3Xg8SS5sKsCX!W9gVTckk->>tfrT4!7+ANp&y_b>VTe;5SRe%x_K(m z-R=#Kt3;<~ZYifm{VhGR;;H|i+qEHzbXi|)0*l0Vr1&1_FTeb+`uUr}sbnJR*2yc#@FhV5pJgP!Q@}@?j zwza@ZtX=}}d9Grg($5ey*FyM`PRYHn^Hy0>OZs?>47ZNiZR2OEt5tP z>Dr@IqF$TX{+?ZRP^)zN!SMxeyHPFyT~qGSfTMxRipi{Xrfh3~eU|beh&)|HiAQFb z(txD94qLzUGpBrr3fflTKy=9WD9`_GP(FA?0k1bi7a?^5(9J%X@Ljz%7o5q5^**~1 zI?P=1ToIeEyAF@#2sZW4*LWiNFy(r<#&!C*&2;v@}Z5s<%+7x_M1|;GOqDN1U9AS@@-HNsN*klxu z>q@E;5CkCJi7WnQ=6i373Xl?tQu&eRdJcI^e5|oB?7nrg5;ZuyXV~z02SJcN}s~-EP+OV zyzOoj4!etF6;aw2SlS-G`AlhKw-Gx;^sRzV58@?|{)OiBs^z)Ec5r$DK6T^5Jl#X8 z(lX5>62t`uBhLq?<1NGb1AGfLz=ZGjgfTin%DwZv!8vU-$+(7oYN8$js#DN!rzydAnt zUR{fo`7wkG8U&l9BrrooM3$9c8pwrRsx_Y4>KhGUmw#b>U(?S9@MoE5T65D9UvrfqwHIBmogWRlaRDP*Evi`xj%wtAJ8vH@zR zn5I#`Ag=?z0G7aGQa0?WA$F+w7$oASkJ=r3Z)Xb`%8+iCOgnCrhsx0Tbn$t&m$S7i zy)-D>%*dt6)^$+TeF}mtS7r-mi7d40QtIzY|oz zsBHrVPV8!3K-iaq&l0hckH`_f`2A!<%?U!_XmSG%kRwVk*NO~6SP!RU~~3t$G`Ns$qz2ZknsV zuguSjRP@QhH;RIdH!`|%2^pRlPxr0eh|KTh<#o;ouHKwq>0j^8@2~Q=I)A4NrhyJl z0)eRmJC49Ca|TV^|8m)TE>ZDy)Xh&rSEC=`SoLB@a0-tUb=zsBnm3r2fZYv`(?H-u zQBFI30ymfknrcY6Vn@LCohEFdXg@vHg`m7x-&SZXx_BdG8Nk4$aB=GlO0NPaTxPC+ z&oR|QbNtjBB+gQY0KLi`cnnhCx_QlAd*O{l1rVY+kf?9j{&!QW)cLk&K+4#?~5f%$*Ht!^jPOKeMd$7bqi(g8SW6)o6ua)0}!TsMcg7~Ffz zRV-+~)!z01G)!Z$MDe^}HMdZ}a`8x;ddHJwT92B^UEYDM9ILphcL!l52mzw=V->;I z+UT{<^zEz8>DY^CE(kaRA?E~7ZO6{(owmk~i``bHEm(H-wD#2c;?3K;^LHQQyevY+ zK~f}M>MKl1Ot|Xe)7Vo>r@3({hnps7ZX#fr9oA^Y&4}Mt+iXyHKuj$!;~0K}sB~hFVJt2@I2yLiF;9jz zK-Dpu8pz|T9@3^P_LBRb=DZ8uFIAK87 zvR`<)E@Q_Nq|Em6LMLS5aeUaf2z%xRn3*hi=7Vk=YtM^00J50i)bOT-Z`5e?O^dst z&fJz|{KcrWd)N6gy)~|HedFzFCHP`@>-6GowfbfKNp1`?kdE`W3|(uK9dQ=li+x{v zgp}>2Cnv3qZfq)KK!%MHSEad=7GaSw>)n=`0mkZ+(~es`s2yX49Z=U$0g46i0VEk| zu1y$!H&EA|w0tA0qbE+!)9D}A)7#b>dHdCOn(;SD)E&but;Zre#8u4}*5~O}ac%)} z*)gFcW&={sX+$E{ms*iJQQN)q;X8h-g#7MkY&aTfOf7S?P>k!9l;LV{N^MQ4(IeYV zaOu2S!)1wHq+&d9besY)7e{i2+e=mZ;=Y-%I(=j+W0v`%U2AIFxGRL?6bjHZ1%+Kv z%8*Fv_|OQ)ONYEbIV?3nt1Q#xfz;DB$I@c;+RcP0dSh7{nesd=VK;kyzP{-BSB>vFFD4 zl`v37IYe8WAIl17p51S-@Ci8PVy9SDB!7J90A42kfYB%M)c)30xs19`J1!zoR zh|#rEgYs`f#HP>A#=hUTL>2;DXw9IoC1mKU9H;&PC9;QXfm!(82aVWF=25Zqg9s!V zxXuEaLj$0MI{w^d;q5^SsGD858SUAy8qy>MPX#LMI0~{Xky;IG{CSIKU+ejhtKPil z&XIy?c`>1a(-h?bbQEhx6?8!;KNZN+{fcrAIjz%^(8 z(9+%0&9seJJ^OOhEQ{UTjoqN20$oYxa#gB2uViXlq4GRWJ@rqkz^+rYDh0ld4!i`_ zk!Df?USE9FIo(koPwSZ-!_|Y*) zk7%zcJz^a@Q3oAiGwwJkZA5*62tD00SqOr4>d_YpJ-SB%c ztx2g$mB?l*9)3ga)1w)MrCZ=-(ULRbH=N2__&rmkbLrD0*PY$1HT~dHX}MZiyX25% zwIF%}=v{!vP~s276y!_+pAL#&oTA8MkW)*T^L%7Se7KuSQnmBez_G(3kEob-4iPUn zg+Aly>ge$W6H!~{$1kisiUjooBhyyI?+4dLR(vk>1$&InAqCGoDzK=~pVns9&wa|} zw}9(<8MrKg7Xr{CskO(C((JZLCy$d>!hh>Uy6`-dzRvKfDeK4s1oweOx`)(WMon!5 zaNWQSKsndSEz>wEi3OMd?xU5x9`ubn+%*H6Cyfe~D91}O?Pq>y;?~yY`Rv|&TW+i_ z3wF~y&Ot7LF|aI%BcHG=_^^w;Oi3Lyi8Cl37UBRH+`T-dDj>?Msk9I=2X(p@njD9H z*RfhQPbKh6#+gfBAI-YMEERRg2Yv76)aqMcvhqhNL>4%ig4R^+WSQ$aM7vH{h!2f!njDkB({J=!Cp_rO$_ytO-r@d)RAv*lV;v+9{Movfxq=ov0|S z|7SGUHe04DG}gML0KN=hrbqw@M3)`9(D;xd^!1Vu(`OnodS*q-hg|kXa~z}W zRe#32fA5sePKDWk$E7|{a?tteB6DdDds2nj&q-Vl>gy^+XW^wFP|#FJT|wqXspEn7 zprRnp#SZ9PU+(t)_5SXwFQz7S>e_54NUbmjeFc+|!5w1&RTWf8Gcz2od6~qt*T=XT zJ5@nF(P@bMsxW&I(59X3)ryztbT`+~n#z5rKb@zf6VBh?3qrP{f)neihyn+^OzC^= z-Y^*_Jc3ZPEP1zJY^PUm^x2s~{Ql*-VnqDvi~q6706=Wd&fce=G7W5;v@D#R{Z;<; zck_>lfq(tK3$|op`DJh4$}WpsSfSWzg;P?J7-A_kSErscFW`q=*$?SucV**1K?#yT zDPO>qQ=-GWH%ttCS{3ZM-Ji_L9(K;Vn*~V;{G1xh)XAcVNMuT`p?kxVne)@`rNhp6 zSBRPM0uo0*Dgd|-la#>J6P5DkJmXyvX2$VeGꬎs!6jAo>4X2m!``e3u=~}() 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�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ⅈ?BIh7=7PP_4YCQ<@SP|>p$L48R8NPxR^ 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

*5npMR< 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 diff --git a/wgpu-natives/src/main/resources/libwgpu_native_aarch64.dylib b/wgpu-natives/src/main/resources/libwgpu_native_aarch64.dylib deleted file mode 100644 index 04b8ac1832e3593f3939420d6360b30b733c9f1b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5170312 zcmeFad3+Q_`afPhlcQ(Codc4fxl|HZK;<$5GLwJ=6cG&K@mVtg(Fv%?sffxXK@FfQ zEu*a9E(z$885hMR2+>s%@CdT51{AN|bpk3gi5G@rnq%kteyY1OJ(Ed9-QUaKAM$!N zovyB~dg{6Ad7gTz=Dkzj{I?5Z0>i%;T#2~;XkzRkwwj7qGOl|Kj1?6Xj=Q0d7lr<3 zxjf=?G)n1;Ro@mBEu3}l!eG_#_HIp5-bKAWfd4_y=r;H-iaCN01kZwni)JinD++JV z{(;g?dX!Ryp7rgCYI_(v|EIK9WS@1%-LvMSB)q+fkCpZ=Q`@6weS54Od^6|XwIDd) z@b>EdrL;G8JYk(NdRCj}&*A?S72Q5_X3?yBXU@8NVbQ|k8R6|kU2rM?YpzqcPvbX>`gPbdmC{A9_Tb;& zJ~v2(j@wH|UH%X4>ER;k+@QXqTTxLsT|?nZSK+awDy`77zCB%2{Li3#Q9HV~j?v14 zMJ)?^rZ(vc%GVvmMGKbPIb-e}MRzZpui{PpmTv0zbs7=ztcQ!*`9EFtqM}=i7ZwK# z6gmW->&g`Pu2qZZS>Il;rt%l$-#&j<@vTLRi|3QnhPT(FTxm~K*q70>zPIl-cI~MRspaAAv4<7-R)g`i zfBN>+ZnRgN@9w;F?p<0zczdfQrM*hshn=-Yd{=<0sOahm*IYGj>;y%+poo-qm_@~q z`do2=@=VR^x?o-Ld>O7jVda+jcNZ_T55A*h#yz*+y{PD};)NxPXAQb_2?|h?u}pB} z#qH!))nkqsJfjHmg*n6FhZZkgX=G0 zjINU?djfUz{H!+HcJofLvYNK1;2!{mkLC71^|-jHWz_Fp9iN!}t{(S7=RX_cC3(hFh&r*l2grg84*Ex|AUd%F~gP!$S&O8?Q0yTc}P;XXB-jj-OwA zx4mTMg2-U$YY=ewN8{G_!`MPtD^LAcKUdCObQd%QFxhcW!8&R`dOR@p1xiElFn7l6 znS-o)EVRd;qM>6$@K=HO*^K3=&&2Qa?>zO{HvSrx{U=`Z z+kd}d;5Q8XhJoKO@EZnx!@zGC_zeTUVc<6m{Dy)5-(kRKWbSn4nCdf{`g@InyE&1q zo+u2Fo`=hGbxFx(b4*=UW#GL{NIO`Hd!4c9pdhGsgL1d3

+__i52=o~QSQ6so%d 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

QEBCy^i`-<8?mTlR828XuavaE3`eS6Lmgn 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

V?+Bv%EI-}z{B*~z_OH_Yf&T||e?sVv&KHoc z);-W2z0VY<)Cx__-&gE$X2o~jn7)1Hq&Ge=9+xoQ`}4kx`C#5RQ$~0{nAbl}!#|Vv zix?~U<7zj@1dYi_^lv=r5}x>Z#NOU-oXEGi^sDq&wLVTF7$>!ilZft;ag38xML%z@ zkCQRJ{%UXQc{vVv`ZyWm@2@m}f2IEG{S|Qm{q@xU@;Dh4G)`KcP>Q~0eUXSx(0^Ug zHP+}`SH%0*6=|HWJF~8cWnID1%Aj>c|GeIHh4>GnPla+mo$t2tSidcP3kq3@}HAM}$2@lDd zV%Y#|iU4l1rr0Lyi6djrT8BQteRcXel)SxF1Ft6%r=PtJE$z3ScmjFfbxeJ6*>z8S zVS4!WE#k{*Vg8%#et1JksO`nlOCz^jma1x^KYwx?ckn&>NK@tGtD06nWov3RXE(K| zzsUN-Q%X}?=wn&y*!O8-zo3&bAmfL*q^PUR=BcGli#1})80sywGn>Aj>o|oz_T`i?&++Uq z }KPx8V%!RzQwnJZX_%X;kXJnyD1)?tz_e%JC&(t*Cv*XH!aKxL^M~aE{tk`qGd2K0c?>6SNRm^GQxHH7B8zqbXEBi&s=JILY zyim{aR|*}I!gTw`LHv9V3jbDHVrz$^6E#@kYDe%qxzgs5vwto_;_RCy2%V;L=6zVL z+!>|s@4!D@sW+|2h*lo#ntg9(MwF77^|4}2KdoA&-sGGL_Q&Ts(l1pU0iOEXc0Kl8 zN49ZTcMJV<^P*MOAF%%_Yhj&lv4u1k@a@5mliv%5aa-T^**jtzH-wn<7(MLEA8^qI zp{4f~i$kYp&|XW9UoSS9O}fq}I;>Xa5KZCQ3_qXvr2=DR~_)l!c z1L?wRY#zt$N}ZI?PsT@h0)9fsc{$6tJDyk+J?!6X$#uBl2RZk*m^nn}?VWS&JU>^k z5u2%<9T$$|Lr;NmV10Uii>r84D<@NWlEg2fSi%}sMIfKN|E_u%S`aw zGOL-3M3#IfJ7(7-_OG#H2Ij`V*bR(T(J_8)WDiU1n0Z&6HGh0_+&_PiH@p)cHOE+ojHVr59kkj1io7dY zP8^&O_z|4hhx7TX|9Y6APR>e8`4&UKuRXT$jfaWhXvFsvKMd3NuhMFGTK|-(%>}>D z4iR5#l%ns6+=g8hMojm&U3l&CsXcz zHOn~**~gsY+}Oe$Ve7KoV_45@#BQ*ax%Cz1);&Di!t^~x?+(W0vtb_ZbNqIOd1`>| zeu@7thk1Uwac1VvHqFd*f6AQ=tT9X2k4(R#=jB~h#*Sm%Mvs$uu@ifS_>}#Y`m6Eb zD6jf+mTJyz+7@wjliK=fR>j^&vns0om{nQzr>t!enN1Z{Z)9yVUe)x}lpKfhXkJt2 zpR1-h4^&N49-ZD~czj0Fk@u>m9exM-{TA;JRZZKxCC8DNGq*?lF)LdQbzebKIqQA$ zYJ)>X|NK3;?D}!f%crpC4Ac+P{r#YvIa?6hcn5tjg+7pPHi3*&q& zrfHk;p{CBt*rrqeG&r1xsPipw;NBSLJN$o7{*P#K;&0c9znwEIp1b369j;uX!!t4yT!23c{Tajk{{CKuA1p_jv+l((%hFbh5r-y8H`N<|3D}9A18Ber_8+uwaLA} zVn4nh!tQ+}((auXW$zgumFbxrmFc=FDpSs(xtUAF&LVomv3EHC#hlrH{uMo1d=QjY zMH73|-O#URL<8kr>=>qhbM}yLK z;K_GpVo_D_et#eh9DNNAEXydPHSoP@uF|n0==*|{@&$L34(P#Mz_L|TWaU&;B7@qd z*($2Cgnw*t==xXB^yH6I@DV9rFoSjnzUk(hV)3uSwkTzbDeI2)#gdT#=js4uk+PWKppp8r`o&l&o~=)udkH& zSgF8VOZlIQ4btBSLIa(KLzNXt8A@ghG~=Axnf6@>P1=De^d=^Q=Uu+dCmra|IN*K4 zJE5EGtCs}jNnd}&yXSb9!BgM_z7rdkiTw9?@Akhp2lcD?2TmqW+OOkJ9*3X$_V=|) zhs28x^p%uTDl4*7e0^oTqu}rBUMg$3mTAhc@@ZDq$Yx@QOTS57g5Sq{|7X%&tOF$u zLq0sH;|RS1G!(j-DLXjBXdQHg!H%zZY`&karXacs4Y(WCagsSe_WSk+;U3^uv&@&H zjaFAo&WmqQrce8BQtiO&9Un84j#tl7m(bF5YcKDcml^E8r)|s%2|@J zEyJ&7_&EGO22LM$ZCf2_~7sagv0zILzVEGlvdee!v8>liIv z;+yTT*zs{)Z>qqzc9FupuZ8x*i-=J~SWlopKnJD*M?cI1{j2i9pM&mnmO=roe|qT~&r(@5S<@?7W9X?DoB=roVK z<=s?`-Y#v}Iz@F|zj@`kH&7on3+Tnc%eHy!im%Y;pV5Ss@X|i^C6}XcEaJPkMayOd} z1D{xl)29Dl9ICy~e;wZzVq3l@d&lvO`@m7wfoI;!d9IJ(3En63es6oY9zR3@Pw_pu zhPq_V`cK~Lc0bktVjE#h>v1oZO56+XY$xu;`qjxs?J)Q)W?%UZ;E4~;Z~4x`6I-Ki z{1+Rvhsl$1sN+Cd#@d5={mFlgLnbuvll9U-d%UfFKK{)Qlsd8Lbc3H>_BQnUe*3+m z!$0kZCI2`2|4))V24sQ68J9R-;>&wxe1QM#Mesa))qn4;b*$*@OQ09i`N5_qW-n)Ar6eGT+!nQx|iO%sJ05>s#M= ze>(=M>oI>_4a9bpb(6$o6534(^xLd~+x+g22JSa?l&{TO`?Wb59B%fv`3&rZ1H;~T z4%jL9)JR`f_k(>BoTmrqIe@=<@kPC~DeXs_Zhw14cFjk&>#+tHA3FaG082^ig>`*D zSby)+KfUV$y?^lE(bos`Pkz7eUhnf=-+nEZJ4XEddR4#g{E(mw%VK1TbEnPor#GQBYxF;-oIU56h>`A0>z(u7jW*Ot+`$9>`ekgc z^urckAj_Y;n}TJ8_zATB5%|cL!PFydEb+IoSN0@n!_Wtuw6%jW(uVu}FlD|AhKKKg z-VWiBeU!EP(*czBVaDE*}We>!y#^GDxDkv$YAvc4MF!Szn}mtBrsO8l2~ zSr(+TY=SPq<+CU+`qnY_XGH&!^W}d1>vM&Dgz6yODiVHl_Z9QkazB0b`UcR$ zR`#n;Vqg6$^{u+iSKkfPXY#jE`s&c@zV-{=*N~_B^8$30zJ5~rmHsW@Df(Lb0J_?> z;3;Em{a?MCq%VW@wE+KJ4y}d%#`fdCW9Tgd>0MdC)b$_q!+~r%OVRW7eBG9Gw$10} zK)$Yfot?kXpD$z4uG^}DDC5%^*ZC%iH zE4rBc|491#L1F@6-#m4f2|dh=K4w8Li$Fh%+Mssqm-IW$X zNH+BUsdF<;+~tx!fwci^0r7Du2cMMMnRc zhQ!%uM|@*sCw(&(|0aBSomYsxaAaf6n%t@D(3{rX9iy%N#yg~zxX^{>h+2u!oxmA^ z#6Q{W?Tm;1zOwuKoJaEAffG27l#3iK`NkJhXVg@DNAPF2R|@Z^^tt%dp6xGKrD|hY?;L|S1V0%M z{l`ix@w3EMmB=|q=?7_Z^#J{FzH?#DQu@K`>xWAEyJQvp!2W~Y50}tZbnL$U@Xls; zDs4q3q|;UtbT7d#SYnga&^EEH7N|9wPmWUT$40C6J>aL~2963os!r}E{H{2@EI9gk zWl4s=Km0i6p^u!6*Mjz@1KUc9=#4?@<-tF$GlvGw%%=;4_s!5M8(N8ewKO6w!fcG2ovo^OTZpYZfiqnyvFubgdvq?hBU^@Nr^K0-di7f01$om#zqX=C}h9eXFw5i9}p)(b^q9k@7;eRkq z-cPf6K7g0rdB;~*`+)P^u*N5;%SBm}IkEOwYKXm>deg6-o9SX6OP7A|&o}yfPXCU8 zFH2~H$%s7)xzm3hl{+D2|850vub^Lb{cAqWm#?1Sxm)hE5W4#2?_rG#rM&~- z?aOEWmweiNKH2*hboSFL=Q4NCVGf_oTwchWUVv>S-_9KGi=ip@lJZNn`#JM<3%C_a z%xPP!wnUE?hG#7EvYosiktcG+$sAoq`X(tWu{E9H+HIt-_vh>OMq-QU-}_^W$rVzJ8v-b)-cDL<3<$>*tKDe%NDb1ociCSQC$B%kr{nJI;HzTt}JIpm?d zV_fL8kEdLiznqRkc{nm7v2nCsKe5;;o9oZl{R5a!C;HQ>JjJ#FuLSdx@KP(j>M~wi zkPUekP(BA6wUpmQ`6(ArzLl{q+lDTW3`)YW9FEGAs zYXQo?e+t-8qc$ zHr-|_d)dLd;7@PE&qCmz_U_ilL$O(Vh;v@a#GjP1!QW3RHN}4E=ckeZWpPa7Wza|Z z^BvmV1st!@$o+RF>NkT2_YSU%AfB#4YZ%NN>Ti#GXwS=E5u@(79yiQDTso!E9%FO7 z9->5B)$j<{7{&A9m9cm`N(fa*?PGXIvbC0Fy!RCQ<%sf^5bg5Ezg1U$+ zzpHx5%*^U=?q%6wvsD%j2wLRc3cO5c@(W{kA7c#biyZM6ex2lhl z`=r_PgSUp?$yp$O*;L-i+*Q3KEVFv_jrPjd(RKB?(9+#$tl2F6wBap7UB2|gNZW>G zavx1ftQK*?J7i92=~THJNAATD7_wjFjCobR|Hqk#A5h@_AMhTK_OyFFxC>6l?vOhg zXVd?M@Ie7{4RegqH^-C!dq4P=(zcQ?B~$c7sV`2AKY*RZw=a~7Zx?=Ed)OCJxQnG4 z`kK_`XYC8!OMS90r1No$S!>6~T=-bVy6}_}zA?1RI^Q2xwIAPXqaSp-({GD`W%ZZ4 z)c?djt=}(JA~q-R4ES`~pudcji{be?a6N8}JAj|A&!*zT{d4@y{CNBChYqr-%%m={ zsa(u>5m_X-3O}5Su2=c#`U~hP^(xdmSjJkO#OpIMkB30xv+tbzQXgZ!_#(7?J8Y6znc?xIhM!?U*;pcen z?i|+mA>~7fo9W8K?+%_`%(}Chy>r={amKV}6>lida&qrOG5h@`?CYAy6MpW0FWt%8 zrlW)8ow=XRn%vCP#=V&JeqU?XPBEwCzp@u$aqz{Ng8xadlT}I$c zPPM0wcT}gXNHYh#B$?qv)&-i}!Uu8T&Ylr9?@YDjC^W<3#%nY8jz`Y$g zcKc}6y6g&rwUlql_u5Vs?^REgj8+`Q+wmd1Lb3MWiwoSP=WPpt@1o$lLGayR#`qA% zdNi`0`03bZ8F^I&!jo7|PUw*RoArJvr~uD@qpB)I*Z^Vv7#rRw;(``{OU20st;cK%({J;amM<6nG# zX{wgrwk$K9`K_JrPvv1NF)6#})7PA>JGjD+tHdci#T~#WmRjttmlQ`!?w_)pd9_*X zAHqkk;S+juU%9gly11aBQsMKdTXv&TxAL3(LmuSLNo;4rTYLQXFCSxWD)-Y-bc_c@ zS3)o8uPZ2#O3{k<9(-w03~Oip|LjMK{ipD%tf7TROyh(fnCFK0?rRRfSBV2!NEx}0 ztb%n`%DU0Wsu7Lb@mp}dX{a-eREA1?-A-ay3tstc8JPiEG+>9SPJ#{P@&R(K`-`wT?{c#}XUq&we(DU}{!u~OY(}frGTFOHf1ftPV~XZ( zue%j{KINo8^T&jGIw1GS5P2}J0qpR-@`ccqT=o3u)V7e!qgYMhVEg#a`9@Dt@R_y z=Z0e1blVj^=sm7uD#I8b491=CNjtK|m8xbs#kRC@b(ZT`PLJF@kPj>ucHl)3%I7WM zfAY34`-!Vr2UfA~o~mj;|DnEaUr?>f`31;?Ymp7tAS31@E9N2R=W@?qh%Qr^v;QJ{ z^Y7pzpF$t&X(d7vyHp(SA(bt6Rova@VBnk^hQVETT8aKDp?-(jVS8yqlzNNFCbs8<{US3(K+UMgZAVNJ{}10ztC9L6*9KA@x82( z0{XaH_+g+m3-4#q*P`ov1&*Qoym`isled}Z2Q&R)pQCoB%Siz<(|TM^4jO~+sKmOLxb>q-Z`Who-$AVRCSu&~s?+s`Gw{o@8-eEW4Ov69gVzr4X_|B{%ytr;_zKYQg+ zi@~b>a*}tG{(iJi4#i%l*xM;5a;QBc)Fb<#LaQ43ViJ9^37UMFJ6NArYW#E&o|-K5 zgg*jv-xA@MC4==l@?_1jXpO4NqOE>eRL?hZ--LW4y!Z`sk?{E{e|{@EjE%Icqa=UR z66Dn<-rW*s|Mbc^@Y`(ot`Pn!Kn}1L$n&iQ0&CMQ;K^Mc`q)J#{EZkDzWRUww?W5r2!ZD|DWT3~+(7ycd2Y9-Ao}*}B-@9N$y<8uozBP8Uz%a_41d8@4aw5(TL-^l3 z;CfZjeuCV86W-rVtlw=0o2OOot3ba{LN3wXVeE=Nj@`o}w5lO3eW36h3@+Zh5XN;R zbd7?(gP`+Z#`O@!b;y}I zv3r(A^pz2Vd@|x6Wtg7XJskrBhWBSDuLN>gW59`+*m*H zJIW2{b0Ko02s#DJjcXq}zufo?ITJi~RP+sz8?t7UF<7&h@#^QZ&ZFKUpZvH6zMc<% z&x6nBB0uIJKSFdJA|OBB2Cl@&49JgtoT1SF*ALd(_YGcSe3d zQ-!fB@?$b`$lY~evfef~TDXsEks8^3M3?LAzl`$5T=l&tt_ge=6=kXY z4d-i3krD&YR8|SS?Ce7pGIv@c6^{j5!dBvPtgTp^z+Q0~@m&*^ZC9)!&mN{9;!LdP zh{sWm9bM|Lp{@$*KT7?gcdnz(PR_y0od9;$BkQ8#YJW<7@xVo&|Gbm>l8o_X+j%}t zy@JOc>amipR*6r}{Q%5OpIh0VtEP?8-v55W)+4_8`ghc~iSv|V7i0bI5jy0fYn&e! zQ}=%4^tvch?Gw})MV-XgE3-onbQVVdj@UX~;J(VNd@i)wW3Y7R^ORVac@av{QTkHy z@`UEJ^C?yF#E~a$f-e_L0>{AjsbcqnE&_vluZnctyEs+$fc}!3e7V-j+HE*IvWYg- z0n2MqKHm;pxi4!Gag(<3Uv%zGv`^AD>PVsQwtw;Pq2#Fe+GpX}{p7g}akWCPe9Ftd zw&20K!z1ef>3Ih$lD-o7qu9G;?*2^4zeL*me6I6ytpY!lf81rN^QA|z zevNAkqy1;>70}-Bf4O`2@TjV*f&0u%E;HdGms|kRWD=2ti=u!Ki)Io~0k0rxy;LU9 z_Dw|V4N$xhF0DY&a%>bU?Mo7?&5UBBf`YFt0j#1}4bY<2wkDvG5LAeW34-~4YoBvw z&P*nOXur?r`Toc=Is5Fh_F8MNwf5R;@4Yt9>bv(9pQ;N=_zph3!*?CsUt-sbw;s+X z{HGm!6S_((eF0A|+3(OTLLZuli5cZdN*}tD_oo!U)Qw!vXOD{L!!lyrIp~9@m)7cu zlX6c}@q(pKOy~VX@*Q&yHXuB`2Oi5Ec-iQK_)_q0#~jK8hhm-=Jm(9DPL#sqddbOz zP5^V-tllZ5chhDXu+yn4ej~E2+9o%r!eupWc_=SJ#-yL6j|0R3ls;6}1Z4l9`i6Gy ziq~32AKs!~HoDMp`|hTt=)tVs?$TRmr#m!n#9mB79&V-``My!PSC` z{C1`TF3|yC1fWCaXqn_G5FOYKO!?lX0|9iPwKE;~`2cs>Z|M_D{tGOcqU3*Il>A?4 zJxja}z8CNuOa6OOF6&80{wI;Kzx|q$=s>#WXewb%QO@+rm?g0u55G>weQIW#6dN93)J zH4zWzX_JPJ=i3Q6J%{@?gucU{|9pO8&b}+%eB^~+*8k6`KC_48{szNgv4iIOo8oel?!E5Ai)DFYGk)`5*WzhqEpUyoc^d9zKo! zdlQ{Z!k#(?C9SGEJ!w@{LQ1I<+n$?oXu8#ZpWHy6TlAt1JF&!>vdz88$PX!F zbrCQnt}MS2vuGqoP_fDp^rp%Y0$4xQ{7Li?1zo-qPv#eXhCLWuF(J9 zF(EtQ6MOJ0UrY8$lUo`je-(B?+7i3)I6RZ}NMKC;`r>GL+Jqd{p!diTbKIg#k)uiA zGZDNl0>2BH+g!k29H*Mwlt_HEZjk;P&NH-ak-KVp^S%%D`cglc?^2*6mGzc*MMvrl zzQ9M$G-V4}gVOsKy40j`{;RXD_?b8(;{d4)P7oIVcpKV0%MK6 z1WNC(fd`+!19ui{ue6IC?%@884RwhZtnnwrW3$Hd>snLqny{wO8OL)z&kmjocy{vZ z;};&yghw-kM^{7ZRnR;Q+OLEMQ;8!_A&zX^2`V~v6dRC?d>oQ?T#RX{vLB;w@FmU% zE%*{W=biXnat3I7JZI$0di~6L&r(m|B!jc{uDAK_Dc;4pTTt#ovvhT$=Gf+8Z?BwZ z*!plmi`=UzdE$cD9m!wY&5^WCd?_iD^(_zf@@w#EdAcT$&c5XFJhw2`t|q5fJ@)r1 z_*RMxiC;d;!M&+`TY%l0=G%K*BbPqmASY8MzKYN~ zI*qdviR2z(A7>$Rimmty()L958U!+t3t)eZ%r2oF!NEznv|r9%xMkGcN4!J)^NW#( z`NvkfC*wB_nK!mYWGLOyuc-oj1O_^w@YcZlW$KIX9>51}Vx9QMe3OTtRSw<#=H;{$ ziNA?$5Z_MP^5csvL+;*UuggS{JKA}hwpYVH^5HWl=+3+(jdS0r!R6p-!Q(DkMdQ2u z-DOr=0>6Q81-^xomwFd4}wf zG2(Lvw1K9t?jNRm`EC#I|A#+ms~;e%RZH{aDujy`xe5m}YHDH*TTnDP>|VlP^U2z}VBr+Ul& z%*n{gBxGhHwhljVi!m19!$?fHoy=W`yor3jIm?huUBY+1c&%YN6db6Zw;BDU;z zKN4G3UEmwYS_1n#kPBtYqRM}1%8O~sYE4_VqQJCe)x00YpV+cb{y&zH|JL|7$0j5H ze;xl$I*!bo!1z~fj(_xht{VToWiL50)2_UQa@+XVPG+)@mp@WRWah`nOk>t7w{&!e zsQ6CSzA5pYBF8<;k2201Wua%wqQ*Tblkq19{Z#gLO-(??otfsCCpL8>{)HEPpN74O z9{)ri#g`I$(y6_{wn(h+Z#G$~XWUZuhW4|u`=xy}UB(U>4`dt^Ja%LAC9i&X{38cH zxID{TWlbO7ymIC(e&#H<{8hVK#yuJ9WZc_ij(ajTNzT)9=vfK;#~Isx3q0A+wUn`K zANy6Rfbj~jB+e)PRkpYPDz`&BHlVjQZ=yNIO$5$5+7w>+sH4U!#xTRT>ZW|Fec&zp zvBRrSHYquHQHs0FYESOV5xz$636uN`jajeXT;rO)t0Q~zJCPm!I*wDTwD?EM@Q)6Zk2y2=SBTE))4?A$>ruuV*S*=j>EA`WU{^wq)B_#Qq57 zC(z~+WaAdv6JJ2qke1>PNV`ttXFq<-YU)e^hkvjKVIS+ma(^86;cXMYY1ruQs~+Nc z7~fvb9dT{Ym%-TSBTv$w@R!Q*V{YY+`dir-Jh_l@9T|F;=QaG_2HZku$l*DMd4in7 z-H%VOJYUm$0(VqRZDyL zXYbI)ZDw78FMRGH{G&|Tk$JM!rt;l@MI2Z8HsX`*=ULuMS^Xj(YqG?}h)LA-WzCoM zt;QeWkByO-ji<>=+p>?kheLd#*s+#I-j8~cX83_= z_<{X8_XGbZu`^<>^cj7wH;&O-_pyJk5nn@OOJcr_tV_BF_2Zr$<}{RP=(yz{*2MG= znYWlepaZxcqCYa1iS`e@!1+7xOdqeEUHuz-yTr%4f?u(}mQT0SExw#Xe@)ZWdS*BD z%kuv?qsY6y!NZiri|$P**-`G_*j%2ut+{4bU310SU+(ZueYJVh*&j4lEIrgLx~pkw zuUvAh_*63Qe&a0I(2ynfnmK~+e2`f7BKfrE?7Mg8Z!ljv{i)X$Xt z!hM5--$^W!wHfYSGGZjWyN|M1v8Pz=%AFcko6pl`aZh-Ud@rRxim`+Iu9N;Q!bZMH z+%G5IQ#y)VI0~oDr|T)?$!&3HY@9}oC663xN z;Y^M$6B(5Fy}+#j?)wGOPHOPaz?L(sM@-mN?BBG*{)t2O;->_Egq%-CM`GbFdXf6~ z0^(ySP4&PQyrSD5ev-%$_6OaTbwZird9Wv2$<5mj+bQ!Yd6$9h>o?Pw)7CIfa;K<1 zH&ttOyQa6eIjf!g(fmLIJW%^|9C^Fy8Iu-#+qQN$@TBZ4@RhwzZh?K7I|8;3TVTPi zBjy=`y~u<;-PbAX0VZq*xC$>-+wjY3yN}{k-(Yi3u@5Q1&*9fG_7w{6JK~$0F*$l`3bypH+TDqx@8}Jd<)WKh_~BKZo&`c+h8NIrH;Cca7h8eSI9i&IJ8b`Q4qMYw`SUPShWh-%7X6x_X&^p-2CZ{LV-s zC)If7^O={wR&@h+YKcA!fzR@Ly7`-F{>qpuZ+tiXD&ijNUK*le zCO^XNU6ZJ77rXE}blioVY2|F>5ysWI=%2&IzS3{o)`@I)#~#R@7Y8wxX47^QQQr@3 z);XS7zO3XLo2ZF>>NpRX=$7!ZVkY^_fLFy_|4!_c?AMWU{mizNgW-+TyBeFk3;bnG zCKvqWO!Z1|zb+A5f~=1LXTjTx?GU>D!#fLak#hxK^v{NO2C|^yAhgkgzxMlgWbcj^ zd=%f9y&7u^88bKZdWz{y%!A?;uz*ZQ$rndpvvuZ~mkC35eM zPu3~?BlTkTK8k-LG$%o;jIr{+y`LAD{VY6km~BxOYHMGcoNr1AZiS}zfESA{u}9qd z7dn&C2z}xch|ehYS?ljRBJ-gl;_&vi#jem(3|Ozu^=V*T&!ImH`gcGSjds}07wD*Cxjbk-aLM_O%EZv9?ujKN0A z8e>sG`!)v9hCkD#Z%gD1EcDc6z7^<)zXtAxuU6vLAG#LA-No^SuLHl8 z&!ch^V0Rv8Zcs$KOZsZ-R`X8eq{Y>58+W&>@lKwFFLn5HMt{yzV_km8*B~we{&G%p zEix~*Ou>Zj4T;*ig6|0PjcEqV)pnT3i#twRm-QWCI!rv5nJ`xZE0&x;0?+4G%6ZS! zV4uRal|r}l|6Q9Yv&rfbsmIx9sdvNAZT0Y>?DZa?p2*vo$lKf*M*aQ&W7KyOW4~*m zQ>CZh3cM_}vw}%QJZ;GEjrueX!82=zV9h%s2Y0`9??j;p6+cn+s9<}a3ip2}D# zYw;g(r&I}JUf+!TcJs58@_4;)qUd~znx9?Gcq%65kzPQ`>SIH4|YPsZuX0J<}WJWkh>)1jH93U+A)0Fxx3?a zf8{lSWb7Do1ZBrkm~)PypDdb+UNP)TjmWTh@6LO)JA0R}buBTnIsfssUd0*ixjTHV zvgTd)E8kH$%cG6*_H=WGr$1+StULhO_?P`1{g<(?aQiyO0`eWNlloTOT~6nAsXq_@ zINMe8PdDrE?s@4~x_jLBNR89I&Apttnt85Y;;7=+_D7bbJ=rU>ggtyqx$D&XGwpei zyJB$4W~|XTUnFzofZ+Y9iTCFw-n)MoynlCPCwPOC9q)U=du~C3UUd4kf&RqfBo=z!KbK^gmAXMTtrtNu2}*N*)4tB#2*ckIiz0(Z`4LzW--N!!XQ+FgP_FLEdI zHhE?~xYqxdux$CD^-N@0zD=Qy{K_6Q`4t(Jeto&Xpzoncq9197J&7Tw!-3^rn4sT$ zR@+LyGg05q8Lv5+35qx8PdD(XLUw1v+jJA3tzs+Q3fqc-z~}}(N&I>ElbD;}a)i5t zm_OCZ{7K>$!oPm-p1H?%vF&r<{Q&rwD)T1jH0B^F!9PNcjVV_lV760-$%awInm&kr;GgR z@n7Uu)sz$G*B9S>H+`)C#?Z%&(D{A%bw9X@eEoT5*X-9O+W&9auY+CC$0xrdzaBOD zb?5iw*XyP}-rhxi&G|3#%YVg*%hxsEkzbQcehvPf{2C3eB42~L$giCLBEL>&UU;JR ztJ`qRa- z?~JyUv1o|zfQGhK<}C#-y$m?A2H(WlZF_v+{e{N*Z9Mc?>$gSFBmH8h=QH4lJZwXb z{|Ss(G5=NDSl0{sS~>GW&coR%PKO*%^B2Ucd;hlJrxiUXabMfJ8OFOQtQXFHfwQLc zqa~lwvbg}6vCHO}JWFik0`i*`{jb19KPtohXOE5lxmD~yWUO5H(9h(#?0u1EYYou) z6?*Jz4|aNfZPL^3y-CwRX!1kTPvO1bd9sP8l6f1RkD0uk4R059z*{$VVyozXrrf;~ zrX%fkXR?&JZg-Z=e#b|?_3)Z@A@jLHIah4o$u~=A*Lp8@uWzl9qgr@vt^Kf8WUl?lT9ER$FVkUe;-ku#O{fiOZom-8G;|)^oll&*0p9?rHJLI;mPCO$k0~^5jd#za`K# z5t$M@FSr;s(#YR;_?iONrHwU&oh_oL?aPIS65E%yS*xwK)@q57fJ<6%m<^Y^OgxM@ zNow#;6A!^%{06~Ay5Zs4?dk1>G!miistv(?B(8qieORrZH z8hYK49*M2^>;=Q_ySrb|(ty0##|cZ{zrDz;vplwZj4QC-U(_Lth0GsjUl@|h74{rO z79B5`bXaof=UHUqD*9FY32X0%#`=W6a&jP*IKJ#NDMuz{ZQ@++5f8=jslQe16F!uO zH44Z5o>ijHAAgO_cDnSReT}?scIp2(EV0s)bdlepA>&(%4rBh{WRIOctLV!@58K9$V~qP5`i`O8TaT^I zo9-?h`OW^7e*a=wZ8**^^46Fb8joa}i2 zTJT0k72cPbco+OIcrRo=(;>gX$&PoS;LZ4;@V?Q+d+HB^_kznh!5f_Hc#jmke{SOa z3lr}dKMdX*^E$yBoa}hV3*K{0ydN;}zT=0%yRNf!ba1lc{oYsL{VNmihfTZ}{xEpI zc0nin1}8h-0m1t*6Yu{u@qXlo!FzmXdI?T;yzdpfpEmJ+&cwU&hr#=O<{ur}6L7NQ zeW~F6l8N_UOuS$CVeoFmx9SjYaI)i_E_lCg;{A?^_vRl4?+RiI9pVj6cDxTB0`FbK za@mvhL+{J+`C{WOdr_kI<;3#M|8l6~n1cATBTS#$^4+t|=hLEma>=D5^{tp;viWSy z!MmH!Zu2)3&n3qCTl`r+cbVKcoZp2G{UY|B`<+hxU&G|tsm~oE&n|tG{4R9qQ>5G( zr{6F27RKqf5cl;vZWoD<$^NV&&ZbUc zE}K)BrY|E8{?Ov0vDO`mZuW55=cLSYRSfDqANgRS-Z{*7Kg)0b&dZ!pVppDt?ce3o zNAm97y!P*`Iq=Pswb(JT7;(XikxPjSUIHH@&ajwq!}0RIfV=O6&+L~RFY}A5&DijD z{Kgyi!ONP06%RZ|$wy?otX&`O*7O}m447w_Ft^HlHVS4I?Mpv6=!ahPLv;KwBGzfH zd8G19thJC{Qa*$|mD0``#D&cI7T)eCyt@>W(c<*VycjW=f8TA3&qc;x_J0|BEluKb zp_mLZE3v^+V7H6O*kFI~r4es?86LfUJ$a=kIZ>yQ9TMY-{(bgNXYx0^ulrTm4&N)! zH*2qs^QC@x+cz z*)KPH^ZwObvFkHcr>^qXJIdYv*PQY1H=E06ec9~Ddw56T_9vSwPI|3*!7EJ$oV81K z_)7oKoRRRa=DHpGnjPP)+EF-aZF9x>o0}J0bxhT%neyO{n#`w~Yqo4_E`RZ0bNxxb z-{BbZY;(oHtE&0NH$C}Yv*V1fRh^6> zi+0qFEpPV!c6)Q($48nAH!R+<>5>0y&To3ZxqkV6RmVI>n45zPOlGgx;6w2mIv%tBS?`PefrZ2}H z+){kg*yWxcr6rE^T|*A~cQy`nV2lgmu)V07Hg0u9%(DMT1$K&_>K;w8#U*?3?gXuiy z1tvjvj$;rujqfy#HLsnfItOn{}Mm%%`sRUjy|C)LpEduI~Xifw`Gj*T3ErxZyLJa^6r*x`p@*NoD~)5gpzPSG!-c$%CAZG0oL9o0t3D20cU z+#zq#PAt8b_@jH8kMq*x{=`1d?c-~mD`Pq9G>3?DujI^;#!emTjPBWE(}*e9FHnXkF5ame{=nf?W1GKW?7w8-@QM zdxAxGrQPko{hE5Yti9yPnH9eO$~nDd4r^@=*`sRi2Tq~?BzBJPpw9L^#(v$t#Oki( zw+z@(@%CDYx4X@6!s}@5W3A6$?@r#t{_HT1+tL_NHpSf!$WTx461ln)xwg*vT5<(! zbw)h-lKl2-zno_dul*Whxzs;$P}V=gYrP`B)>^OlE=GnCIk3ei51ox?Oi?y$M22Bk{e$)0*!Vrz zcgFpx`?|9}gDupw!TR~vvQPTx{X6r>Ggpc3Cmrzb)N-^Ok5|i;emr*XM#eZzk7d(~ z`PPn~*y2y<6HhX>rk9ZyK#iUGLqd50BnRdt*yH8Hy(%w&dcP@0P+!Wr=W*9bG z^Qyc6%5M8|^o#gzZ?ad}ydc@Iy+O*Hr}(Hvoo9%DcDdIuZ8NrOy7P**)@AJ~+wC;PvE_i#cD}UvF=>?u$lVA0k-Tbv%`+w zljE+*-vIuj(rX+WQdrO9tc+UE>s#W|C#v<_zUr)zeO=kGk6KXb${NpH=AvR}$5H=F zv759hw%|?l>-`_c9#h>V+>-}irH{xRup_-hllHf#v94{M-;r}WyBI^-$T=vyp3N99 z{Fb?nbuNc-T+JP&z5CA9%H)i?@Y#A_Z=Tzc_p^E5r1%jzXR+w%M&F7~`DsVyw$hG$ z?rY6OX8@<6fE>Dx)Fvqt*bhT%5#RO2_mNx($`*sW@JLfRWm(_nJkeH#yO9gQf_EA4 zilB?TuS0nfy!ccyCl*)a@|x2r!N*{C-7z&XBS8Jhl9l zx8T)uhbP3V@$gEyg`8!#$%IGI zN$$#Mxu9Kd}+Ao$HY71GDRpT}CbVj{w8XU2P2yRIMT(c!VCk3cZS7 z6*jp5e@l;w78k0y5h=`R>-l z+&=DWwdP|pNx|!_yS|dBYzHagO8lr!H)+N+@s;Q9U=$gSZr4=dFEfi))u9vl%7n! ztfP#@GN#=pXqm;A$*l_>7VAD?Ain_{EhD~SBRTqIJau=|wl_ZM2#C#Sxn2vnudiBl@)YJs(6+>td~qXpgcol) zwZ-E~x%kR0#2&_{-#u?;`rY%d%*z=9uW!oIa`1Pz&mnGA4BhuWsp%7Ek{iyvBfNxu zI)c5JcIUC2t7hisTs_n`@7gnc^CU;H#5>3hGEMG`?h9W&hA%DTc<$#)yZB4;$YBT8 z9?F^!c$7GW#8E{5m*SIIv5Io;D3H0D+)>a3kE)z~OP6p*!TVEV-xqQ8)(ZpH{n}zj zza&;A`F^L}*|u^bv^3&3XHSvb=;Z%VJeNBN9PINC&mEPlplfZ+N4{ z?#rt~Ug{>W5C5LgE$DRbIei3|@c3=b7enKl+N)h0+N-Vnk}OR>!v3NL=JM_ieGyGR zNFBkOylx8T3E+I?)yT>s<_{g_8gi&T#_nWzN=#DbBJ+0n0+OR#Z0#Iu(c{2umQuRZD4i9=W|7JiFWO-?^3hb+qWjqS@#qb-@oIQTtm{pVWXZsct?w7-Mw9!3`a#xL{XYVGmU^vr(R zfdY*fCpkKwx{7{D)B@@qcdTadZf418`f2P*ZoTUVNhchn-3{bNog3-&kA! zq2JS16K8Z{%fwc?__g{kJF&mg9qGe<(uaLC^0VP@&ELApli07+i(a*n^S%NZu=i&s z&sKlF@mXYl9#;J+cbcVj+MnV-if^~{fj3tz!+*R+wM9-#`cwM0jlSKAUnDs1j_TV~ z)wkUF%kR^)Ut;#Hot}^3qvR2jc4E=wK#uKwZNRkpIxYAJaHX%yTci3K9=$;ye@$P% z-a%gvIl;cJm3p1%s^tC^d&3=Q;lADx*45eMa}4)&N|W?8b||{9H;^MjSG-|vE_WFH z9^TCBskJVFf1$qSoz>Ual#uQkeVwf00hfgOnwU0y(v`kmN?QT?I>?XWLfOP0)B@^_q9n+v8}IT(WLsCb}YR%U>Y>-0d`t+Upuu8^LA^2Iq>Lsef_6t zC#Kg|(bpdGj!6F0t?;gm^^!xE%N>7=EsHdD-vM_VsJVXP$89Sc67lES+D2Qk0qUzb zqo>>k!xb6V6j?Fyfc6c(YQT_l_Uo+i#~ORM!;k&O+(Cf-n1mkmASOJV+zH*#mCs#0 zg8TXVMf_!@XZGk>`UUslwK*KKX8rQvC*EGL{E3IjqnyqBK<@LK@95D~fIlH;b-LrL z%l9`iUP->(;rt1VUq`|C+k%Ilc+P|&_uI(501`ivHGTQsf-B?ALp{2wy9if1oU@!f zuLh6h3lY5oM)DZn zgzd>GzG=OD8|2$OekYAs)(*xH+Vh}`l1D8^_*U%;^f3AM1w0ep-5P&+>5ASbmG;6< zneOP-^!Zs2KQU|cub+6=q*-{jn>_(?PQc<>aWv0*E57snNlkw{>mj~>*v2#AyQk?% zcqTA}XR05-XE^=3ymzh-?tVldqQwt%Cl#^FR+~RMF!72O^Ya7 z4NgmGN5;cR^c!<+72oX%uk3XeNA7;m!HDc_XxO&-62vr3;B>i6XiL#CwPA94(D zS);YQ+&xDNcsyEbHxph4dGGA}>;9}S&>j9IDY@$&{EYnGmmxE^n)J6hoJ}GxlaamW zphM(N?yuZz@~<2C$+yBkX;<<#|y}-e9|Qg{8$cet7=;mdr!pS56Nn0IRp-bpTUfno5@1@9KM<6RGvcUE2D z-6VJyP`q@pO>n=&F|6fT_?9%>;9H!HZyIs<^knTI`Lw2qJlkUL zD`Y(tU!&GqPhEDUj4RIVjajZ+j@}x_oFVqTPU5eK%^>e}aKS_QEqQUq-H1g``vQ`O zdiP*$Lj!9xB4@>nAriy4%CV_yCBF4O_rE1!hbQ)SZ_DYe=_%OxA&!*N$qS~hPj@BF z+Jk){*NZOs)srZn?ltlWOIxhVPHSLpko;5)_qzCw?PF|O?R2O-?XngyX;8OS+2m@^ zBv-qvcjmx%k3+^SV>}ewCAdmX8Np9{@djkb3oq^PD)1vDX7TT1iDkP7`!?)nZX)d_ z(e9^=;qtA6yRi0T<3rMJ$?5J@+?AB9aD?B|hWM-&59AK9#zEwgho1h>ndj;^YX)>$ z^$V#l>#9(&OPGA3u zQ=2FKuz+q+1*E* z_a4tJu7S*1PM#&YJqSAF41zotfXiW%cEQQjD)$=rS`9kgP4z8p)8u@J_*-&6>k(6i z1m6mBuZiq@1wNM|KL$Q2@GC!H;S#1VwP^;he-A8a=Sk#K-nBxzjFBbyXTpDJ!{TQl z@AI^@rlrZuZK1XC0ne(Fi*pPa!S{WV`w%P`=h$#;wc+UJ{vqM%o|6n1?~#jH_?i=g zuU>c>&Btuv<1Y+8ZiP=uK52U)ZI7Z&!B_5O5xo*UFz)q9QZiD*Twob^Z_P|v)&CYP z$BC|HL!%pAMR!{plEUzu^h1WC!K3&rG>DvU#MduJel~K~+7{pm9}X)T(weaC(`q7Q zBNdy~Blrb2PRRvxcA-afT4X|Kc^_K-hD=86m#FI==pf=v&iHAi6{A0`hJFc zRjfPaj@~+fI~&H|V%;?-a`5)iunn*d+^=(EA+qqUkkYaxd)RwrR{OSIB+3Y8)`{({)dEml@9^@GE6b z<_?}^m1Rg-vML*9m6aG}+19h~Eb62MPqUtD&J2CC-YP4XItH8%Bg)*s_5?RmX5V|m z-Gsr3j5RW^TZBF|@qEieK6TfXi)T0TP|Vmpj2N5f+O3X~N7kIzbCuXfk-_DZuQ`hx zrs&og*qdKte?D@YG|P)`a0a&L*Zj$I1>-F;*jw&%K7;$9@rgD(%&+ym%rmi(qr?vE zhcAMU$jHq+46xX`ZV%R?>~$T~^*DNPuZE*(A@I`q6(2{wdwx)_ zRbK9J%p}&CSQ+u`4*oCCvc}*3o=z>O`4jX9WiRdS z1pV%8_EgNcD7T8(dqb8n$CS=Nx{%SB&DA0qxYe@0?%;alv3+RWHU{6*FaWPfe9 zl(v4*_~ zshz2**h}qV?QDJbd?WUo1^gG8{{q<-9sN1K zbA%VJMB;8~oTctZj_>}&4F@p4JDEKv3CcGS*lzztxl1%{)M(^fzTNmDIU7#@ao{HC z8p8eEjele>$}^5Y3h(PpUQN85_!a-lz41=Yd#<59<6Uy_;~L4?eobKhU$oYUGowD% zFb;+HOi7*S_toUklQ@ptM^MDx{wm_s{#U~1pRZ_S5Bd&s@BBZ_z4Pp${~^xyJu*7> z9&}kFF9s+3-uXz9|rG~4$crsT)Y^Z?06r$_j+XJI%MZsWa!8E z?bi^mPSihdkUeX$-&yPHA}@ZQEotu%MXP#o{UZuBf<)f@+iZ1Q>qHU#hE>>jk zi_h6pK;KI&TzqKx4V^755Is!^4n{^oc^PBK$Qum~_Jb$r31)l0qCL@#3iP4+itu?= zjePl5uE$*D(t`O%>O9R~taym%N)h{+*!Q!-yZm(U=^LyhX86nt&NBBvtq=R_Z+F1Q zY-lgSe#raicu8Ge2YO$F-sc&5|GBh3Uhcn*gYWV1KY@NoM0brnymIgGL~w9B2J6$c zQ}1v)RzK0m+DrrYlGL;AvX%B5euUp6zuY05%6#rC#@ni%7q;O4s5OFyEuy~$PdEGp z+s9o#Ma+F0)A0ufJ5^4P1`qqdq~0QJ20j-Z1Lr~d*8ov zQU+tCR(?nJpsfRnGPPXEaa)9K`jWL3_V-2P$;dFz)AthFK|fpj`~E^d4W{oKfZrKR zxvQadPeI@-U<;jFo!KoD<6B-n%o+-D_Z3#$y^b+k{6rseQO7>RY}$4IWU#tV%A*lq zzTMa2zD;YH|9~^lKwa<+6g}Vw%pIV$&fl%&&iQ#4}yaS?rT zA$@ZJIw5=6%)P|2Ppy2kUUs>;XN~`L{+BsS1~}9M{}P@h?x1Wham}sK`TXJc&(6`x z;8#Tc0gGR+!5`t*0%h}4f_LyN`>O@sA$Y-95pmw%`tBw3J8P`?DbFIGA0lh}z^O57 z19Ni+^f;l*1$}YQ$$b#_CJ+yF=xvFw;9n){}DeCd1k$o`=LLC41lWqyw~I+5RrF5d>X zmYr0!C~f`k!2fqMyXi|@%&GAm8WL9zaO;^c~v`YfkbJ&XO|jZZoQ`~Kt#WK-_;j?^WF)NpHjYvY~qt!?w;TN|Dvc5oNZ z_r|y4V^kN^jnwOA4%PFiw`GXz*)7>o2;R{+$T;a1JdU|;Utr--pQFE$H8wEOY(wBm z8*cG`ADVEiZc+TPB6*iJELY)EF-q;HZTKVdMw<Ed z^TDOn)$66AMfqwkhqSF^ys(?@#;@v-Pxz#&&3dy&Vkh@`f z_*!pbEvh()a|7sIM*bFcm$~HmkhQlP_BsdwaM!sjdsz{61TXD8qYm<>BX8^#ybw9O z0C}8%T#iRR3%EyG?yh@7-CZX>g0yeJya{ws zu*08XL-#V4&3~IURpyCSt_^g0n&QC)1`itWLp`?j*ut-^ePaECOWF7JGGnFDmm~GY zMYD3<^NKmYbznzvrWUB?oyc@O?K`htFm(cY{uS`B^MBs>-k3nuqJFPN*hy#*J9+q1 z>?E-?8GEaqeRyis+kd=+JMGsm8N6(2)pO6@;nuVb^M4-SI{z2^-4x$iuVey0kT!>zcLE{n8-RZ(`Z+~wSU1vFMI;@P7Llf_l<#8vQ2g-XmyV zY~&-@#|rSZVw_ryOCN?zdG3q5(yg7+$33p+NVj(C$Rx+Wv%6(;FSo|6ZjNOGlC=JP zy4~l#a)@KV$fP*O$l~7VeexZiAu^vicJC&2KSJ9USsRaSbL}>@6`RT)Fk%hv;JI#J z>nrHl*eqY5KXX6!-5)GrepZK!`CNIslrO@bFWF1Cl6pdu%$t30Im_n8Yv&w>?p>72 zT5~J$3dsrW_T}fwK4I42m2J~F4<>ib3k>$r?Kl~pjqT>!AU1s&GM=uDy{R64Wy5PJ zll)rmu?JYjV&SiwU&hj0H+nw5QVYyy?dlB5rA>j?M(ja+0rS(X z&VJh(@MFFb-9}FyzlD2qKa+hk{5$^1szsA|au||v6)@X4BJdfwu#j}&=2|QoGb3D&+ zJYUH3MLZ|+oUlgvK=@FHu4iPWl}f)zpJ>F44sbfz&5vEO7`!y@8C#JlQTo5z*Aem5>#c)^-GeB-PbK0H3jV~pv$E=)k4e7RZ= z&h;P@|N6vHR>RmKX9b1NS`YVS^^0o8X>r<`2H?4`aB^mA^SIrMwv2Nuad7YCYvUZr z>>WCjcO$e`X{+3IN{fPt4=ym@0A@M1tK9Xkahg_gUX|-7Ep9hH9yT$DeGNGdmkwS5 z8IPonj8XQxyTkW(0}njwFLA5!sfu;YWNd;)8xGp~kaD{ZXW1?pKh%C1WbpG5n)1tj z17D?2I`Ye|pijh~v;4Ae=?m$TIs7h`J{cd!x=9kgSvSVM?u>yw7z=wcCZ2?E){FBF zaq3K8_NBhSXb=7vah0n64)}wl|12WPChI zd-HAWe8YJuX{X56&isgWPF8%8`HjJszO-|4@Sn8fLl;z^V0)xb%CYB-?4-OV zVcyJuH?md=%pK+I1q$KY(YGbxZ?EKAk!AT-!+wkHYmjzLTK7GXSoRHciVRO=ACdcZ ze9n3Ite?dHIh(raIrHYNe|d%$Xd3DZJTt@*SbK*v@Zv9AfvQaHSk>vCoMZQ1fvjGR z%wC4bqyM$YjS<^Kh#>Rtr( ze|@qp@iwDQs?Hi5c#XlYP89$DfZLI5_;So?8#xEsfV?m#ZuRocTav8HIg)(QXXH++ zIY%GF|IF{Jz3y&GU!3UsdCz~lQpu;Wu32rZYfhu?H}FN`?D8uyv?=EQ!pCg%M0Bp6 z|LGi6NBX7;IWgjG#K3tTZu@?eTfUL~XUV}#;Qi)fM;XRUeOsSroMo&VZ=3^M&b!r& zPxq-cQTCNl&xm~wRNpSq(jH?T-FN#u@uJ zH}j47TI^-WZD1TM0yb-~Q>CBk@PP&HOzKFP%z-T)jpDftyw|JoU1;s6@cl7$4{6#t zibv|5!5@J$g?Dr09lVrw>d>2E$gag-sWXu}Qhqw+Q(jGk<-XSIpN>nGSdO)?Mb-{I zl#3rQg!u1t_8}}l*K+Wq0^AMjMFzbSdg@vH&K%KGKV8n@X5{HlWy#$e?qDVD$XTw$ z4T)t#p=pT6I6F3o?-^rO4E5$QC)KtGsnhr;jXS@QHG!F|V6K>Xo5zGXRv%3HUfK}2 zyQ#mJzZ8MVy0zR>Yr?D^S}{Pud@CB}k4-#hD?F=T&lq69Tpot`8sGE*SBXPedv@9u z#lDYL;n}aB*xu^J8K;EKH&-(5{o$3!bH@^&vf@#~Q+3C#AG}L6{h4Y_f3}7{Xcz{p zUsojP&%%?3z~wUL#qada()Vvn2z>r>d_dkWuW;&3FUAEf;r(a)J;&df@aBu3xb!bx zbOnY|XO{O=eHdlSA5GKu{mE&RRh*(LoDX^Q{VzKLPn!4h8htiK7yc_AwnRlIdJjAtyo8h9%u)g0qx?t3{vC^%>{VC-bXt{%IQZ+T$#D3oD#&kT{8P2e9CKmcp0)!lvIDeU?#V zdeA2BEw49ZhnUEU$;hI0$Fb~RQ2d*6k~+(1#7yGVS;l1+PT40Ja$gsx&N9MBWa?yn zZ!hGu&NyRUAhJOHn)Q)q8SVTt^=pIh5kAz;Y8_?d7MOR_-BxY^Y`xOAe2JxIWSKG- zr#}f_72ULvh|IBOoSfse>E;2KQMWu?S9J0y{5h4n7X5>OFW(t-LJu}S2<&atl{=o% zu>+GQ#hLvRukRn~2&jIEi!*r8Jx*_;FAN^Uo4P8wEZo5YV4MaY=EDQxy~#spN9n7y z3D1Ul6Jpx{f1KPQePAZ%LnGkcZNS|O+&JJi*=+!@bLuTR5<+xzlX}px4|tQkCOqN04kr9DOaTH~GYQ}(|p82%hZv&3s;55CoJ zs{U4!SICQ^r#vBKCxsS~lRv+lScaW9V2vS?ld}z9|cdAz9c> z{l)a})4*xZYgcSuA2M-s$4BxST%`|%#*g`1Au#jJ{)5*;&Vt|cqhWJgAzgo#x*=V! zx8#OUX5?a>I{?@x&gmPwsVYQx{Is_qe#D5PK?nCPW{^ z{!VccXMvAWzX5%BlmA4G-Q|(>1=qFIzra>s!QXDd?-c<*lloQE&!xTxd>Vltzkt0g z^g&WZFZSIzb&>6cXEgSPn7DrBHu%N3W!M6z(GR^m5qM7kclI`h;ex+{>vbu(0p3Tz z&GpFn`V}*;$cpTTE5dL^UKjJ%Jr>*w_yfM};Qs9RaA!cHz&(tO_kgG31N`U|U)`g- z=)0M68P9T>YZ~!-1Ntla zr~2`!aGPO0Fx#yO^GW39XS8X_%tZL=-gLStGvr*b$(ZDl8H^09x7Al|edRIh_l~H) z8D5=C{b!@=4^J{>xKBj=O6s3P{c>AVWVy_Ok8GdAf-t;4_wF%mkordN$A0+8#fX_SNv;R!|<1z7pkR2S|O&>0G z7-yQY;sT$KbOmP7mNnj7!v6}t-rWrTG0uqHRJNV5=F>5bznm`9r}zr4qL+fNTkHoup6E=FdP-*k-P-BQGTtdZ>ESlRI%Bq55^i_1*=`(s z`ik*G$o`qeRhm)$XR}@WOPL!g-i;8S#IOz0p7@px z>k`X8koKU@vOAtZ2CY_mLW{IFQS|usEK{!1bk!bnABD$1x*7I!MV4yMz$wk(Z+Vzb z=`*>5+1{Sr&UpkUyS+bV(!qFW!0czhEEyD{MPU9E9K~<*Aoq%nDMp_q(T8q$i7u>| z#r)9Hh2_*&a$cV$y0F5o3#w1IGj~M(Rh>;)`mNL-LA_p?@w%e-`7Hf&d?0K{?M!gn zj}Cy}ir35g=?BmO_+7jAwC?&BHeC>#B6yCVkBOxu3!kIoQ_*w(55^D5N zoMZP+Ax?Nj0DnqM6?d^#F zX2pkch!06_JvC4Cc2~Le)cCR~HI!TLR`80BEvYyN@oVy6VmIU4?{7@Lg!N|DW<;j0V(i(;T1`<>-_jKD zzY_a&XTf0ou}aP($Ql~;WDRXMamh8$NE|ygxUNz==pc44@0`yX^ZG-Vk0)kJyW@>@ zu0;IU23KOx!(Q1ONB)kRz%7q_qWH2;*m(fIswZE2j^Wo97mv04+CRb%)z8-sHRPdg zh&jJA?A{FeBnMeA>k;oA9J8MIB@%C~0^Xhjn*IrKChXLTr23(HRhG7$@p?s0A^R%A zwyM@WXqX-cj~8d0C$?(E>wcTv1Kvx>p{$*SaJ=e_m~C%H)^?+(_E?(47(b|sQ?bTd z2W!YfWE{zgHSUYkMulR9=<1Lj%zKC#b_1_j73YWMncZna=9x{surH1ry*uxhd(XG# znbor%J>Mv+I8R?g-OprR2Mx^CYrQ4eDyBq?p>}3XwkcQVsd*+kP`!8J`AW8&d?&uj z?~pB_TktSrpVi)B=Nr5#9~UwI{)3`B9DfqJAN>!pRpimi`4x(r5i<+kX3X!0%@zQ@59rr*OVZk*A-ZF8UK0 ztGD_mY){9;wx=V~LNa6VSjqf-hCP)rUif?Yi;?9r`N;9v&OFR^einWj$rC@t@p>#_SPK~ zTYEWu6{_=x_H_!VbD_P?{`Pe?(~sv-N8&hH2Q^*ApGDuX#rs%84q}g$e}_Frmja5n zr^T|x#8hc-FEn3?T*x?pjH~#NvLE%sLhy|EtqJSqVKRo+&MfI~+Vx?EjaWNO^`F2L zJNF52x4)2BCh^M<&2JAgWZpkKWal#RV?5zH2fXAQRQ=2O6)P_71ZJV?U)z}Miaht6 zO#fNq@$Jwfq?~g~(dC<@yl4CJ|D#;s_6>?` zhx0lb@u;xuT5>4zOJ7t=tkoD7$A#oqWIm?@`8DR(Y3!Tv<>s^3Ozc)B^@od&*v0{+ zv+zLtgnhiv8*TUr(!R1?kG8j6fehOigl{xT`r$OA>?z*KxIWaIq;&r+U|O*{B~y1N z7;<35T<~pG?4x$?3L^%%nfiYhc-aO#X)6e9C7Zx(V&3=+vidgl_Mgex5;8SQS8+cD zOJcV&ZmG7a5)A*chB*r|ZP;+}Ck&tMW9luHw!-w(de_Dqa+JZiMmtvBcdqKyXCX6@cr z6GJrol=@k1(hv86hXr43jpgf3_GnWsKE?OQ z^eNiy`v#XjA$pHaRnL0!oOU_J?PIHHmukHkD)zo&=GOCt2eq>P{)ugTmH5bD)pmG{ zh3*yJ{f2*=$$K~Ss!RSY?+OWm2!sD#K5fdIgkyXq7!4{&tsD_L@<)nR?r;vZLX8 zZ(C*Ak_*~^_l8w=g;|D-Y_`fCH_9?8`?FQ{FQaTBW$Uf7VY2RE(D9;G_G6>05?r3M z%9e-A0+iXu1L=Ruj|_hd;kB6&uS*080BSfF8_Z}S{!tpiW^pBEDYuqDNkelPtwhuuz4V&0sFJS*hp*fb_ z3*MFt+vU=f-xae?8PiUFbBJSw#?u<7jHk7W%ky-xi@G^bEtgV5$zqYzH@}e?-|gai?3rpTPgFqkZx&N29D^|9#f|l@{OFkihzAI z25kDfF}hy1D@3yePvqhw>cy0S68hh7mw{75G9Y$T`Lpbs5Lqx}Bx-J0bGp7r*3iRq zL+pc^8&>Z%=Z4~=iG5mG9ciDU=N4vPZ`j8^pdri;t@TJ1w{e^kYYeXTzCXf{!$Tts z`&>83kU_VcJ2uAPKhXAQ+E#OG{8-cHtoHt4gz)OX;!x}ZyA7}YrsOs3Ps&^<;rB*N z;j3KcM2p({aLiXWOlI$;>|bK<=(Gq~v&mCpC-P+Vm&nYs?d@r`_v4d7G+FZW!k-e8 zccafTFV%kO3&gz`zSqDuzp0(PAQUrWexDYa-&FE_Ot}!5sIkd~_x~N+&?ibJto2#^ z(iM}>8`CasW#@gw-1eYad#;}Oev%;vc(^5Uo@~jowWqCK_O#h$@9_*nZdr>r{0diSuf}fh z6uUVUT%*^>l`aqq5&uf|mDv2NYVUz`17^Pr6QU{&yS)fJidft#;Z5kU;tP9f z#ExvHo%g6~=SPH&_d3Jig~ZiOJ1+cwC5jgc=GZd~{DHX{n0Ebbl(}1!EUCQsaUp)y zb`Zl}VaBj)Wly8QFBQXH5go&Beok~C-2d65$VsYYj49Hx$2|I4V)Ab{B_?m=&t5+A zuZhX^lqGJCEFVt!hm<=g7djl+Q?LIF{a7$DIXd6D)k+PTo7Z#|p6x6XcJ zSc`go2K?T~yW$7-ZJo}3>w5OK*Hp4Mn6o3Y_cn)o_YLG&DB@gFfL~&W%hD&22cCLD z%c0BjiH~nlXLw`}D*NK6x_rN#I{wZ--Z6Y6xj-2Iq}*Qj-BIpj**6{wF8gw)N&VMH z$)48a;G6>X|L3#+-=+^@t0cZBbNwSu6 zIo#V)Iaen0g>{_mlRP}D$!DAaZB^<#&0LlL)61HGah@S1_~4mF4&EZ(SFtzO4=n4< z-Ax~GFBSKms5ZD)rd=DH-9C{veqpu2-80#&VfcY%-F6ht3V%<5zmofS9k?BKdA6m&580zE&vNEGgB%nFFN_@M`8Hlm08hzJ zF_8Xg1eWw^v9uS1H(9hN_mfqqI|q`3ZG5BJT^Q9a&(dxk=X^S9_jI$}Z+)Ca<1bp? zrLP5-N4d-AQTSH~{n(YY<eqrt2ImJvZ{#eG$97(^oHhh5dnDD}5H-+lwfRM+(I$LVvLtQ3|GxB1 zO7JD>Mbjp-pFW&^L2rf5^c?nWBd>RI#%s3iY&mC9*0EQ=TB}Xh=h4UY)Gcvpt#W=X zeGtA9I7QPk8(E$cm1Dz#QDnlf&gZ1^d?$DNR6y4z_Muz#ZZzwa(^j~+GX}cprXt&dA$KgB^me6b9VB{Zf%y%b$XZwKcoQUquKO<}( zl`C$RuA_Mq;uDRhg>$C@l*0BdCz3M^&I9}oOdv6>kOsSy4IS#OCfb;co=~U-;{&@BTf!I=T= z*j877Ya#g6cVMd@RQR>C)honSe}4Xn+v=;p*|OD(%{J|}`W8i7O7P+?($=#R+HN`y zZC7+c+sj>`?Nl3Wm&Ty&9Fw->F4Feip^p1)0-wACcU7&3*x?%NOY7E-ib{S*r zzp2+1nJn*wwxb!H%jE7|G5rT6lasnYTeXe0kIXjhGP%{H?ddMkR@@0~e?1Ou&vZgt zpDxfg&qiBS4BB*)wp+VM+u5Da_V96No81X*AD(yOwxqyD+wC!EyUwI-Y!_+!=F5)t z?V97zc3vm6{hr0um%Xv;VbZ3&&wc1ss%`#bV$*%DU_+V=m$ zuqAI%uPe6Xp-yOPOz+&5y!(%iZOJ)ZpzZfI+TJ$XwA+$(CT+jzB5hZ9LfZ?+q3!Wb zXlomH;`;V;8*PuqpzQ&Zwi~)gTY4w7-FqC`3Ok`~YZquc(?;8kF=)HUq-{_aX=`Zi z*p^H<4sAm^p-t}sZ7s;JrEh~{(ALYO?Q`mNMc0x}R2j=Hv|aIgc=6O>@sMVohU+XQh~Pu3ed$u5zfDbFQswzA`5& zo|PKR#5a;VrQ|;KD)FU(W!>NP61aR#EbegT8-Z-*-xALn8`Xy7VM!TH28LSMF}|L~hn} zd*0NR>G|Z1_-oahDUuVLyi~+;xzl2H*XWtzIT&wt5Gt zC$dzTf-KE2>Q85`toTWOmAO-Wt+Fpi>7OfY8#$gryhk4o){(c|;JtC@qMi47CQVzR zN$QXXd95FKmK=%pgkg{O5*s=`G%EFyB>?Tf={0_}v!Xyn%&pX)hSoPaeI`^OE?`&_+>(aCX5+C^V+!OaPE`=^@th&!^ z)9ye0Oz|TnIG%c4p)H{k+GZSwwuzn4_NOk;mTIHzf*7=&Vba#Ui?qFapyPfUdK}t% zcS76UU7+nFWXIZ%s4~L zSdB3$K21M2-Imw+6~p$|h;1?By8ooj*}KfV&g3AziZz?LJARn_$OG|*>h~tzD*IfP za2Nbir@PeqGwpe?8^z$1jUT{Sg6(3Ho)x@5HSzx3#C!J-gZJv}PVfdNJKhg~_uPU6 zz3B971O2_6pTWO5+2PrCO@Hmc*9G15L+r09dufO+>x2DSYrGy`M{L=9$i#eXs2`t4 z?y5LKuAR|~rnl77mz&J{BnP4svgT6H8pJ`dtFN;L$6A!?Z{p*^w^;Y;9liDSsvqwV z+tl&h;H|)&vpHVjvVfd{RkXW=97`g1vTs42CyM?5OIWtXL+jb-hkPshuH?73`71Ii z{c7cbUU6zT4|GusIUNBk|H1_Q)&y+4Gg1E{scq$)Oxb&z63icE;8TU{&W5+@j1u^4 z6}$gd*zTtTqbKa{fwiI^r6z?JM}c4!%oHRN-Ggc+b6^+huIN8{Q9qkE!Ha z5`KHRM@!n3F;Vz^$mDeu?UnG}@-tnuC;1)gY3o4liR(0LcC3?i+!rH~41F(p`kF4u z(1j-;Loy~t$dJ7+Od0yyc1KwuvL!jwBtQRY{d`AC=u6?XtR?=H_x{QR{ntGN&)#}b zL4mP8eSSe`eOlIhJ6;1f)_vjgG{at|1XGx|DF5}`0ySq)GHvFv4M=;Lee`thMfdOS zgZ~MYE&i_PgmsU1*yle z1)U@KJ5%V5T2GB$OIm;&8GYV2c)`ixwV{vjkCyb0hEFCor!#!wx`0n>t%1*bUBu_ufG~e1ABR76wI|M>f0+2Z*hPFku;FtV zGSnG=UhM)t&zt!Cx{LU%v*B}aMCbTC-UWOfGVxLR+XZ>nZTRFJM}B5^0iR+MpNqQ4 zpIdDBG#m$?E4qNs1tvaOUBqXS4WGx3BR|8sfRES2r)_N4?9U(@J_E;eEg={$cyGmb*bZ)AyP#;Iq!e=Qmx%XM+u& zw~iw}zv}`%x{1%NUBrjH!=b$m>yKl9?(PCUx0v``3_h{;$;dvmzT7W6k@%_XXOS4{ zXy#5KpNl<*y9&s&j-MhiRKGK|ROXYGui`NMuHw@TpKD2iu_sXGjIy`Mm`6nJA)2W0 zk1R9x6&ZWeWM7fMsbc)L!#P*ck`n9(EwZoZYxV=m9+*`2sf6NK;3{z}Efhm+AICZ$ zT*aqK9n&=(A7<;Lb!T=i!zXp2kK)We+TBHb+%|m9`G1J}^7tr<^zZJO96bql4j>@8 zI1*412uC!?Bpim|v0~P1RVG2#1Uwcw6g)@*Y9NTTMp$uOlDI$3j0RB?WxPm0F^EUN zdtEgFk4b_D;hN#f`+cgbr+X$nNd(`If6S++tE->qsi&TL>ZzxmdK&gfH+7jis6>T{i z86E~&NrrEkV9XQRgCTpF#t@4E=IgP1;9pdcVb2RN-pMbF7&12Atr+hGG~NLx6Y-zw zm~X<^BD?!G(7@KS{rH#%4ziVv#{8^q@GB2+*qGPBnaue$i1TX|=$Qat$T73j!FR2W z`C>+^GVZl?VYI`_`**4}x_>FRWgm#jQoej?p zah~lS|NG?ZW6={&{z0ZPy29rqkX4y`|HXrnooXrH!e((6a^bh2l6aLWd%G&v7$hSDox6^3r*^bXgKriv_ z1kRdu@Mrc>?52G9D8pd$NMcxtI34>uV%TmWUfH`kwHs%)R9`06MCx9g>c2d)+t;oS zqyr+$toHsat|Zby>!ULGPNU02S&AT^Y_t+r!hNz9`u5NLmZwx(?terBX!M@-0C}VfV3fV43_3(kAfUpN`i#9TJ^I zf~`n4It(3yhQu>Y@~DR|^uWevq_W}V;oUkrYPL+UZjt%sAt z{m;)b7!<=1>9`-?d@5Gjqr@t4-*brWq3Jo zzOG+>(O?WC7^d_N@?kSc48~{%gW^yk9XIkdKck~px_4h8l3*kl!LTqG6l1a|gK~*R zI!5z#F@tfw2E$A+GK^q^F&I4=j4%e{0)5|JuEA(~A24!_V1zRmCnJdt`d&_?V*&PM zi%ooec!vg~iC`2N!RWzYv@#ey7>oz?{jyer(LgXNj9~O+F#gM6P@d07#~%H7*{s3X zMliM;!RW|!wJynUo2T2IGE8jQ^ZW1kU>-VDZ827_`Z;A|+qIqv1hFB*)e35F@d zKtB2~7|$^neHe_&^As2^w(q3vYpJ?=_4~fMT7M>~KAQHbw0D*RFVS@)^qIb1W)$k_ z=v$0>|A)OreH~W>>gf1z8|qNLDSe&deyFoqYv)|ldDO2CavfCL)@pUGN1c^^b?SSg z&K+8vD^X{uUmbj-uiAFGRwom6?(nN4^+cWXwK`K!XRcqJ%5c=_rPY~$I@kKu$qYjs z-S|EabuRO(!1)#-;ilvh^|r=HF= z-=Wp9piaDBojk-w*e=)V2&hAG5_&ii{5350mCq-~c8M%+iM|fgDZMl}zo3rIB+Ajp zDGtIUuk_H>Ebn0VLGpjtJ#rnNpmO9+XZNA<)$A(C->`ZXc_h1r$(OQgxE#Ws_mKbT zruTZvud@4I^8eUg*WspdNTEO-nzC?iY|3+nK zLmib3QOZ=kmW_T?|I^w)^*d5Oi$@+{Hrg!S*D5Ym2B!1!&ejx>D-pBB&wXbjwx%5O z7U-xE`1$c>w2k6W%1v~hI?}NL_ls6rJw|oE^{cyv>aI1e`-xxOLfljS1UAmV3)TLN z1aJIfd&w^CMdcUs`Wae%3FZ0Ate%-@OA_`;l0{wY+7hy}wb->&^?)&(!?;@G=P@e3 ziI?YUY(QmZg$-gl0+H5_CFTgIW zp>Z)5`38Pm#$x9lrM6}9{<&Q1`&Cr_cMco<7HHkKoa&*!nXFxp_jwHFQj{;c`U?9I z(6%1FdV~b;WwG<%H=X^aJ-WK0IqoS!e->+H#r_<{VQbO>?%!#tRE_(7t-KHwkM(7JJ0?&1k&O`~=S$w{-;JeVOBZRl^&P zavS2gB22KA5tl}E?&fP4qTlvktT*rtaateKoDzllw9k3P>Glmd`{?_T6z3M%Du71% zzAnYQQJ*kf`lHeh65h%A1>X-vJ&K2eE<+5T@0>#V(AK8vS>I>w_e3Atz=*D2-&5#H z23?~thQ1!HjG_K~y!y-Qe$+RT*Kbg6t1!uX$VR|eE*CMTbFo$ge{2cC@&$ASzurUn zV#Y6gFCF}IAY^SToEMsw^%B%dRRN5Acj6)mmg zOJeOiUmLq)QD-4^?kngY|2}Qxc#QJClw2Sg_8H}&ratP;uarAyG1@C4hXmqoz4Ee) z!_I^}N$KG-p1}@5U6k9tbcUR*8pf+UaY{8OlgpU>SLc^Fp=7QgFX$ct;tz z&#&G{+!JlAPeGe%TfIdzM{}BEP;M~hsu|54$DB{Ufd>D6`x~dhzu!VNT51S4>;S}Y zM>>{~?$Xh=p3_Eik4;D0I+RoWJ5c|A^p!skVIMo`Tk-K`d{-Ot6_K58r#w(gFrTw| zE?1dX8zBocmlyK6jpp#BfbE7(RpV?ZpN%qytFbm3AMP;Vi;)e)Xz==nBeZoD{KEx3 zwRKf7`Un2mYRxaJ;`E)L{=)G3meG7>T``{4~bTC`SzVnGAj! zwSk>E{nXmgMycr9Mi~nD%r4^i{q3T`c-|fVcfSDb4oI(;=Q^K!T#)>94~^$}Dos&p zKPz_Av3I*i)6ef3+weYpkwE_5XvcEkRr`YQR{HtmUkC3cKRQ0+bol$^KSnv}z$(1+ z=6S|_#^jFo8Oi?dv1MNaeCo4e&`C0>^_j6uJ|BP&{$o>>qcgQTWzfa!PPO0sZ0uDk zzd*Bo4?}M=6fjz~aZF>Uv$NLfdYkDc&+<<)peODGo<;qvp2NY&CkWlNu$R^I8T=1N zVIR~!WIah|r|=bxUXt+lf5+5`j~(k>^w@xmg4rHC?}7O)(_H&ssc-FnUA;4ROSepV z3Tul!GjYb{LNR8w5HIaX`?P%n!5EKrypA(P1XG2VYVKbGm~A%L=D(niB*3*~6znY? zEb$J3kxstTy|Lc*j`3Lc=NFF&NR7=A7Qi0Lj?Krq z5pz-O?Z~?qinVW;GC!r`|Dw;+?Vmx0XsxNAo8pj9&3|s%3p$Cfi-wS`U$7VJ>9$Q+ zPv3^VrtjFRW%Qin0N+~OGX=Rihd!Bke5EP#_=lh&5A!SZPPHveu>nXv-lX`IONPzy4KY)3mYme~f3^J;@jOsPyNR(lHNHx$3j} zC*Cpgp>?|UL%V4HUIlu|x2CTB$j;aM&QyP!T6RBhSDwB3JQ)QIzLv@Yt+VXL;?ThQwZ z(JsBct=0|Vb&c%p7eR|&-w|(V3=^!YFdoZ!n^af_frr|p;Eix>!aa?RXk3S#Ydp7b z8Q1Jdt{0O@mcV}|V~{D4mnTv=^du{Xe3DH?vUd)ZkA?k>K3EL9JQ;oHlb03aLe0Bq zg`8J{_B_~YYVJKXKAPsjJNxk1g^?T&;Hh}bgl7UTzfdVJ0|ekc_@p&yK!zh$m)q*UKCa;HmU|O?cks<=eIL%!j(_jj;r~*N^ZSV7 z0X!A|8-(Y-y!>0OyoSo#IR0PG4*w7E4Y2mNa6Evg;(v$I-Yf{ z2F)z~Z={yv*n;(H9(aiFEmqrfJZ#x6mc9wvD5fb8J}W^g$%> z>15_3;QRMk;(G(WFT(e{KfVyiLLcDMjggmuuiz~4z0^;^_ozQU=mb{};M3`Z^}v^V zmiX#4dpZkeiZ^grzu!|{xE#e`-0`(bln~zAE9eSsQkzgT#+;8V!Gy9 zblDj&}0&V;j@ zJ12oROm~BJh9B@$-T49V*fK<%wfFT2-5jdv$$ZjT2JgPb-@Oj|+0=(mg72N_FEuZF zpg!!y`*1_DRJtBNBR;bAq}Mm2^M@hMV6x6PQ*7e?FmIfJvF~9G>pS1Jlg;bngW)j) z!*o6vf?rSmFhBVBfG1>6UJYK{f;RZb;S0!lZ4nmuuPc~6T#)X}#J4k-7l}^VCm8z~ z##50XUqDyHiKw!6?q`bMo7Q{83#v1M*BOQ@^}|Hqo&ns7+|xcxKHG=M!FpyJ&IbLn zN8sGtQIJt}uN7+-tbaQ4hOI@uwAzn~LiGmBh4_2~+vhyCkI##+wVT*J=K$|MXCwGU zYpe^vA6id;2HsU-KUVA+<=t;g#xwu%M|O51%9VU(zOw*c`xA*20&tPy?n3tbS-Gbm|!@d8#>@XzraT5 z5{HTFV4pn*9!K;8;W%Hxk&kr=<@}Du_jvudS}KfS-afNwNZEOa8 zQ}8{oc<3Vv{S>v8hK<>7lE7PhCY=u+}0`1?t)*7T{Pjz7}p`nuWBzl--;?L;%t zCx}x%FN96dbh5p=2>Oc3e%wa7&=+Un$@c66kT-Sx5+AI@fhAa!cfK-uhwFTzVFLP+ z#?Xu4#oHsgk;mv}t}o_6mbovcmT=s~%a@>>`(j?F^3~j4dB{K?CTRN5*B7&h%}pAw zq8vRyC$m?II3B=L@stss$9VaAjjoL-UtD4JM8Qs8;=uPz{%!TFHw)Fr(B4KrpZXy9 z)ZOr@4}|agIG&$?kB;i7KJx3$14>Yb`N;G1zV`gor^vs4^GAp^fWLi^IA}GEAM&*~ zVGOCh^h)^B?UeHjzI3d4a86h8r7r-DHpB&-z?k$I!<>it)Hcj1c{Fbs%_+ZwhfhN9 zF&;u6(YRpxh~v3}@IVK$@{t;EXHq%l0)`*Dx5J$FJMgEd{(=b{59xA_e>CBl!OOF> z@?i7{DJaHS+>!EcoCQAOd)7WVJHG+0D`;K;T%UP`<5B08 zK=$@-__PSm8+ts^n7?RljM4bD19--r1)iha{wU{ouBJK6U~Jog$5s?1Pe+VmR44f2 zy6}UXL|!#&*Ml4%jkzHhb2jkhN}3lFMEPIrYLZ{(^W!}9*HYBK2fsk`gakRFIRXCr zY=WiN>0uL0kyLhcys322M^>ESC!HM0bbC&S@~x5FFr`fY-feG_%=zwdG(%U@+(i1l z2{>s@MLIqVJaO@7k)K)Zl{y^dz=3r|bp^+9HIu^#M+(~I|Lh7pyBO{4Y~L~x@xj&5 zrHip1X1OGR>lo%-e_c8dx|H&JP!2fQRC@-B16R|2WDRtf$4{?*ZZhqm`b*(2OX7M} zS{i$m)bqZ_YM~>gHDtRgxdFx^#Dq^G;}Ezk{p%;<)_&*)D0bLjpSIw2sxL6e^Dw}@`&B}O;q4Mz9aKZowj&gceB zdb%Gax-tJSx-aK+XZ$&I7h#?Z$Zyc3r#pw}zM9jGd6Mya_Mby{VN@q{gC;%Q9`X_YzL`1Dx)={v5g+`*uP%XwuXD#hak}Ax`&NPIu9t zL-#wd3*Bj{qmnfcQf|T1JVte^mNA(-8(tmA91?3|2cG*V~;N&-JnTN_rW(n z_veVU4uM_uEvI|$pF_75K6@j&ZSZUO=jb;2j>OwE0}-(6z`cUrFUSOMgGr!#d;kBXl1uU-}!}2g|GJinEqG2yRh`{4Cxh8-DIksr0Ty z_|vV($xyeA&xz7Wf?wY`K)Xz zD^vabKmz_ zEj_hM=NBpCevwh2(Pw{&`@ogd@48kYn=NhSGl08jN}d_#DyhF^gDH`G{3+A|5{$7p!HYaa*mkpo{n zWJHgz4)_LQ9GrSF#08afKGj<1RZd!rHWsKzj3eTp+uk*#q-LiRn;_?|5C!N-cx zt#lsGBBt-1GKS(FFFB5U{MiG;t)78c%SxeEPYiO~5zW^>Bgm=9;U5QGnU383`ty8N zz@qWG1hmrL0KqQC7#8rpey{lsJpUHY3tQ-nr|Jvus84T3f03R!ld=C-;8={Y&wQd7 z_lq#@|9|;JV=;ct#3y<#X!IHT+($SZ<%<$#_~b$i^o=U=C;R3?T+DpRYA(cNbqqn5 z*2(tb*m<88qH5as&)WpzJ;=?Tn1L=)+PPe6~) z{vt2`kjkM`T{PCv4z<2I_q^*QU7_V-_s1pT8)Euc+&YR8MtkZB9`Nhs{bj-h`D3&} zCe;|>7f?=T*U5LKo?U;A>JI00fj+gaO3Nlcx@?#mXv{rH?*V_($@ZEbFt!5jRdte6 z_wyna6YiT+m-fU(CB94DrzqupQ;c>dkxa3(+Uhv=-KSp2==Ck5G2M)QBsofk91$Gi zjULV|Xb<)ERP;6Z0P`uoW}#nxP0&m8tiWYS^`E6fmy!RB_Q~==E9s(i$cu?8qu6tfHW&iwvAZOs$DY+E(DrR`F*lg_%ef~J1Zb3Jdirfx>O!pG-WAN%e~VZkpW z9^JSN_aFTH!TW1)#fffpq&9B@ zUj4h90pla!K>30-;@XWp^E%d{XN|`+9B+c(FHW~^J)pL$uds*OvES34y?L1R9+j?N z%)K3VdfIC~MEy$z!9#L^*y?q{J880rexmyx$Hd6u1XJYILrswaz6Df=i7dWstW3`w z@g_Du)c*F*y#?28Zfm@_p{?=UpWD(GmF&&A`I)x5E5B{aDgLpI>ek+~VQ*PWb(`(L z*KM{r?lv*4aBuwMo7>XA+}+mnpZ%dqEx!KAz2&3cXe&Rl ztF3O#5v9(yC-xTPR<;TDZ`y46?zZ#`SMSX^xw$R=z^83Z)yG+#xHlfzTQ;$*&6@qc zwz!!`+Qg_;d(*RCZxg?&Z;Su!2L(>mzxN80E81!u-?lXhjcsC8@!s^{=i2IisBbI( zfeJ;(t`eq;M(iv+@oB}r(@OJ^`sCct% z2h5SE)BK`fZ!z=!DjO#62kyC*z2%*#w=*tS{t5R#y+HY)BsPx^#XHH5Q2!}(lf3Ku zUzMYoT#j&FAzLRC>*BvODYQZ+=zNOLv+wz{IMLgmxxlvt?a<2$DU+L#M?N9|0FARyu;uLl)p-H5WN4WWrLNn1k~H4mRYrW8&RfjyH8uL?WOQ? zO)rI)Wij#(d<+ndcknA;W6-V}6!_cmyhz2lNGU4<9rvS59WPv-w`7UEm^{A^S$U7vovzhl3$KKyMkqb(P7jl(;2q^pEz zuk4o}j*?tQ8OI-&}5ljmzFn8pH(Yl<@cuB3WIkRc)wc&@; z8(2APu*m%QNpv<%LOxFV7H4~J!MVv4w;%!U7C#Vjl@uH^)-_H@mHHISE{+z)xh4v! z+29YwcWuhBE+}I4dR!%026^jQP*1+m%Ve5kh%!(P`(Li2;j`_H%^7g>dxrF z>U!TpefHiIA+;3mQA{JXK@y{O$BL1yJAjkoNdz&fq-mTW@59<=U>xQ3h%7-I9kyY8 z^MQg-Y<{D*H^IK7`bVA#EhV^gCbZ-Jw+VKt=pa8_v;@4&9*zcXQ|mL-UWPlmM1d9I zI37#i>x?KtyaLDVyT46quO`@~`+)xo;9U>AzXC6pDW_L|q{nJPH$@Y&&+K6Wby{Z6*=801A!zgfz@m8v_t_|U70ui>6=XuTCUzbJeF zrOOe2SxbG8Ky$7ZZ%Z*`iVYs&5Tgrb(^%5)_22$#$Gv}A4+NqqhtqTwXfi=|SlwQ} zc~42ERh(cxTR)6Le`E~tT`Q{mqQ2NWnA%Eh%yPS6W9!?X@@fT(@kX6BGks#*)aR=Z zvq3TPv=+*b4xBsb0<@tRvRhB8kD1x@dbA<qYPh65NS^%lv=f z;ac!8kPe_aFW-Bb()Q$t-;fcYW%TmGvoy*d{IV>YtN@x8=deb+SSMBd_EZvl~aJ9XfY<*MRasD7# zQ}tVSW$q3g{d#_>H1vEn&ej5LI_HhF~8R-tvHFJyL$Hw@af38%X0{v2K~hII@X>j#|vGwXN^I7CZRpluhDpS7-T{3 zGuG>Y`Aa+31G^AEcP4sZ0ON@^-*=@4UIZTMvlh_m8PvHRSk7qktgRS5}pgxP?bE;lPXnG*hal;w*+4HP@ z-S4vu&gc6<@0u?9Eam}xUmEra<(~;8_f|i-{{?W_I1cblfsbh2kO3V5f9^Aw4{fyf z%g;L9^NJ$>pM4FRWxGk9dq}Z`y6ktX1O4^ZEe8EgHb2Ei(3QS%O;^(QbhV+K@BX** z^~$DBXrIYxf0omp0@`W+Arbr-+XbH&FGqV5MEPTu3ytr(>uKTx?a?xRfS%_;PhKxyS~QuBaQuzaGad9$TU}`9u^8iXPI~?IJ=#n02%X85 z1ANo#(`&nst4W-e)0{Vr25X&k{aVL6C;09yeep8s3*R!bLy0G}e@|D+zem?4Xv2Dp zjsE<*^-X?r!cyLbCN?KTJ4WC>uah-rC~w1uoS&uO=QH4EAf0mCJ)O@3mvH;2%zzg@ z>ptw2DC0-bBkLIty025tV>V2LBM^hfqZV$$ASVr@}Tim|wQXhER zquF~otWDbe?_FCQraU$NXUcSIi}lP7jC70u4<>ZdXJ2(O5BwK+&SdUR{+)eR3p}K! zPk`1igFcHEte!*gGkwbYt++4gX3|Z*K9d~I1AMQ5>835vf3*o_Ii#_D!*_hnu21O1 zxAUqhds^QdeW~M|P2-K?+4R@W#uCn>GJ4iqi3vkEzGGdfW& zsbg*G{+PO!_s`>?w*vHb7Q;fibusIwD957Plzyc-#1+6F^&rzTw5~Gl%N-~9Jh&z^ zAPft99gE;Eq4tUST+g{sl4YgsXnu zNA^KE$j!)gcQx$z(pN{yWEYUW9yC>uFGMUJ;dX-V>(NfPd62_nj&UqD&vBEkM~qAj z>9lq{r*^i%4@-1ZavD{;CIj@@5`yF&Ka($}x12}qA3N2PM}DHBf%4C7?Hd-wOjFKO zBurDzCPYvBQ_kM}1O7Op*jDmguPga=6u&C65qNC8&Gbg#v2haL3Slrh z85U!}mE;EJPHi+Y6BMtiM2;{S}*DS~{&k2p#AdsDP@?b0+~hkZ{%?y|S~>vd)W9S4dmGgi!I*=i9IeMs14pFtjj{k^ z>IuBh=vaH1mySlnlXNz=mO>{G{APT=fauCY?CB!J4pSe|eLdyjxl6P6?*oqcpm834 zhcVX>tu+{jH5i9vhYr9Pq!^s9p#RjE!Dz$;(%3_+7sg(cgZM^ckH#!Jv&zR`0qUsZ zFBf=d{GH2up}pl|@K`_odSd+9D&pj?zDMjbUWyY>vd_boztwOTa{j#3t;gNdG>fqCkKdrt? zV^Z6rQs2D_HtQ2b>CVp(AF&BJXug2`L-KnpSILnoKnJ>z(}iLc8%Zv)M?v=Xn=gu` z$1rCQ-7jG6N%m4B>iXMD+PWpuA&yab<-10)Gk*D&sWL*ju1GHEyZ~J(K8>ytzZ&st zt4nQjmSLN-bo?^n$)~3f6Ta4$UxnOOBzz&@S*^(|zq?J*r?;`Sca-BA$l~Ao2Oe+u zHhhCr-b1E6fLM>U%?6l1Mk0SXcu(=Vq!Vtq@$`nu?HMd5(6;R+CzXkF6~4^@&uM(< zWk65Yai+sa|EG75gQvOe*QGogtUuBXX=aM>mN6h?$B&)^5d%emEHCG z-P6rB3_u$?TNhUIZ+?`6-&>+77FBQv&{?rT%2=0hPThi7t}y78WO1Hb&7VU1NfyXa ziwXILlPym{XE0eOy|EeXW9!!d`$UCHI-ify(KgcGWnK9N{Pu~~`SG^Um$_Hr87ohpDAO7GO4N}G6O_7j39@TMkliJs?BIpigA?WEM6;dM z5hu#Y*oSqE5bVwEqTRJakX_+|rvmS1)K0`aBFN=D3FjXO7v&BrEDxr_m7-=nr9p8k8 ztx0D-@@DAP6g2}D2e4>iRYR7UW-xw>j=BM#X z`%9y{;QvI<|AF8?#dy$rixcSEvr&#WBf0HNIc_pc@=%f&@I90Af@EP%=6wC4N-W(O zrR5xjjMdP2q|6|pW*FXKIr`9l$IO=9l)HiEdFoGQWAoe^9plKO9A7{WP#pP-I@tM? zFVdiIUj+?|ixj#mqZPXAA?r&jOmZz~R%v|!^*ZaH3^u1mI*ORyL2lFlbT{(+kVbU7 z@y$b`yAX5}zlaXo)fx>YpkW!FEyd4&K4H4Qhwpr(>h?IuUAJ_QS(P0{pWn&kMW@^S zbfAhelG$mCd~){<KT|rZ4QAm-p#t@sDYV?Jlnj?7kf@bX>;}uexi8Tn)N9voG9ij*WDz z0uTNP9{7(zij9gDg@Zu@(_gniCrk0ZzSuf$Yf(Iz$m74(ztGLtDZjB$%-X7rO~d{G z9-}p7Bj~5`=f9>*!Z^{dDL?1+x|CZlZJM0g4En-oO{w3j`f(}ts)l&?sp#q;VX8j#UF#*Y zw)vK+>%R{BR%j33x7uK46Hr7d3(sGLjD)h?VYvfI)nBEqdmln{gBDF z2(tY|*nT4BeiLi}#24Qi1lv!PDQD^{nA;DdZsFQ#?y}j|w>AN94$k?5r=G@e;jN>1 zR*!wNOq9|3V_d#~7+JEJeB&*_Pi}KWJ5oSXai?`69oM!iYfqeZ*szV;F_j6v<3qD! zu!i);5&51qMcd?E&(k>XSWbOV2D?(I9Vwp=K9K!)6!E~UEN+yXjIuZ(?$cwCpEx|D zE9p_XN|?jyO?k?BOmEu+c_iqjb0`18yHu|dya~*UD91s};a%|}it}PHc+qI??^uj} zTM797`b6Ewlla`E*V`KZBOS1N&uBiqoAFW8AziI8dht1ZCg{Dk6MAp_N9SvzlbCDH zX#W45^zP&H@;RXQ+)n8Id_m{*Hk={7vA>hvS2?{0L90MNj8|H_T4^r9x>eu*L*myqr(HVG;4^Xy%oAUav@U-;eBH5hVF?xC~zn@mxy)RsI`REcF3@(tju zDy_lktg4W%!226)RpwjH;``xlgbRZC8DQui-uN3DS3h|M8i!zH01hPWYSgobVq9>7Oi^~1`;XK|C`hI4-=Kb(rd<&iWp~G|D7gqEI#UJ;7qkRMIt*LRmutWC5 ziczicv~~nv>&?P=;wk(i&jZ0u7U=7LRSqyE2qo7l7 zBm4*V%A6Yb+(4FhFDlc}-*7Mg4*kDA>86~-7|Tga068JQr0O$HK;O~5H}(bX?aYRF zowrxDA@aJ>Uc?~5-uG>*Hm5{5rttRK&|cCJAE0l(?%TQDAF>$o0v|w+J<41!_3(wC z!*x~?$?*ifzP%87MR%TMuN~|0c^S?lG?wR?oJ;m8{{7D}mXQyG<+7;97$*HS7kZ=C zG{>#x1K5FgNzO=C-`NWs_@<16bEx=E=0OQLlj)sW&=5;`lQ9--31RZ2*V;EwJk}z7 z7l!uNVJ~md?ZJ5Mv>eXkGT2K5zc=n_4y!fL7x5_b`eUw9Z@p7sS zN&XHhC!W66&^b>(ITo0w_k%C=-Q`S-XQKW7Zt~{fs|s%xf;W#V`>R|0_E(t=8^d{1 z$asVOe#i>R%oJQNhs*@BYnEShs)KDl8?-88)!2`H17iIaAzqH!@nbK=)?)L)NX<`@ zPVL<%%8z1iv0HY=2DOhATWAdHAI&cE>QU^2z{jcNrRP4Z;lQQrCq%MyXCmrg9C_Co zLl`ZBd=16~(KL_kcSbtg;7e#Hym544Lp={0vRiHQu9KDa9IqtV)7sXR%_nnP^#joQ zb)T;F^J@!z;#dv!^IFJ-UO%TXc_H75ag5Ah$Ts!&Kfyz4bC+|pckSRiAHTuc?pqdc z-8Q^)oqHp1gQ|1Gao<^tRO?Zt4YxAg80EMJ{CpVvG+ei52r_*1Tm1LlLVLj`)a|`x zUarLJh=UdRT~XQje%lbpg z>o7Ox>Do+l$Y%5_@hY-V^4grlN3uD~um?~KTR`2<(Q?T|I_?Ay$rjiQJb`RVbxrh` z1#*FX2Q>!B2HT*X``-1rfu4U3_4Mlx9$WB#R6dWdOYYFt7n`VjwZXayHaf}pkH{sK zx7Kf6m8(3P0{W@_|AW4u9Dx4-pOrnRcg|`L>O0JzY!51-;~vyP(5vjF?K~?ScOxEw z;W)n|j_Zjhu=yB&FGkz>w~cA9^(uNcgYz*<DZpEdu|xfP5Z^AZgbe4= zURi=D)4mtoyJ)WrbCA0K)B`*?0sVg*KlQsBY`+XVKHL4WaP$|AmHm3y*n`V6kdc;W zVV~zJwEwTSZojNZ^w}?KL_MB!knOu=B6k$c;jd#n(m51;zkfz`(eDyscG&(PA6Flv zoZhKox+3tNTJ3S=n`=gUYKf3{YTFBF8}T(0zE?Z`+s10VtpT3@pe&G{uq9;J;nPrb z4s=vhtst-cRTnGUi_3FAw1L(#+%K^SaJwb90sPF5K5MMENiIqM(OTxU?G%fJZ$N>b zBk(02M_XwhqMr1ZA3gVSeqIND=ApfTY!Bl3Y4~9jJDko4YO!6luwV1m8_bCnJ(x~= z3H!#j42v8A87DXwW8IPiIbt?30sl9nYF=k;QnT-K(|+jaQn_)VOu^ zUX8ypYRe;CwB-Tbmd5XuwuBqBWjNz$lp_c{jQ~&exjuR>_suEtK79UJVm!+gfgl;= znmN~-C*+G|$O{6$z3QvCAP-OSK;g=H;MbHWVL|ek)iIQJ0*dOltfxEXZ?V8XNV$)K zt?(006J)?|$ZCp{TLuXp2XYmKn+j&XfP6G-3Wvz8qfB-@-;z~6S#B98+OzNsxn9=A z-sz_l1^TNOe{EhJrriQDXSxr+Dcrf&Tx1=({XYrLQ3?CxOxTKAtfgA8`6yC|Bug zj92K3Ol0&C&YMx6d?{rrKNNi6N1_+sZWUjY9v_~AAMXPO!*^ez!Vlyi((olH_!cQS zytV_*JE(tb8Ra6HhByo8LHJ?W`xi)zrV8*^eRd=IS)Y@J$wZD$CYm&vm`yUVLdy+C z?=>Pf7=wK{k@I_~H`h}UXc-TFtNEOW4&)SZ+95N^FHMwJBd^w|rFr*cS;9-KV(jPj z;J0+y0MIBR&xw+|X*_VU@_gU&(Q5gFTKRUgJ6SD%+P6GWEw9nasc+6v%lG(}_eVLt z#kx+aqx?t;J!BK~Rm+=v%fr=jQG-MEgVpkQ-}3gQ9DcfQxd-K}y+3Q^MCT#3+%nKh z50(F{mJjnS|4A)R_bqQiIcpd4r0LuBwOU^2TmG3^UhZ4|u?oL=kQYt@+Ph0F?@2kC z6uwdU4z>J7jUFn0OD#v9E46+G%3o8z^~+TTXaS-NWJ6`PM&%a`53d=`!E?2i5vwoEHwkZ&mBxuhmZg{2$cva^Ldr)be+= z@(k4fN-h7{xBL^eJZgj&Zw2aqsFu&v%BfxNspU(3%j;0i_?hlY{~Kz3yH=mz*Qn*+ zXyplL?~7`Ae3F-*eW-6&%Wu@mso$Sb%k5hEcGQ1bEpO7wGf;nnTArNjg`bQ1vReLE z-|`Z*yihAILj4ET@|S$em!n*t%a8U`E6F~9ZGbq{Enzvs3!#enQ=Rf$pau3bDS}s5Tx!Y`mt&aJ-5bwvw4W#*d z%gV-K3S8T8pImkiFndDF@hJ_p+DGEsT3Pt6Y8LY4WQr2YmlGdv^~4FWp9g$Ctc&LZ zJAa;-Z1vc@@YC%xfj=4eaW;+Nx8j*<&tNZi0r_y^DYvLD$7vk#UT4P;4_KXoUYrNW z>z7FD7$qlakYC$5e5VC_%$>q1)AE=Wp+DM|`r1PNbREB2v&HaTO+(rbqE4qcZ6kbW z$NcSMe|4L7uE<$Un9P6?~3+DU)rDb!^vr9xt6COH?k29dsjGY zNj~ku{O!{&uk0WXvJrf_EBKAR@G*ZI!FMM6$&Q+9)JG0&$v(8^`oZ$=gL$Bh=DKnk z&wWP93D7^cpv=Eb?71%Q=?w;LVs()7lz{K+ zDZJVe%60ZgWiD73!gLqSS2yFGF^pH*JYeKknj)B63wsIKhs~6;lFrN&?41y#e50K9 z6Q^K2l=r0b3jIq~;diV8dqTtD6TmN4w9K#TA!L&e=urPnF-v;jY{tC1-NpD#5eKk* zp|QA9gLi7_>Bw4{!*AQo^Xc6Tb)#I6s~i` z@cHS;kuK#}Q@BK(GIl^;cpqS zDaKnD_ytS)vepfNhi6%1N@CtO3lm0)(#ScOlUzsIK_jlf&1e8#Nwj1o9SNOCXTk^v zVrN)8L|hr3d`=6lL`xy&HAc&!_H5d}p#NnkqqaA;wP({AhzRsO`I(I3fJnw*Q#inz zNwZLI4ySXZpI+LJI-vO=(Xk)%B$K;)LORTo+X3T3*c-IRhB^)L>(ZDEQu#EV7`cqYu%|NsHni?+k%)85l-G;=kz{8{K0MZMgU2X+UNFJyPow^NMbvz0tX>MQCrp&> z^h^)qA1aKAUKslTqrxA?8WqMQZ#}a4|4H>=AA4zP;Po0udh6vP_Is_a9{C@c4s9A~ ztV3@YE6*i+x;9CX$AU?U4pseWh-aidN!GSc$1<6w^}+o{IK)(A9D~Oh<5)RPfd?Ex z(ADoP4yCiKkrtwv)&d2JZ!)Y_ke`Rl%oi_&FH-P4k9ENds9y!Tt9GTx2Sx{xZ*f)8Soz{y&g=`&@-SfhRIB(=iH-`;F%)(CEeS0hL_CS(JmK^x{$j!FKb;RbVt!=6$vS6( z`~q;UVK_xQ!&f=p+XvKEX3r>n-SAVN3EqC7*hqi=0~hA`kw&;0ytr}_(LRQ&AwFpW z;c6h63WRGr@AF5{=ld1;YKSjW=%_%ue^AQ~D`hm7H|qMOkaVoTe6H(O3fh=7;oXna zcjM?hBmAg%caK_j!$i48{a>a$&&4~tbg;p%hWG;$X}qsnS#Y8J8a>m-9ojcZc_v&W zUrNtxyl+s4`Y8;31X)=(zc9@!E4OK~(lEbgs?tAV8f2HrO2hmgCdrqf&PV9SpCKoV zhWjx7iH{AFP*3E2b`g!whM#J~X>1UwtrUAwf;9CTIjMj56WV|jy z`4XZ5xVfHch`;Yb&acT{Jw-I%>|d{e*DKKKB>>m;RFCsN82Z!#+c2z$AeTVr&&QsH zsuOhMv0?sS)8vQnd}rBYnZ_gSXFw-3tQnRjGkQ}lVmg8G_XEz;!xzavLMN!YU^{dv z+1g{!PW_$u&8Y>1ipBDgF=y`ig+#o{@&VBB(YD_A{6bvyRy?BYN0jzwk5C zX4o*{iv3b3F#Dx)M2g+sJ|1VJO>(6<$_=|^9oa2qX7e68BmE3)EV5f_o(w6qEyG?j z@=hfoKTRc`H?F7$-Mi9+;GnAJYpfo-d5F7l#XBf_7iFfZ#udbiooS+I#{XLUuS2N{B0cY8LCiKa5I5%`HzAqEP_OjUd8Q414h3IS@@VW2{#nyQ@R4V-x&)Qc6 zp^y5YkNTpIf@Em`w;cy4wqqIA2-HVP|9~#^k09&$Bu_f0r zTQX6y)1Ge!JF-v=&OuLQ6E0$vCC@cMMHFRx$Zyq*VMF9ompS~nH* zND3P_)0F+l3dqT{g}&=s)g}yvE?5N}H3~Y+4x6S0b#?38hWPKHTcAVc{>7r`Xy^;3 z``s6_u}!c^?=M|Q<5pYWl3lC!EpQumOIGql9lqs5dX=wD8sa0TaJ^vi`dtV|66p_p zy(Cs|-O9#9Z@mQQ4^?k@;a$q>m1*Bgs^EId2VOzPdQ2Y?Ug&!-yf-<01sZ+(K;Qos z`TAfw%NKV9>-%G{`6*^2y1?rE&SYx+a%|DYLnwD+&4D%J-X{^ymV{hOdAM(0w$M%I z?&9&Q87h|6qJJ0SJCLbU1v%Cn(MsQXJcM|U<)-M?dg#36I8&2^wS9B1sFLD-5hbhp zMVB1w6;YCf90*ybrhSqu_TQa+YU(F*uy(t4%&LuFLRO>W0T1nn!5I!ZBlmTP=spG- z2H;zfW$+oCK%7jTIn`Ym>VB;r|0ym<5|^>Fapl0T#Ail3*8kML;UMBo))!H`qFV9o zg>1yfXIK7m-zOF^vSd8)?85&EJRd_4aBTyw&ogjd1b8X|oAUHX{F`<9d<@G0n_|ca zHk~Vq#yWXDwGA;PuHjZY*6}!JYdubI;=n5rzkJRw`fld23_)%OkBHtU0ArgeqP4u} z@r}y*JaFE#IGhiJ-rbU64TH?ncSoWfgE8J%S)+xQMLGJbWd&3g#p?A#**3($7vlOg zuFG+ym=2?}n1>(}``A2Xbxsi?TJy0^CK-w96H!8Zksu2ecCJ33@tyn+3g4p~lfWAn zzSCI=9K~o`CU`?UTHjCVz@Gvgf8xO(0rA5|{2~7Z!SLmi@fk~!X~vH-g+~{0U8T~L zj&_rtr!$q6{7j{ne#{#Z=qKJzM7{ z<5I{{8F;r0JlhCax)J z@p|;!b%n*AiLvx*;zYY^s!5qc%mdu^_DS~29p*h{Q%!pwzACh|%)BS9aYVu7O7m>@ zDA0Zg_Qk>(A@XvQHC2GEBZ9VmPm84mSwc0*0hPxg);b=rd!RfH<;;hAWrz%4U6l|d zRN)JIX~Md~v?SCkHVJn6j!hEkSI!pfmH2EAApZ}3mwz3Kl`9vHVePEEVl1~^%<@da zIbtH_O{LA1XuoT}C{x=r(e|cUO8i&j6-xZqSHOMvi%aaDOORhK0MPuLr>_S4^%eOYeRzl*4Q2Qd51&Ol8Ye6L#rozJv(`73+R1`cFj?Az z?{+kp-1>IbrQ+Nr+L?%U9-m)NBH$oBXr!N?k|7-S9JbiR)Sv=;F z?Vx2Ae4b;i$U)ZM(HA(~z**KCeQzG%2zw-bD}Bdw6t3ix#`wv8^H#_#WYy9eKE}c^ zvi%v@ek%sL;Zs~E6$Z^EmO$KyF{;d?B7B#YH^T zI2tklnw#fBj{W$;XzH1v(1a_|ggh-?nwp_+lKb}cr71n6BTb2BM$;VuXj<(@6Y?_2 zao{PV>&}jJNoIV*5^;wVb2xHLX^h=ub&kUQa@^0yJ<&<~7IWbLmih_V@QJOfnylD) zFXYejezQ@Us_YZAz}IfifbSpv?pFNI62r4r_Yfvx&9)#8a}$-r&(gs^PkwdUvyd*~ zdj;^_+h_1S1i)d>VgE>&2kjwN=9{j=9>sjf&zrZ7A>FjjQYgu!o9)oeq>D)}G5tt- z3Nl9eDb9~?@dw)3*h~Z8sLox0Cyn53837uG6FnXG8)%=Q4)c(A&mlmY%FxH4*$JAR z1Sg*E6LoD&@NHup_C6+nhA{B+dGL|(A2wDPU_1{PbWeK)bCSgch2UpcILgELo(=8^ zhls1x8#sGeos`Q!j~_m3CUdU#_ASy&L*<&pN%pOYsf>S;7}` zyV)4Hh|Ai&9c9h(ar#y|0}}RO`c~{O&o5|dXSA^SgXj^@lPmY5uhcPFXF$(>g`UlR z^wfd>q+{O)JucLt@!EPC-)_VIW?V@}T)v<5lIS3PRDiyVs6~u7^wH;IW?nisp41OLolb{$o6EyK?TDY~n*xkZ0qesaqQ%uj7F? zu03=j&5^FZS?twwCfc2l$*qu2)n-`c*PgVM1X#(hdQZ25}6 zx(h8rb(#5U_jJ^uGKy<22kx2t{s{?tM_4BitTbK*1Sq3*L8M~}FC#lBJ{09wSUqD6 z%Et3DlG|(9nfnOG9cIOrCY;m`6X;t-yo3FGD}UCs-0H~*0^Ai=55+wbjZL?L2e6MC z=UYAGqhn=%1AZ!-WA*goWihx?Ze!L~bGADk>%+1Y+3qlJ*_CeS6_j0x^hX@dLf9;@ zu^aDJ`tlagLwZG2pF;*M1@ zf-@$)fc3Q$EcDGPL>@$(C#RfqtM*NE(!R6>dXsG1`~)F64{f7&)n}QgyFNjZH>}QZ zZU_=m24d}m9Cfod;%wkWxRQJ&gAPyLboXYa`Xm7h|AUpq;30cm=dS&K{ zIqqGj+gYw1TJvv>gS~gUJ%!Hy#l{MEm67f?*IpmlxAuBhBE?8WJF1a;uNXM;W(&#W z%d-^~q|vy@>m_(D2HxVE(%F7%@!qRaV|h&0a+BbkNHo!V_@9FRIAcHIiB~h6+rqHN z4m|&SIm4NU=g80Kj13nSxz)>GTXVr{k}rbwJ@}H0F^~_s^4=Egcc9I-1i|T_ z*YNnQ)9fejoXYYZQXG6H-l4Y8Ss;o2Uo9lx6DBw*k9-mNS!;*Nv<552*k|`~6vHAp z#+a~%haGV8&Jf61DCA5+UL^~Bc46>yhU43oZJp zaTe*U0TV6h!b=ssh3po<-1R_9{TzIEJ|6eQmt$`nHfl2X9wsKcvm)HD(b}e<=>4?D z6-8;y`-N2Mclbk@?_tlKSo`m{+CAv+3x9>5#T--Oo{QX@SofTOZ`8$n2ZQj<(}Atq zNsnWmYeFvledd9V84rb)vO2Jrgua9D9n=9Rk8x~88}rNqOI*;w?$MOrK$KfOLMhqW z7M%}5gss4Q5TNA&d_$7<11e#INQnFJwl$o$6}FpCTX9diFbUt~tVa%Y*1m{>$v7{= z+V$-}&@NHQ!DPo3@foXQXX1<#e8z;MK1dk<1m|ach=QXCa!5GroS!6@>%q@gLxk!i z@Uz~O^Qy#{`DY@db8D+H;O^ft{G`nu~;m$k>k>(++L_n_0fCe$ODqI&B5<1d4l zSG+R#4RVhf!K3~pc)uJ9Ev3GG8e{qe(Ak{my#3^zBKpXLzA~fFg3x!t7{^L{M*Gwe zdw!ZPcz&ECc#fEZ@%;(2!;P_h9Aos{WZnQn4IlTnVk}JM*Am-H~9i_ zCtu@tBG`F2qKCcdPQf!Bb8>+x82L-19Mu??^!?(HN0hbj;r>DRCIxiuinvs3G3Lq@ zaq@G}uWzE>s>ExPA^)>zjnq7@I3^{ z1(moK3Z6q(37+F~L+mG}3Z9eD0Y|WwKK8ueoR%t7OL&jkar6?w^L{S;C4; zPT%(S@xP)^ty4w$#uoSuON0sQEkepwD@=0cRaTEn;CdMCB^{a1btLu^FgB3e5cH}# z>Ar)ZrJ2{jPxi7ain`@t@}0Wirs0h6+z(tP+2G}NNbrpG}X0Z0Ai$Y_5;45 z^Y6g;8#L8(BzCIjSmIQV8@_(KX+X)5h#=1q$hT`ykf%8|$aDDXbdT#3;ODl<-;@B-#VU+2G5!>cP8N* z2gNVK-^_S51hH_K(?BQjCzZ#0mbtDJ>z4ERPernxIG zw>llg!uTwV_gOUFHwxoNV!SVh52dacz9sfQY<>>@&w?(Xu`J?$CdRJ)edr9>+6AlN z)50|!*UUL6ze&+0<#)mt10PL1_>egl<+)0E6Yyu=iu=DS_e4+S-i%b&!$}jWk$a#L zd(8f0xih(3^&81$6qC!m4Oq7o(HQoX%M~wiZ-(t45h zl;}$RnO7>*RQ8(bPFgKgXZD`ycC8Ys>rJs^+fBlPU8dp~8)6c25R2f#`dvV50;4;4 zTGav2QGk1?X{NilNp!bh9+`uAq-eE}O>3?K?1xC0ds;E~%sQ{~DO-7A+A36|1K!XYv=MyWF;?M`?QZZWK{%-Bu4u<& z;L&T#Qrz^d0IJ^#eyO<0#=#nw;g1Uzs}2#)S?E*vN<ciuA=|e752fYoe;DyP>G)rqc5-2e(|vb{GiU#*w8L+NI1g91gIAb$ zFh8$y8qD)AZtf4&r29% zWXHzEDmwTG@+1rnw>nS4w_=9hISKEX;M-_KAJcyNw1rqZqJIw4bIgDK&(rXn$}BnQ zsT60wZ@$%23%wW}Pci2M90LGzV3gHaLB1-`MKo;%J+%IAM%`u|O|XNRZQTHxDlspp zFa_vi3Ghfa-2mAn92KY9Yb5kZGxST#RGhW5XTiTd|gSvGE$K=jj|%DfU4cr1arzU-BsAxVGq_v`n-Y z@kSok!$F?*NAW8O@>sBrX?`64H{iDkzo%fkJ%j6W_&txhF9vz)iXKjDe+BpN;n{9n zKgRD9{Jy~b*SLO%dY8b?z<%9f;A+Irej{wt4D?%~QvO{r_TxjQRUHA1Wg${kZOHVh zvJeZd8MubvIu+MYT&=hU;hJ7`7`nHh0)GCG;HoCr4<_XKDZv{g3{^%+6K0W@i~_EeH`n%k-*>UNfqSdYN!9;{FocXW~8x_h#JBtg4t@ zJK1$F?3Q_gr*L&}Rl!Kmwj5_+{)=_ND6IMKfuhtj$;3gBqksKqgV-MmX z&FCl(t=Dk`R1Pj{G;%VHlr_+;)T=+7QrJSFHDk%HWB~(2{q554*8qlTiI$6 z=4_?CrzXS%wW6$L2;?98Pqbf^j%7X#k!v2U*Y1^yGrwkuonnYCQ+eyzZ7 zt38uqJ^Hz57e-8TqX-3Nha* z{*a;awiaXiDV_O2BOMLDhL(|1MTc_n=x(5Jcnmij;vmGvU|3~9aC3LfX*ulOn1 zni2Q<_0O+AhnAM2EOM5z_9({Mqw;e2+OYOmwF9~xyj9m8WP|AaZDOR5oxKg~4wToy z$M!UMMfMfR-6F^u$rXIHOs+Da;}2t9NbBqIh$BP19E({aIj1g=T5?zx6FQLCSS|Yr!=#6qsYuas}{0ce#8SVH5W9B#L zF3jz-(;;glcU`S~C&Rl*4{I>uGt=VQmf0Dn1aL$A5F7GEe^D{(u-Vnig z1!S%gYdZV(>FzAlYlWVj2R)mG_vS&*&cl4GzSja>I}f^c9(3)z;i4Vm0JF66SfO7}!1x9GE-gDQPj>gV;+(b+84h|RJfr(xU@P?iAI?KP zH{(HX$FJtT4#Imo=)H5hm^=@D!~ECH$+v9|O1=lUmcwUwUxMI?WjKBLoE{})e+obR zndq+lu&+tBq*01&Ss+`<=eb{7&Gkhq#^LhmSksLZvJYTRThlkZq!@F{>S1DX9{B|@ z=aF2{KB&L{!G<%LG=A&RcJga7I~X!T>)?0Z#TZ{48BW3ZZ-?bm`d5v$>l7Sqrq?=*#%nZdLf(C$+ck~4wFN=*$M9e&?u z@Aa&`x#-ONe((GH=lz4v*?jl2ZqItwdM<12wU)RLV~(z+bIM3I3c|D2=8k_mE%(*p zwA}GW@Vg1WNAbHk?bHpBk1<&18sCKf-M|mywfoMU!Iwqqv2a(y-Akjnt`t0 zkzc&_Qg`$z{IaZ4JcMG-SQBZW7+R2!<3iMhY~R9AMYDYiF&4=7Equ`m8M7sCOo3cM zzBIXh5ONI}dkpoSYZ?dnFItl6o6s7J8MaGk43S+@BkItfZKCBl0eKEox>h64{};VB z9daslY;^xRb|TGpB#Zsb5tv`Hn=y~>L`=hpI@_ZlH;~EmkemB3rpVtWUZ!5|j_!tz zgzw*6kr%E~%n<&6`D@iTs1%1IUlD#}Gx?F^Gky+PK1uP?Oa2vPi@9m-s4+}E-{oKN zEdH;;J}hO8UB%jEbEXoiW*`l{qwljgANZr?!XItk+=w!TKl%>xe2nPeYifSuE_@@i zYin8w;w0^3eY!58o_6x_?hIRZ0k%^6Lt*Q*dRxO~ovHpEn;g@Rqm8IrGp%dAgYs7) zUoW?_ZGfqr*Q-rT+Zd|SIA|xEAp)@<#09l_;G3Nubx*jSeCg)RZap93%P&y(d#LVI zCeB!>Lz#E-{|N)sJ^24N{vYdSHTZwte^ORem{w;hYZJ;!D;+|}Au6(Y;ZM_CTe3-$gn@}j$)wRWQHhw(qHziIy`1gj6? z|0w?79jvaz|Flj>JUu01z&&|+gU-v=U|Hrolu7$wbY6z2-$5P;;=Ua62LfQX*e&{g z^b?SC%^pU-{{#EEDQ0^d^b~*UPk$E;r*((O+5n7=Waw(9qi>a*mY#anF$}c8|B119 zouGy8*5dhyv7U9nR^qZhLD^(W)r+!;2iM9w!=dN>1@iXidR)WSKZN}IYmX&fZ_j(k z=K`16n@2;9dcKN$yrA294IV9y)AMXZp4bzqwF5yS?U&kLBi3g3BM!*ze-8Q5UZORe z?={+@UZpL&V)SyWQ7-KN$i>LZBFgQr?T%=j{u$8!hUt2>-7?6i<3lJH`)nfTA>R># zo?@iO&MFnd@&9bDdp|Mh{SkUu>rocXd)KPhV(dpH8CwNfn)ft0=vA+baHC$gpk6fZ z4HxB;{iLP21`l0=hxxtMmS|5b#b9qo*{hLH81h_+Uy7|R7x_{=r0WYsyO+w2_um6f zwxm|(LndGUw>LG|gK^f;Z~Yn`!23mlrYV#56GnPnutVEnBVj$QG!k*OL68j^x56hn zOZ#SZf9PS&kH`>yKk+6E^`|{B?VbJ=H;H`huq~T@Qd4PPEb_-b+IILUTK?GGhfl@1<*nd(VikVDn|tUN_S<9V z$ET6zn%}U@wBs8V3-%8v_zuioI|X)ub`H)WYsF&3wdmXkifO%%yt|0`O@f@_aOvifr!-%O}Lb@U7d)l9R3eWV-s0%tK!RDS3@Lil0 z6PPfi2KyIDpDNf(^!mY=eY}y%zVRtj@rm>KfZ! zxZ`ZSCObu9p05IZ5qQ*o9I;B&53wC@EByE%tP6Tk$H0QP$}Ggfu@~jFZ{eR{A6-g! zrKKSs`_WfLdIjU{R>bQuwmbZyOQ*swrt_7tUth&OI?Xr!7P5x(ZPd?%f3MhZ zK8zO2TGzujUW7W4f8U8Z#e^%9s0=E1kiXJm_m3$ZjJ%moq$iMP3+0_|i}t#)|H>uv z)!WN4vYSM{bHUrKux;r(^(`sbV}U!OaUSxyEwEqdT;wfQ`Ze^Tf;9-*Td5>9rnwV~ z(iH4*bqC@b07{R1N)nZI6yHG1p^NxzPHX1%2otZVJptf1)*!O!d}+E@U<&w!?}Uul zUoU>Stx^5P{=!7Nz6HNt7vGIh{ujZQcJxIg@;3Ja@#{6@O?P)uj6$(-zCHWl63%

v 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�} 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

jsdrpy=^farD$a4G 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 mFv1{z?mUWXjOM8IARX1Zyw z@_7S$P?I|P(IXN8Tg1xq4!A00OE1b=kEI4=Has~H5crlKy53-V($5}y2dZQwm>a! zcqG)w2KJc&K;jz5tQ4s2Jx`!EG)F;=3>#2e_KO8-h`x6EUg@f!))#VEq4prtO{m?; z8$j)Jl_@IJ&ZGblt}$68(0#6+gxW8^hMFT4f137abK}~8@%;uiJx(;1t4KL10>x!7!R{YEM2N-10?5z zW++HX`dC3S4a>^40m(-k2ZV#136h-~0IlT8Lla+eE8)^-(;bO2TuKapVr zB#-`N0g2e71LrD`oDMmxAo+#qCP>!v1|T`KSu#Zh$zKf2BS5kf@hN@QkP8Wtr6?cO z9@WlYO@hk{_g9M{d+qTtO4y0zuO@+3HU8>Vu8oBHt29hshvOsEU$p|wP<$k`x8kD} zmg#GQkEa;>hvUQjr3D|c{ng_?8~8Y-T=4O7XTe8Pz=Zg)_^TN|MBu}&@No?0B?KQ# z58#70z{mG0Q&fEXjLsd2kBTo8K00?NJ|08)sQ9RlgPL0_+tVDb(!kb|48!(Z4!zYL zTSq^qC=yaBduSDB(>YaR?kB(|>qOkwNm9Ac{%%EyeC zht?`y-UT0LU<8LRps^7zpAY$KkCE>_wP2(RXb>Zc7BI34y^k1Sf{BqV^V*x(k!vx) z2+J85d6ZFX7)DsSRM7@T9tO=&jI6+y?;wRSzF&-Gnc86FbjI@G_NTFkV_<|j4EIlD z1LJ`24U9bYpxCv(xr+pfN~>f;(HjF2-+(XLBIM2*^DWx zz{s1*3Y90e3IYyjoUuLD3al!Soy?&iSCdAj`)h(fI7 z;|DPJO<{UB+)%wF;+u>wPSU7kshm*((~*Ki1T?Kg65ThuD*@x%2sVuG8(HTI_hDRB zGhQBty8~Vv?(N310Td0BvK3mu3?;sv>zlX}A1)5e&T%^Az&U6XnXB^+I{KG%-JyZG zkn5rfat+K@q#%VAmL?&;!6w1v$KEB<0CUfl2H28?25|ps=ziE&hVK2@hJtTNgo0zf zx3ZOCcZ4E8U!{6pP8TY25oESn=K_2y1Lv`r3p063!gpfE=-NX_f0U!?80oc&q53Kc_3(seMSQQlj|(=+M9R}7glJWkz{nc zDh9>DZYT4vBv-0vquU+$Cfq(}gxKdDwTusE!}dgUyX#h3+L$^Fwy~P>A{#i*3Y|#? znTHljtKXd|t?qAc*k{V4=3hsx3v@duiG$2(1C)LK1#+;@ne(q>m~Q&;i+O|Ywp3+` ziqd5az9Ufb!U}~F+qp!^ttcPWKIhd6ALr0l8k>8Q_EE419dYpg0U4EG^4wvfi=bt8jc2;6)ioVHkl`we;U( zU~3}q;aG0L2Xz>Z53-8$oYouo`2JnN$E33aAD?C@e2`%SAKkyO;3J**7}-(b<0Hsn z#Yb=b70v~sMqVTb|1MzVg%16aV8Ca~@el(%4R`~c1%_sO6 z3E69pkE(LAW8lL_2ml|77Vyyow1^KTfFZfwY+id4oiG-}2g@1wSi-C#g5FaCJIZ4$U;c)~$vPB#tzM~Gq@j*85J%=w1d@Oxi@G!;xE-B45+B!=DSUjHO?>2{ zd{lgFt`$CZ!ATkTpx}a!^C3I&G0GC$nf_&Ln131T`|e|fkFoSGRiHt9C|bbBF7zJa zg9#=+=$Yjj@jr|O@xgKiJ|1OI8-@>-E>*OFkB31s6dxH~t@!AVZRljPruDtke~5yQ z#v+b^59%-+A7lgZ|K|oi9(z;paZWqIhbLX(gA5z^s9Iye$5`5r^M@&X%!V9Re4Ng7 z6CbI(0X{BMnWEz3N_6f>d<^(V;p2_7iH}oIJ}N#Y*UG=Fg?lpa(FMv7e6)h>jQ?pQ zEfDF8TgLzC{2LnoGs*YHGV=ATJSSH2m=9P{bb*zR(36N2Cg4B0?rvUt6XRewh!vJI zuyO(9iWMunutm8xSos4{afB`T`9n%%V1@b&#|qid?Z2%x zuyW(;f|X-!1S?mauCPLe4Xk`t5x|Pl6X9|#J^@B^G6bSn;WC8jCS3aP25>n?Wr_-y zb16fFyGauvbl==e!e!T|fJ@*5v(|WZazbtV&EsDM@dAYiUUoo!+LJsBSWJ5oxhS&W z17%NSQG^a$Fe0>ok;g$xFoFc=O<}~m_9p&>Wh}u6k_?P!4AsLig2$zbHZam3G(#~m zoFkGzJo0=k?a3F6rNf7bOG~X7fes@u0$#8WVzq%0$E$*oA5ImF^Z-;ipV@`-sCf0o zl>v-k<%j@ToU81~xsbyOkf)e#0_1+)03eN3rl|n!(nA7C)cKFHo;Svrv6-`>vn)aV%MEv>AI$!pUdtS zYUi2ct9YLhKAXWCvGX7%eOQR14{uln#n8?pA<&1-Yj0v2I;`|zBpH3Ugn@E+AI9U- zJp9O*;ttRZ?ZfLjTKn+Tcy)u!))W&of&Gf;!+$Qe_TkZ1)Tl8h+0gBc&@*MsIsZk$ zQLEO1qv>fzAErF24{s|E^kJnZc4OUG+q@Q{SiA8~>)PfI#@c2dl_@Ip`!gnw0A3dn zLiat|j=*bx@)JVvwh$(!=Kfm>|6+iI&Q0t)<*t3a_~Lt1=C}-r7l(odv7u-I8>Q%E z#0C>gY-r}SH}NQje8dLJ8Q7S}AUO;hEM2N-!@f@d%}{I%PqAX76^@;#4K{v5TpWRo z@87jxgE|aa6on140l)f*fsN~)7i=7EDcHE8mBI!YHn6e!;{Z0GBm(34OO$;d3^}a8 zxR>dseV@l0*!OIeDJn2JQGf_wv=#|;-<-AtM&VVULeLDwN){qSdMxFB4&z9I+F<1q#K;j?dF^crR;bT#tdI@F z!DR+kdOa&x`J#njr86MISbz*0Sb1_;04vXCh#mo#>3tPk+Cda6T&`le371QF1GpT9 zB|@gCa5;v)9tjuUTNFa~4Lyx;DMk691GC19>1dLg?a3rKKm#ue*v_0RUJUtZPinWn zbd>O8%uhT@7yu)R7BDgiw1^QVm>5}TUV9T?#SoAfVL1aMX^fJ?Fv8NMiZ(FP3N%A8 z^6qI?dvaiF?J)8bV(kcwxZkv3ggOkz2-!d!{E>l?Q=SowyqqE!X$q(iBV^dX$czsH z7=e;#Po^3j+S@)*iTjTdPb zYsSYw_$dP)PeUfb$HS1l_W0;7>=^iX6EuhqMGN>C2wKDk6HI)(XkKIf8;dE#2g@1w zsA6Clh7XpOZS-pYJ9=d(K1wpJ_-KEicKDc$P&)!2*S&7R2Xz>Z53-8+?+*=p99ks! zxVyRF!*5ggAj1YeMlB7;N2{L{K7N55R(u@$(SncPc>{bbRhgpVV;N)m2!Hd!YYHE> z*2KrHC?ATC;lr?fZ#5XK866$r?0^pJF^<0f7+Z}U*b6+A8~2AI7rvEl%a$K=d$KJ% zAtM}1&qJ%x_pQTj6eb!%g} zGg;NEb}2uNbaR(79y&87+fx3OF_)>>s7z*T)ooO6!*N%@_uXsYc3fa_F8aRtRp_%3 zxP9vt3vSuE#4TUsa(c&QOje;1CDiR71CX*?x%a;Xx?eUG=yqvF=nl^qYvA_j#o@Sp zeV@W@dssXxZXag4Y1iDm0dC_}rl`10qyQ1P-TSh_?WHY=+wxN5{Tp+Lii-nyEs<>2G`4yjy)^j8u;h}nFJrtL-yL^LlbrkeB^-! z@u6q|AD4p`@xcWAC)bua)+aG^BtBTqz(*3M1;X*c(!n{_MxYsrkBpG<)rRf0!-vH4 z;qzy=zF@%zbr_BhvWk7M?-}@L{Fvb5@sk7}N0Jmi$gqKriEl^XBVGl}zrmt};DhO= z-S{VOU^mvNOi}UiIXZVFKHh&`;iFv&@!>}KP<)8LV^mkO_2>y_S%bebUb4YUIMH0& zHPAzJ*On?=0ybgZ%y@goaA0^{j#uKn=7MFuR5MZDnWO9CKplvJuaygLVj%{cgws%@ z8*p06pqJs(e^?yuYJreZFVbjqQFxnXINzoj&DV9Rd5dNamH~s#>8(lyva15lDf(M9 z*&GmrgRJFq7Lc(iOy^__;gN!Kh2Amz((?}s#4bn_h&|d!`6bQ3SJIo|_!_wbE(dSX z+zZP@e3@_2^k%yG7LDe+=tkw4u2tEhBJ6sYhe(8tcvc~7Su-N+Y#Knzd8y|65w)^E zKftXS_NNL`i~VU2!E0}SR{xjG81^TLc!T{>v|xXJK<}gdVS++SNd_7IA$g&`$L8eeE41q$H$#V(C`?K-2^#8><`le_J=pHKMs{CDmn^b9wO0k zfk>eH7BwY08l!xu{W0IKf*dtlpi;Ou10PFFd^CdWwa3Sc|FPhMfgtgrXaOIk=sm;- z69f~uE;Fw&|F>4*gXIi-OvDs*I6hdqRM7@LCV*xbKI~T0(f^y;;o~=ij1loDwd|c5$;e!kt_*nf)I6hkaq3|&na#-~{-3e&-GF zk*zXC#YZO!5E0k576~x_*O>UId?N-vYB~Q0_h#Tj&C_8%X9r}j%lzLWYF5o_MW6oz zU1BBH{2xZ2v?bR0Kg?8zVUuu@*)o53A&lXwTyK?VH_TAOI~}*f|Y9K|6Vn) z(rck$<%?szF#(#`8ITE||9dHbmEineYhyXE9YnFhMelA2Xa3*~;Bpw&2$`b7h7VOC+ z&>}{dVA_+-<~8R3Fw!GNSkAB~X$$SUUlUN$gt%DsY-myZfYngS}s2pKl)$&42Q7=e;F|M&1NWlxU5(pUj9 zo9U*%xrH|X$oDE!RDk@9&K?PniYF96Iwuk!kD+{2fAe&$@G%hX%D@K=so>*b$WDCZ zSr!v61T{vck^2d{3p>V3medRJp=bdg13`=UV1kK{b>=nZ|1e}FK182MNZ0LE3?Res z!P0^`HUEcR8H$f_ShNn}UI9WnV%@6jb+Oyq}|JSlt_~qz5m1W2c8SrZu|bPwHrC@MOTb~;}4Hm;K)V`9XU}N z-M$A9lNr4m+ychG4hk5@93mKl=MQ}Gj0K6Z6MNQn7$J@9MjE_(5&N7b?CZYbIAU?n^HyhOYZtO#zjo)PJPvW2JA3s7dSe7YmOf+wNbK`c*8bP9SB|>`B0u~o5a|J= z(4XNA71Lh5__PHjIOSuful+$ZKkU`Hki%-Pnls(BSMj`oy=ts7Ma4)n3J`&jga4ug z*#C5FD=@O=*)V&>@5`p(`??Odu6eIYGQX~(+1?tGRMgW^T#W@RM# z=EKEtAJVF*lrI2fo(i<+FY@2G&iwD~T^;}H8H~r`zl70BZ2oh~s^fn;D3kw9N6Ehf zKnd{|wbwruGh*vMwL1P+z)4lZza4M3#n%7(Gzs9po$&95k*g#BXI97m#i%8w{u8R_ z|2doy5}W^n5{@7AU3En8|DQVZ->N$P?`NPM3qJ*nW@6*#TO4N=oBs<8{udn<{MVWP zH*g3-Z2YW87mdk(2^>>3{IA50?b!TJ2W7$kA;CY)U)}K2IlDUkQ>){D1sr2F{6B|1 z^RfAVU&3|ZU-)+~sx$ustK#oi~Se=-A~q;|McqkzZkW|)PF+t{P)8a znb`avMCTFw|0(!?qR#wR+kfvzEiw5ofYYo-|9@irBR2mR82m5VFZi!B|DADaTQ&9{ zT{I^DC2%^`@SlSv+t~b12W7$k{{;V!*H!te+8UQHT-YK30<-Ie;=J+ z@GtzkAFC_>H+QIx|BF#eO#LTR&woE`Nsi6`L3AF${~vT z{-jpN{|Y#rYWVMmA$x56ypPT=_!s`&57(9dn=hvJ$@c$fE>SFW%K03ePU-)-F zSZDrotK0tf2F%R{-=Yo z;D4v!|K7Ul|BX)7@t;~9|102hs^R~+YVq?vI=|pw_;-6P{Ex7{FvK-U&HXh#zu|Bn zb$X|VPNiGFRGtHNobH)<4o}An%!Bufv)wz7g*|;``L~74jVC+3*K0WW%Xh);4M6vL z&4Gz^o=e4gkS?FI7<3OQna9Nc^-SpZRf<~RjCW=atg&9X9FlZB5Rt5Bu16P>k5)L` zH^$|?7w>PvrHHfe({+zIEiYeOH@~6&Gz#RE>~SSw0l@b^>^|li!;$T5RPW`l=CHhG>^}~8h{dDkH^;7t46#X!J6#axI>zQw% z3;!+s%te8Keugzw`uTAi_0tbrMe0YxdRXoB^Cx@=^fSt$pJFQ4(|2sBe#TNi2X7Po zjHQ0md+T|q$<$EeyR8~};<+dqB4bfB6q>AO-UlP`w=^^c1p*qHm!>qdbSpJ<7P!Lt zWe9$JwZ_l4@KIsC9;O!JPxnb!T2UQDvhKP37p*NV$iY*mHNKVbJr2(R>4cX# zJk!&(^393;x|TVXf+YXV&BtjGadBPsu3vRs<8QW5)5{&jW$Dh`GFRupo;HmNyMF2@ zKGLAj*7pbgb#20Ld{JXfukdf=_fa(c6aN=o*Pygs=swrso}J`ykA%@1oaU(LpU#uD zwTiNRx~@Z%@`hUR=0CLJsur%ZEuUDsk}u_4i4XQ*RdQ+E+Q)m~JkZwWY?e9FU`d)+)M09;`hu=DZ`d)&rQx|=Y zoNm>38N{ne-%nBn(6{p!>U(j?an*NcdaJ1TE`lFCf%@jAjJoK1N0C+ELm^&G`tB$W z`=IZqpQ!Kt#m80OAHzyV*LNbk>Iu}hIPf~y?`bZpzBfa>n)Ll4RRDb7@FVrTVcv1o z_Yhd===y#L(ZdPUcRJ#>y5PIfRI9!xL%f>w?W78z@1x&S-xKB@SAB1Sm5#3OOgQQj zsc#%?Q5Stbe2Z1zaTs9Mr0<`o0_gjm@2KwsvyZF3Z{`>(s{MX%{t4ALKax-veYc-% z)%QY(SChVPpbDVxHXEt$J8wU(`qmNMN7r{hIO-FK?@@J(PZr-~)pt6aP)+(iN)%wBxGpFJYyl>)Q@TeFF7eRY!c^d9797`ygIT`u>b6fWBva zL4EJQc0?Xv%Tb_Z(R1==xrXiOmzJ@2ooN z`}}LH`hFVX)uiuPQ~~teaV_=zFvd&A5#Kgg>FD|%0Y`lT_03aX>f$d~{nM)NE)cIK zeJ4`|(D#R{sqgkTA6I=Zf|ZW0@9mh_JdygY<9L4LSgXFvAYM)Sev&GHzMU1+_hO8f zjw8N1!%9cjcM%-*3Dh?~1Xve*?-*m%_fUvelfFAr1{w(H(&&>w7#L^$FDXAMY80DXV<0rh?U)uz5>JFT3b^CEnS!@Utl=s4UVyV`OI3b(PVts`!XU2SLJ z(t*me90{0=!n|SFzI>tG2of+xV&eY1cBsv;8GtxBK z_l6>KwcONMO*BtFw&6Ka{0+LUkuC3<8^>#FUd0nrx`5D411U;DMt9BY#JL&BlE+&O zj|RPib3<@Fk*ASP#<&QEM;$eaOPnYohxPC4yC3WP`MESwbXb!AM{?e8E&r$A#( zfpB_wYNKez%T{s}Wx0WF-U=$6TN&k8Yj;rghLGI}*~=@_=WW40x^@LP4JHHpW-Tbl z=ol{6Bls}6Ayz>~2CwoU(eF;~vQ*Obdb@toeT#rNigX?qv^f8Ot)wOQ`gwqbQZSD5 zd$!X6>&IjRU|?5Z`XxwQ`US^LAV;8{hQX8?9O7hP=lgDIN$f}(uOp+$EuP*`v3 z^mN(h&>PK3v^DLA7a*dvyz4Yr!NAEy0XtDu2##NqZNcNgnE!|Bw+`nU%>Vu_nZE+K z3mz{i->dq2{I9*MzWjF&^8Xwb@@nFL9`aE6U4{QAfUJ7)f7|@}@;}2F(EoM}^lIY2 z9C^t9E$>kOKVqm;FaBS?ufF^*85H0@vljfv8~nfZHu*oTzWkToUSIyJ1_t;akAYuJ z`p-um>i_q*1plMzssAR1uc~|h?H=U+ISiy~;(s3U2>yltC*Z#8g`Y{@`s#m%BcT87 zSU9VR|8nFJ{J$yq$55zV{O`K8zWguI0{myzg8z7f|F_-{{MVQN(%b6Gf7O5h|Kl+* ztV#d*$RqfFUGP7mp8CIgW_|hZ9_0Ty476(Ee;)D({)PW1;I8Y1pVIo<|Na5}Z^yz~ zP5hT5kKq3`!T+%O@;|%2`d`v7z<*{f_>VXEf9qAje|`C1TW|eW6$JPnkA=3H^q-GB zg8x?p{}^P|3qLQ{AOAuApTp3qCjRFkkKkYUf8yeL^1rLz_Gd=lfd02*R9_SS<;WxW ze_8N9w4VGQo>y=D_X+TySquK-4gTMHN$_7^{$HL`U;eA|1N@K2yhBa;&qp4?|BHfu z465pd|GSIo%YXME|IcA4RTKa7kVo(@{68_cp8OxKxBZ!s7tsH9jHYVhzZ`i4|1Svs zG5D#M{&!8Tul|=@6yQIz7W~H>{J-_Q;J?27pHpxCt9l3cACJ*sP5RGA9>M=}f`1I& z>ZSilH`iDH-Glr;htX6`{Le!k!N2hT1O{*Q;{Tj_`>z?j0{Y*M(Ns-#A$ou{H z#N`pE=X}jGGOf^aQ;xt>|-wQoAY)EqC{%I@ez)IY^oY{wM zcl5*cU~jjoX{S28vy-&)UmN0F?LzlP-Tq(nnnL$sGN-RBbf1&&KDVEHLP90CjIjRZ z{oUjA1czSX@H8p(bkMxFVeR5j1L((L>$_5;5G_I6;Hc2O&uQyh=9!k9pX*w8bXtpi zw`*M$nFhO5ufL(@-pI^OTc1itu5P<)2P$&p{$;!404|hhl*v5{VxXK5hMbPA868)t`qhvUMNLXS^yy4z&eTIzV626dyvK3!I?gh8uhQ-Jz=jbB*MsUoAs@7n z2Yo^YaF+M~HLREzke!xZNWgeTD#)(aiVvHR-J<1wF}0t={fDFc*91rW;X+RnrzbC^ z5ZLYP@C;1S^i`UBa=PZp16s-*wgKhN+;TKZxd!Aq-F;J}vsJ!M5P2qId1_x_w$E1b zB=2)8ZFg4U!bEPNd#|H>XTm^l@!9#dqLB^UO%ma&JwVHbZmg zIz0VTutHT_1stCb93QYfP|ntoehwV3EA))}0-SwgE6HO`xw~z5T*Hrn#?6 z0@NLz7KNU(Km%|-3^=a`oIlfY583WK6V))y;c2emT<&lma+GgLfUZ&o0>g zzuMu(iYbnWKrXa_hP6VJfdYSJ=evt&bmZ>0-SHPLx|Z>o?SZmF_YJGiT>XJ+2yW~1 zg(G{v%PFToRGFwg;OeB6??}+%zn~d{TDABuAu=TubpNc|_hN3M(Cr7h9iEd4<9Cpn z0c}*}Mi+|#?n3uxz6Y=~tI)j#YA4^sH7FA{+M{7eAcr5H#7$=5tWaO3Qs zFLe7GuMdn&VOa(4*;2OGV)bA$A1H8-4;h_>*kgRcIExMKY0u+C zxNw)|$X%gf-7m>j@+q`QTZ%_%e1v0VTp5$Q{^-A8g8VzzoUg}`Gf9Q+oAzm*gbb`i zRyo|~YWi|V@v1bKGG~u*8ELkXxgh57^pvj{r)&7!fNt-EDGSog)7-wsZouslP~yM2j@*^5j?COeb0=hIc-UPlK7u1rZs5Y8 zw^!lAygA@nx~cKZppRQBxmkE*HnjhNLs#UKud?`(qw8U8QN&Mgv-Cq z+}~Z7VdWzO0^aZt1#ATYmvHU45JtK;7nwVTwNJk1Qgnn19Nsw~c1x8z6^F$n>t*;9 z1nhdz7JuWeW&T7lL8vB;U#YgGHl$*ay>Bx9wsiMxi9c!Xz5oK@o~{;9jPExF?IncN zl#nhQok9Wob={+RJNOn?=NjoK z{wt~ITS$55zaZte{iS0YTkg*0#MMiC0E=hZ;}F!)sfnQOcWup2Vc*a&FaB!7F!U+B3u zf&95TL6R)@l}DZK@o{Jct$1ZJTcXnkgCJUd@tpKVu8sMgcEv}WMW6axLzu%4u;OPi z*FtzC`9C%!auv8Ij^&Puarlh)P+kl-zvtbOZG{FKp3#kMRS@>ERJ6|wOZ!;lkp=OE zU<81&r8Kgo3`UEO#P?#c-@%q`d>%X--wJnPNq(#o8v!O3<{q<^^hO7Ec$LW-o9}6! z?-`kp@0pgA@0p$K^gJtHa?M_weURTuO6uq7-?9LzNx=pT#ustuf@!#J10r$gccDRr|4|lMdI1Ua1LEHD-Pi>!%nIZBzYMJWf$6Q64w! zw!Cc>c|Ku5+g*{jPbwU`-#xjiBJZf&bZ5htWzk$ie?@QmTXo&z^t_uf7ljJvA1G?+ zzhoIRTGCv3RQF_JU_LbYVYt2Nz%Ltc?c8B2YD05Y2KdY1HB1FQT*SnmEXxmPN>;9JPvoL=a?HYr~*1tWw32Lc0s zTF`&40)aMFnjVj;T>n(nxF&WjyK?|ymMbKN}bgx0M{ki73DhapyG>jf> zeUECMi=fk@#njH}A8yrET}}@-Opq!L2o>;HN}aAMci8DJ5SJNXY~DB_22~5goP*C{kSS_hx6dPh0xR%j%zY zaEn&H3$q$F8E0wkFJ*4+B+WAuL*3Pww$ieXA#9&|nHIm%cE@Iz7tK2$iks7l^`M)h zPh((n{iFzhJ;q0#rl=)erdQYD+sspw)Rdp*nM!AH!0Bb>-@_q%X?yS!PI_pbmM3%i zbr6ELOYlGDSt^ni7UpiZm7D{DobK`TgDI+NU@K{X1Y1gfh&rIkmU%NzI+%5fRp zrQ)Z=_^nLycMteK%*J|JbE~qqCS+}sr>Ha?DIe+bd*D9cp9AHj~xY!vla%x zxRlFa7uVamZ_eR*}#MGNW15aEp+(5#$)Er1JqK z%>t|p5U({sJS+g>4bI#hQ!jJI|7yGAG{ohaw@*|MV;0bi)%Fvq;QaYWFZ&H2#RTz8 zHrBD&AfBof_snQ81$_)#w*85m_DOPj6E49Vc7@~MPx(tYlcUxRLjB_qZ_8vy@!@#a zwG6z{2YZG$s=|E(*QI?h`Os*vd-zFJeE>9K9tYoImaCkQM=!<_MQYgRce96Q0M;1( z5!(Xmp#=CSOavC4p+M8fK+3jLA#NB_@ajSrkpY8A%78zEyvZ0`b;O#<$|T3ZpE337 z*C;@6KCb5e!M=e(T1O4jK>7-Fj(A(i%|J677!z>)s@Pv_C8HT#8~p`sS*QMDn_nbU zF#f`3$I7dCW8yzs;olp?KbOIR_&?Wz|5c{||E&Xqx@*rSx(NN(@PGgs?`dsd z!7moGN(kD}_%X{oeES#-la{?N+(vUeqUPfRM%v-QG7iThBLQ>MP>&TuJ%b3X*-&4M zY=!P`I48JwEJ}n9M$VO|zZ!!P(_R;PZ!+vPmS~KLd#6mDf9~)M-;hK*eX+9B-9CcZ zNeam8$lYWsses^|@#|-Me?U?pM=^t|CKR|EiJe}R%=`M(#n{Ryj=_l$2+G68kCYL}LUxbh6YG z4^IF_+C8B{>fI_TR}6AumqPJdE8J!TvV_)yZ_Pr=4wa!wCytj4zt(E}y%G=WI7E z`W@lNtTV_rUR_z5h-!8Fso+%e_65o?6QX%@R&B_JzfQcO1e5;ECa(_3vMbI-$rTB8 z`(G&JUTK`)-PAP#-1GSEMjVoBsHC-2GTNv_WP7^<>&dwm{87dUNg-R(cJb%kL>?mbWEio!a0I+`fuCa6186N>75i@|RF) z@R9k$hD}P$ABpC@WKyI2;rSyl&w3FAEM74-fR*LO{Cob0d`u`>`AGvmr&#%ECe8<$rOc>6|R{YrT$KZ!f)8OZ1gP#_PpDoyy5Wx>d-=6;6UQ8)!@?v^X zvYzP#X7$WgP@bN-jskcts$9^G(|gK(;a<L|p?KSVb_y%Z@gWIZyo)>Xg+HZitzes7l8;6kmOm2sRc+NB zYY7%+Lf5Atsnc^d`#_Rz|L|1ySB8#oPE#855|#~t7QPlyfcT|>)7vo*tn}UaE3LjWB?a04r0nj{}%D${vu?SdJ+s31weFVD1Xu(C!uA{`B&-g zSx%S|ul>F>N)8mUJFd~~cS#TFh6-1~nt>_gxn>p_#P>n6&}uu7F<-}0f&B&~OO#@y z&>F2~Zx`b?22eKeAZ>43+!$rXW}-Sz%e9Cmm$k>`HQnyh;vrLop1G_YIV^zkVgG=B zqYcp&6I55^+?Vvklci#`BbfSG+Ob!$TtM! zFV*e8(E=B*7)9;z6~plHH`+7b^JKuo?kew=O zV*g^#vh=S-r>M#;kTLa-4Fc$A9wOkarfjR^yS4cB`W7g7L>p+93lRP>xVwUPHr@@z z)I53|LU6Pc-mkpwHtAjtWI*>~DR%Ot(vt&y%<0}ZRJWg^xJapNEkSrr7gB72On3~{ z$X*OIj-L5wTd?cZV3>&p)TIznKAZI@MEuyAwe)IE9e8u9V1`lk546UdzEMyBS%-k>PtzT(}Vd-nkuG+G=VmB zQnLTb7~}_8$Y(3^-ysR)7b)^H6!{X8S1M~3LB6?y@!6{54XykZIZz+^vuMclUYjg^ z<}%QOhHjARb9&iDLl?4=6p^8cs>IMxQ~%&78oy5rr_y+~qBmOE(nh$0#`8ed&^QM! zL5(+}T6FvC7YgvY_|JyI(VoDJH)lI~EL{90q~zWrGNYhw|DDYq#DN8@hQFk*#At;U zZQ04Je>7fyRu=6&MCD@1VA2wJK?lAL@5(|2HZ^M-^e@KLgS7$Z9gIu zRNh4`B2QST!X?9g4l!yo?dJfgE!2K)oyN*?hO;t@{oIXYvvOKg*0n&@h2Sx0KSTUk zmc^f4FG8RVV1UZLUCDOY)icYo^DX|^2~0YQ%SWm1W&d;r^`iK11dhS~qeue( zFSQg5y@)@C!IHPl5km$2@r{i9idRJPAEGaK5z}wjk67w^4ef^dR;&6RRQ26=YX?(b z3G7BjeF@6{Ul5}{tjck1-3W2K7w2i-Tl#6o&S%0Tn{OoW* z(`&zpt6jhLEmU<2D< zX$i^I1_H*XN>JP4)VZG=ntS+E+v2Z2V(ZxY{E=r{jKCo0l|;1OH7y_3;{VWp#r=iQ zwfG0|^WOqUNbJT$+Du6-Q;A)eNJ}S)uOLyipEoC4+ADDs@eRvBZzH^Igy*;n3#U1) zS+u!Xbh4tC5>m+(DlwUfbY4*wvEA^&&}ZV<{e}=p>bx$l`QZlJk#N zBI4IJB+{fx;?F8^5BsFae&%YGxRZ&2;_s-$Z6S$Isl+Wz3~0!$5;rlCu0bktsl<&; z3{-TLN?ae3I8Y^i%0$N9Qanc`e!|2wGcjEyt_(?RsuEX+&^%xl*`;_upIa=60o8q` z5Uv;RY@^Cxs>`r=9$1b~^rqTA~qVBspSI zb=sobP>dE5cv1#heyAGg;cgr6@b?Mk(Cx!d3v{QbA$zzz-Je5C`b#Q*7oLT(#`uTJ zvWT01hRd*O%rbwZd8WA-;{~{rad-X_HTh5h0f$eD$50jaaZ)`0Trw$sSpG2G?#7e@Z1arh@>#|M zlNl_i@xbl8w2TK{JJ}cygzKXlV5esew(&QqJ@s)A4Rs|#R5|ZN&wLO8dQc;l^|b2s z@uawErH`l3pP`R6H;X>*!ySC=UGgXAfo7tQ8SL_O6SdICtr^wogZ%F!|1`*Y<~uDy z_!obhq?NvjsYv{rgGsbheBTU9D~({_Q{&anT+nFtcwEQ0f!APXd;D7cR|qRHRa3Bw znCdBU6k8-5!1u;r(#34P6s)!Cf?`*8>PJK#@gV^kR!;7GiXCjPru7ioj&@dD<2v?VxpMHK94nBN6s_LG;2f3)>k zjlO$@-hm^a1zLQ$zJ+lN(jMHEMa^aynx&<$OoYV7*Xp(da3(!wgy zMZ-#2pz`KJvDp6Vbr@qE`$snf*?9mbXF$FdN`L~?X1GR^47&Kk=$`1}>G&VRvoXuT zBJ7bG`9ZoN7IJI-9iWJuC&kt#u2&XyD=jLf!UJt((w?Nk(|Zv}gEksM(KnR(Hi|*1 zDd5mQ(@1+wrL|!i)WCW-2|m8 z)w>d^!Bz6f22ncK%9bE%lqyz_TN;n)&ny4LkMVe#dTciy(}`DZ2tJ;q9=Bqh?;{xs zO$jQrZEqIyCSI&^QGTZv6VDP0_(z2Tr0sgK@Lm1_4s$J;fpxFbs zQ9{`^)F5jy58dwFqXJ_$`V%v(&AnJ z!RJELu^POO3sBz|dW!J2%#A?PL45?AW)Y8-a;?@pBlw1gZhxp5CeoMU)41lNW`Rey z;SpH%y^UCw8)0_c#Od$h2(`E#!1u56N)F(=yxzpgP?_e5)7Echo%XI}cQqt;4dex^ zEA-6oI2N@3fJP`OE84QEZ$iBPN0~2@`D(t$h3#Bm3v-|ee?k?|#pZolJUZE`R96dZ zA4t=(DnkSnQFf+Fb_GLfif zCZIkO9h_OjoabX$`O)pyoCL+=bgl}23;bAU{@O4=(-xqq+dpVZ!=(GpyOGWIZy4U7 za)4h8|MD80cj#YurzByiFl6hqR-3=ZHGn%Simql`c4W(*O{F_M*I-go&(~XKP_=@m z=2+_D4n9;=fNBBaEcx&=W@(mZ`J3ZDP3~Lc9xfyRe+XDPmFx#Kz!jKiba$ik1?VP| zF0pw&3RACxZ=jG%5LKA*{PB`+oRyE-$ahv=t>jC#(hbPB<02*BP1jSt?+_71k*_-Z zCH4=&-{SZHR$}0%_y8lS1O%(A_06U~0WRc2zIz2^l>kS&e+0q8&i#WVej`ZC zE1uag&b7LtZ%0rwP&Z~d;mMpf$%zGrnQ1<6D=MmQccwoo=?{QH_W*XsR9?>T<>0s8&HUzsaiyMAAH^%_yIyDM*}XQsoHnO)xa$T3V>=>8ON?YhL_ z#rsa++cz8Z9q!%!O5Of-b1aa#EBO2$f#+j_&)*3?ZxMLj+kB39<%GW$R{nJRy^R!D z8%<=}Oa_T?Jci$^_m6Auw>qK*!`-x`l@8Po|CoYjcrQ7yw1ctd;0ewpHx@Q0t_{VqfV&fH_J z-{^#Zhuh=C3Beuygf}5v84h^JLEdhQV>RA2i4lz#&hIkCF8RgxthYG3qDvlXF7Iz) zUqrd4uLkE$ZFl*QPtHVbcJ==(-8z8r)qHMZJQOf`=8v#Pc=tHX$31$0HFi_rHAp~j z&NA^~*()6tt5#!Z)~~CMFlne?HV6lFjCuXl*qn}C9o;o{702M*jy3bPMt2Y>dr3R&M3#?c2pF3jyb z^$!}_NgiX`T!4T5WGl$GftJhAcS)DwZ~xUuG+r#hc=)Gi>wU zz!gE#k|42K_3;fEelY^rY{IY!VQ8Dr!U)XLHP02WyFa@6b8iozSey?iHd%-!$kOyr zU3gbGCjPi*lNEMD2T_L2Z>Kha$!)~svu1o2s!Toe%LWmcwEF+zi{f0#FzZ-ezmf57 zS9KkaX#+$w=sedjc8L|yOd)X!2F~a-vm%4GA(r|Xw8055N?R3!dQqxDuV@e*!u{8v znF9e-LrZmA{O3fAg*L}Co?Z(FE8a%2_FjNB-TpB$kn#nf99+MrW6|xO9?C;^>22(C zv0*?U!Pl7OI7(7o>6tHZ_~l-1$>zd)9lHHKN#Eq#bT!SS0}KS#t1aUlc4@ImH>W6H zMEfBACEzb!pBL~KjcRlkzsE(iuIVmvq>Jw#8BBU-u5`|04W^uohMvqf zx}`Vh_OJ9j8K+J9AFRy02t?aw%o5n6RZ5K_=7i>SNU=10nW3S+1>XT>?C-w z*0t)a>g$?d)OG9+YhAuKP&M&ZF_yUK3ir6{~5addelXA1r;~YRGd%~dS#>4{A!#&)=00=?eN9ELG4=rj0k;A+oiI|Hq0veShvNBk=6V2kg} zF8)?#S){AsA4BOZ-zELgg2l^620^K3PNVbYESe|ep~Ot(+rBk#;S zpPTscOr1A;_h_%n#2#+2b1>>-aTLoQ{&Aou=1Q7;)t zvM@lWtQgSk>yG4!_OvUhy|>|_Wxs*+zjvEafA3H!+7cj-|K?!xgiXs`g#o^&SUL+d zo3432c$&E|7h*sI6LCc#Z5CHzi{dS~8YVf4_n~N@33%hX?I62E?VF&95RwU*@Fv)M z7+g>Tjo5c$H$esSS(=~|wVzAvdp{6ZtU`PSnIoC~`~aARt}|gSrKTtM1#7bEdK{`C zQh&OFy6z8WZO%`g#9q>YJp=3yNEc$TgDIM|zbI{(-T@TTTLSwG~QXy#W{d6p3)8h4*s)BYljW&23hAmql}9p39rF z2{ARMSDzS(3GRM;$Hhp`SLy#{`beZ>c|r1T-zWKBVY*$@@pgtJ|665$7s;HZHMXVd z_6MN|ECvPX9{3|ro*B7|l}nBGN#Pk!Q52ssD01mVGUkV8^eBpt85slHJJTd%(DyUG z;Qj)d%sgxp!4%UhY+>*=`&deH7Cz?-NQac~g(SDMC865DijQvp><@uX8g~WcA#ZRA z{_=y+`$Ets`S#GesHNr0vU~Y4!F$!~z* za^y#IIl~EdFbO^tLU6?aE5Y!1p93$v+gg}=)HM>5qk0Zv@U)Qe1K(!CB+4jH%&#j1?K$V(g;3CLrdg4^P9nHJTf5MBy~0 z1kN&Ox!<{RZxf3X2l-ktvonnTO*-T8?KFG0o`e}oH_hw$c3 z8Q<7(xZ7Z;tM>C5(*+t{7c%CugA>+kpc3}s{83wVGoIU>?(|&bDAwbr@*J{CW1xEZ37 z!Ksc9sYv{rYs>*O>4rv6HRlU4{?a%fK1hwfc38&$Fy;-!;-g)^;~c;sd3$?_BFC4> zSGh0|cEEL>=0QAc=Jux;Qw0Y^VFCAUu4?F+-T#z6g;g9gjfbz52wjUj5CgsTNc^;a zaDKycGfz{33d81uI7sh``KCP1XU)Fd7(d_)9>e~EfUBF+J3SAhOy4p136SttVz+H0 zvpqGp5$l-TV1L^F2o5o{5PO2L>Hw@Q2>OdwD6RMv`MCj6(-2pA?SsWW0gA@k61!pJWHP>M**@D_O^Zfh zEi?&x7&xF=zZtH^HveSA?_KveJ{F%2uWnmBNLG$Y*0^RE(9Zeib7EDdUBY!hQ0L~Z zG}YMl{~%8HPlLOe!Kcy}_zs-Ro_G^q*#(1%#4OvTWwunj)&;|OvZ6LB8nt1h*4wPN z@>!|(*u_!m%|_0=l08Ly|HV1Ks%VnAU^LRUxNky9ne8FzmN^|{1vv54A*3I*(I@#cpIARl+x~AnqE&dbPRd{eWT)RXZ@OXOW?7f6eIYJ}udGzLN z!DBe#YYVw4!1`c=dhi9Xh@H)nySN;_Bk?HFsrJm2sXS|u5_~HK@edjU&4$RrQqj{Y z?=OOFh9lhIrrUe}E>I55dxy&Vm6QE|dAWr^x3`Fvcf88`d?2svuCedf7lm$t%6nTN zuk6jSmqyE*q4Ew6OR<-$GSuR}_*16u8i<+noUl7VX5T zyqgC@+kLHS+pkQ*PCQVmP{(VW6phIDD(}odUT!eJcQmBQ(Hz$9kjE{fRoYV1lxhua z2tbCEo{C$>hVz zHDD6=S0QPhO8NtOlCU00H>sp;Okx0!q$^aCb0?A*fg?#%Nh>V{b5zp%Ofqtvsgk-q zjX0P_8wG7l3Tos&irz-ODOmRaZX|%7OIqxzD7e8NQt&2K@M)u9Gi1{34OGD( z`6Jte{Nu<~If4rJ=Jc`9yd#um7e(_PgJuh%`T8D%nU59)rEsvIHz$>}I2;0h=c}ZK zOftkjOC=qE8#Ps#qLOwo$!M0pb_uO<+mXaE1ZeG2NvoL4ptVsY^|9nyp^~1rkbg@h zJ_kzKn)T5?$Sa z#+8Q4wiIfs=sfx>=rmUHHBm|TT9OV{iWW*NN!wJ?ZI-0f@rfoxU+my0_=8Gn37wnGTA`AD-4bN=U6oX1q4gh?biIX%dsWiamRvJc z(kM%=i7IJ`CD#a*)X$Quk4oyvq^641&MK)JlML?LsH9F7T8&lGSr%Fcc8b`NWI%VT zN;=6>aGgqOz$7ErGL^KSnlRA(vP!CClF_9eQAtf$&`2s#NeLEOx2U9dEd|G@q~|P2 zgH+NwCM7DdyQ`#6m}FSZOqG;Dt7#~wg-ZIbrJ%k;#D0iLM(^0Il5CriWT5bSB!%rq z#sRWU@1+S&9NwjQhgkP#C&N3K`?H&)cI-#a?Tc=TNq`;jUf#9`Gd4H~4eZjz7G4 zLs>EG^4vL>7hL*$87+xJ+cdmvldg7yVWNVgpMG7pb=~7Xec@mpNHP$QyAQ_v0S1{^ zI>wwy?zoIB*L8zD1?{oB5ijhf4f1qr&)Xz_YRG&GCKlSO*^icYGU`u5g%FT)5BVQq zpn>BuFgw8)vpx8bCzhmBitfSQuN(8Y_og)_rz&qlaKaqv_!Q?J_p2Fiic524bSYgR z;$V<-65N$K;f@kohTWKLSVm)rnUDrk?fz`sOFg`wa+*|**@y-*`@s%^gL!rPt=seB z0`>3^ic!Ejhf16KZ`Bbm?K7srUQ~Ye?E%UgnD3d`Zvk#E!@ECoLD2es0bdbCu!YUj z^Vir)7UChcnc3#A#s%IPOy}NhzEbJ*j)G3hpbNfM+3RbNH-UW#Y6PO6mZY5Fa@TeW z>-XmLl)GjZ;*a#tz`L7R5gv|L=tqngI;kN>KYT?S@%sVvgQ3`?nylt3CRe^gHq0PG zy^vbfUnqYK3k*npE6$HEq_WGZDMY+)h<7v=`~vl3pR0cg4(wHtYteZMyvzL<&{`@^b~YRlKU^^A!hr1Z=c#A&R-THp8qt+7|h!&koQjHh3wB#_V28+ z|GSSVdzQbM%(r1jC*}Wj?o6=qyQu|?%s2Vww&(guU&RRC6`Yym>qI6#)$J=8OPG(i zZBh!@@Km?IglG63f&Bg(zg7hX_P-W*KHe%o=RQ?O?59gj9t3RB9X6T`O(e8nso;^^m0k$^hDJPFkvBAo3P`+UO6KYZa>uqDz z-u z`yW;~BKzN#Gl7lJ{>N@yWyN3HJQIIO0sLX!8Td1iC;jhXl0yF*16LNCU)g%6_@$Hm zyZoNfu4aC3yr@?EZa7`>`#M~AOnzUOOCF)(F=8)x$A6+_?6gXthLe?k@p*^ct_x`2 zh)iP_f*841v71$TJRf`|CgQU|x4#b${mVj4M7n7rSm0zS5VR9xPyq4NJ{}k*w(<7f zro3r^_Q7rr@7=2OR?Qf zOEE`s+=|~oe>6J*?88v;pJE?)$$!<@hb(khFzP$?!VBKH6^%S30E%t{TH;kbXT#*tG23m=!?yv?1uP{`to}QY(kj-2;p~2Zms#< z&=REJKTfZX-}?HyGg2e?jqrD!0z6mi?>3|;es9`TjegZu^Sb-HuC&WF_~+ZZn>wzR z-yLi!==URxysYpI#l!z`d>?;u1piUv`=u9{GQ^DU7q?LSANx6ie{+5Ahy&9D@^21y zFLcK@j(QBpvprP4L`NUQY3^88yWY0AjQft-U_85xlOUcr=lp%P`L81fl3uzH%P6Pf zVzuSjGwRvxcowk|`Q~RBeul2(VV**_`#8N&JToN@8#%p+w*{yb^~CM4Xp|ot*ux=5c0ZIoyMP;$e@I z|Cet|?Y}L*qQ8$h`?+u0jca%hUeDg2?;cr&d-+fWK9(j7=$~SNH%n$edVo*YMg1^8 z{XL*Nms+!c8eJaPE*bT^!a&GRZTEs_GCQh=>A z|Bt;dfsd*>`%WN%L4tR%iAGr*bfSrX1|^yZ(HThKj?6$<#Hff-5mBf{2#ZQFn4sKV zredXTrHU=BTGuKCM8t$GxU#rbs|Bn&@9+D4{4{s& zJ==56dG_<1b8sv#2Nf33S9Lvcrw$Le@dRN;Oz(sX-jaE_=*nU#uq}fWPMLfU}>@g-;E; z3I&-=@sosc?}>O%?m$@ph5^FzZx+Lo8XNe@JeEg;hNF|<4})J11{W?L1igf#KrlIh zZ?_yE725Y66zkJ$e1R+R3ye!v5QV5UCfZ{Npcs-u*EA3XJuP$T>Y-7B;IvrbX$(eh#9M~Q_kU&l7lA|l zl<^+}j@HKbm*cZ*{O>)L#d@~U~(Ay}CChD>CQAlqn&CnW& zj`Y!KUYyJd)dbg1?8PUoXo0_;Nx-~PMo-{C*aH$o6Z>RHdz|)Gt_*4IR_-R$Qduvv_5qraXFaKzzFyotXt(ukXok=~<5x}j2yG>$5lL0;frf{ZM@ z5KnAh)0<-hw0SYSM2vmB<`0AXI2Q0zgACN@K>@)*-o(O%sxU`!3E!RROY}g`zCI1T z#AN#L`(5j|R}Q`=4b0MwVFB0FnIzSMGg5 zxazk)* zbF5Up8Q}OZm0I;BR7F1Vb+}~8|9(}vpd6Ml(s*Aqxk!d!8SYC z^YGvDhK|(k{MQoiLe-e1;F@H^RpWx|s#gTASw9L_tv#jSkm4ifTq%Ap$K@6WjW-y^ z1?JMC$EJDOXBe-4wH7N9Jt3lTDm~6mHQtVy8paZbt%Lm>&F|6d1He%rt<370EP#P| z{TMJ2ZLeV#kYqldr~}B!w?e{-8c8wvvFm>QJ$9a~=MFD#Xh47e^ezk~{KMG^>;~f} z@OV#!(SP^GirraoDS%s5lC<_FZ0v9W3Lmh2*61z}WrmVNyn*@;GL0C<73UlZ4P1n{T!2l&gKVnB z|JUKBwtdsi1vh<;+xWumYY_Km^;l~>3_L7;glH&j73&FQ3&lP}v04-ph_uG5Sm;_7 zispTBJQv8Wek+ji9H&6oG|q?K+FGBMvmTATyjIir2-CT`i#2X_#WEl$DCcAf{ySS+oBcyn~~_71q6_(6Npe+Kp(HXdg6PorHx9K%H{ zT75s6_TjjU6Z7Qfvr=6(#g zc%mH5xqz=7s+aAaIVdPqxxlt3z4(2ZblwbwN$-KnY{D|>f8ZdbhK%#xbf|fMw?*bX z+Q*sqFY0npDu>)UF+N5DkErPPYP)sFPmlYOy! zvfE9oNkPt{Q-?tjeG~%jx+Liw!c-OHXnpy6o-1!4tju8JXz5$I3)6$JK6b0$&4i zaVt;(S3HA7-x(ccn0}bPB@7YU@r9%Jns#BT4?^EVLX%&I<)FCvnP4g)Y}Wg9Dd)hN z?UU4OgP()2dvLbNsldDC^pJ^u`NZ^zetiQe8l10{yyo6lgal&~olrFn4S?8o zk@aM+!^5jNKQh7Xrj1L%E;Kz9WFexNG_Cj_SO}!n)A=0tbb3}ZEcEQ2;hoJtPS32( zHNzG?s~JwC=hNRm)C~U?Q<6^44&b<8QDDDolReWZ=pA}K#7x)0kC2*a&@-hqM$b4t zHB>)1&HlAA&99x{O!Jj*v@y-QR>(A8)J>-O!-Di_{uETw20c?r%r~$0;vQ^x17D>Z z3a5iNY=k7py8#VCbwoTrS+Ln(E<30+Z_I^$TmcIKdxP>{2OtdtGU{^8(H?V{w`i+M zOXe+q7AY(oS&1L!K)-YR0&Xv(N&=JQBAmdG%tI-WXZvSqU1t~9YF+D!VLDGK zuF|?rC=O^{#}(ra>oLVX_#ldLi*;79o*WDhV2n49_k9*E(oCs40hjX{pUX{Cv3<=M zpr^X`68+NmgMsN_NlI%x844qAvqzX7maTbRnqe1t*c{}g&GSBLZH{|kgXK(w=kBnL z=s-7YBKGP7PSfW3QJ&+sIFNwXbecE*GkgFzTH|ZqBZU>bh#wWk=W}-u60LDHUd@11 zJs(vEn?F@`S3p%vt9&}*GXD`9Y*qXp9Kd)HL5-I07PI5br-3Ab9`F-*Voxno9qfH9 z5#%>Ee@pkb*~l>tO#hxN93)CNusPnR4>(-MbxH;gO?pRbjA8(QCa~&;;}X1D#465$ z+xTl9ixNN}YX41$0N4-K_AX~KnRgcmQ(VPo#Yc1K+-`YzXw4yTu*1tv_q>lj9n{w! zR|^7ax#W5WDiPG2;4h5-0x!S-=lmX-Ko?G0j=hw32RJ!P^FHF|9BJNVa%H*ZUG0C6 z?>`+m>Aql`*?HKkW;FAdmO|ak!KHB5>A(e(AZn|&7fyTA4An54aWTI%$BKbz11F+) zX9C?yQ|K15(5>%TiDbN#FO2AuhWSvsv-J@+bYH`$7Js(eT{Xqa6#Av__7zjy=K7pn$zRq$ntgBs1h? ziVUFfO>@kP0n6fmwcD8G$9Q2yV89uQf-=h$X{IPB3wNypU3il=oPJ#Oz-+_GHwD+w zd2z2eIS`o7Pv<~$*Vh9knD)`~hkYECFaH{_IqcNGC<6Mp8wqI4S`62*w*CkIQChdB zPXYm*pLs|E%7BH`76F~02q-5+BI3!PSa;c!zV0&YRfm`u=`MtEc-ZFIIO_w<+7~Hn zuIme>DqMu)otk6%D(7xa+`qYRr#|=VNg%{&!^tW)#plC;Eza{RQK8zi{SPhyf!YOx z{s19|`?NvV$|p{>1?zR&AOSO>#g6yJPbMt9^%GZP8e8>-9lHT`C=|_V4$WmD|kHbrr(J{?dsdk0s-*H-6!yecFEiF^>FL!{a=Bt;p@(c+NJMH3U_l#{*5X{ z@;~&L_4T$p)YsRM|J8}wl-HQ`{O|eqk`Gaj)N%eRe7|xz-m!Lf=`P80ujIMe&hwY6 zZMeoNxZXp~zoW)?aqZh}0V{DQUka_4k5P6PKX~1#`z^@!AoUB>@g;L?w?0bwP1cK3 z{t4^D0cO3+&WiFMq5KDc;X@>JCA=Tw$H*9ev3gcLa*OkQC4U{j_wP{bd!{XM(&oF% z+{V+*?4;YO`BJG}y>?=ScF6|(xpX7`Olg^@UAw0P{_NByYVW)@QA@1F%U*tYUqj({ z-omFBG2!)?aOg`|d+tuqwZx{0T5a>E_|c3Xo6c2VuEERHEnf9?4lW3Pp{}Q?=Qi)? zpgs3|b6lHvyndt}t;+B8GVfI_TRVLxJ;|p>aEE8O?4xuHRTo9J#?YSdC`B^AjTjTX z6Di9n1SVqfmdvHQCHoa~Sz4OTT=r_$Wcl$2>;-?pU+@bP?BKgQD4@ILae8eadA9Nu58P9I*I zpUZ*7>H6|ty*IdGgGe~;tQL@ z3q$6$z+Ie)-J)wlzwh@6#KaMwmcy5rcRU`6V;6#5=Lehr*`ZQ@p{=+i7k|z_GFT7&sP36y!!N?^r!NZ|TjVT~ z;>TerCV(9zpCg^)Cg`PuVFLZ^DU1TigR+|BA?j;7eKeM|o~i$K{Xfx%@SWHizJu(P zWWh&I28i&aX7@^WH1DxptLSP(+@#~IUMnyt5C|okR@^09W?S@xj1jn zKI_9743l*uwLMZnZ!Y`){}Mjj^NHZY!+89M@WJ=!597o9zx+5p)SdRf2p`^j;t=?7 zy5K|gnlyZP=mCWfx6uZ7;X~IW+QNq$SU2!tZ`c1JeE4%*@ZlLe{zLfSefWp*VHWtu zkMV~I{r(r>L(5}_z=t6*@&_GU-&u9{#P0s1!iTxb)A1qG+ZH}dX5GMt_qDe10nEO_ z9Fl7e$_ZbM${F4(6Z)rUsZUAca1lI;eZ9ro5>rl;giXr8w6Lfi5oI#{+rYq*Z)4t#2|u+H(RQWve_m(E}L{1(uogQZNVSxLW67A^|MykqU2-dXeK zaEs`_;<^5nO`htxGxxe{Sz!((Kfk4A1v zF?es-Z1g_>aKh0A{(3wkMlhG(mZ;xdu*w?I9^Vkw9>+oekPK_6v^FzyS39A~TKwoXt@W8n^=nKfEC$bN(X#0+gWqt|36BIEQmB=uW6Y7pmC6bU;@O;0*XA zO$4O0r&khIKLVRLmi5S@c^6CU45EC1?W5sdpn5%tr9pH!SSsu93dy(&CmURRht44Me_VI;>4Z#)AZ zfceB)m)c@s{%RS&SkC;P&AM<4NXX*d)eDmY)Pa6Tu6^X5e;9%%#N ziI<3b1g^s(O5Cte5tYJj8XA}jSR#zOg?|RKveaLX5_HHdl;<+(HXU+L@cqYqH5Nt_ zPZ~A`!UKRDT4NBvBX+WbR@5jI5`=RS??e3j!0F@*T+WUDzgsW4OliUkc57>mnJCY& zE}id5#Vd3jjup&vX)7}#vDwc z#G>scKtHSS*C`yW@K+!;7pY-9$-8v$_yF({enrL?Y4gq#%={?!c##!j6t5&|!t2Ti ztX%l_)nRF50yxQP)&uCw-1Wq^G`vN0kO&TxsnktuF|>*$`Y{Ex8;F(P3)$KU@fqOB z{K&v59%qY|?A%r(KSLv=7SrSQDW>y#9T0%uV?D;r?=N{M#qSvmo#OYC$nNhYf*W6x z<42H+3Bafj|7#p(Uu`pc-3(gH9^3>J5;iXZ-iK_wFHSLf&XvvRAuAROT7Z6FSwNt~ zX`0CT3l9jOBhBXbPcQ-ezDb^oEIz;3;`2)_KL3ct=a(rQ0d)wD{AB8YYaaZ5lGb=X zz!ZKz0s@STeXNHpUpJ3Tar}r$telQZBO*u;jtjm&&R<=L<*N!~H2D6{!p3Ou{Y65g zVRNy61;FQxq$g6h@CC6Lsx_9Nt%)H>LS1|OyKrVpW}NZQwG5q^HBoz`(O-{3pel|H zt`#MN$5bG$ewpwBE-t94=>YaG{&T$g$m37cjp3MsAzg@6wd{zV%)0wC*BEe zG18W)Y?KMB)lbRRo@CmMoBbJw(V9A8P;{#}mn4LyjFigl&SUR@<9wifM zvndnahPIxP32F8zDKvseLSwVg$6h@;2l`O(Pluw9S)`BEhoX;Khdw6R^igG_e04gZ z=&cAPkRlW^Gt$Qv^u(r*nnTk^6S8r>n4R;rU7m|Ax>#z_#UmD7EK_s=`jC0~7wKb` z*7zKtbJ0i5PoWPWpwP#pHt3@X;F3OC_ym36o{lm8VnrWZ`)W-etNr!JsT<3LDuhZF z;semLKk)+p*ZNHST}!_u);cPi>RwH>Kv z@q=#aai5n9d!i6Cgh0iR@d~4W!M8B%bFitY$LT-soRNGLgC|NA4J==Xw8c-BopE`7 z(5&o^_pBgx6E#q+;)QD=Xim6=O$1IrZ@^6A>Uj(e*5)cjR^WnXggzh;cuagQzzrr5 z2n;DAOYBOqBsq|okQ_KHWMAY=RHitZRHpXJbD7_R9#EOe=kv$OflKe9Y?IfTsLbHeah{N1Wl|LVbgARj(loB$A^xRy<`K)+lIHSyDnpO%_WR40Ps zD^dLk`~-eJhzI6(CKRhPw0UQXUX_fU=Ocd3#Htw8s=4clS1#^uVJFMRy8lLD=c43J zVCVOLbYtg1`hKhv2&4hK92$F~Mp65D>}c40AmjLqjK5^^jMyiJd$f67nan^X%H=(1 zCxjs)ZbT4eidgeV(XL4QE8yGT!u#D|^9{rG0?*fZksp_mM28h7G#t2s=#%KM{6uH` zh5m`7Nt(U7Srl$Rxir*kLy)W!^(|-9p2NB+2b>h3vr1pkZhpGe=xk}iHG42 z8-PU%%rl|GYVaR#moTE!_t6)Z{Xjd05iOELEA)5ieLyqW$?>Dm6%jgkknaC(XEI&C z{eOLaulfBC&2Q~bp5Kq|`H}hk70nF`{|}zuEif2b&F_ZWWPZnfDf9b}jDzNP{qKJA z{Due}=C}EqwE4x3qM-pH1jJZzwdJ=$6yJoSSAe?afGoccA%+OYwBJ>rK@Pkwvc!0^ zf(MJg9>f*A2KJNwygDQ{R93&H#NpT{g6&|PI@4b_H~=ax)h9QVwqzmj09e~nk?CQ3 z6~^pLZ-p@>Gnb$8`3ba`>Em0Wyx~VN&|TGnr6yx=V7eT&o;VAfG^^p2%;4NtGJFu= z=IvyP`;i zt>#Bx;(Dun8a80q(;$mCcpxFX6`c-*cv0WvS1@oMYv4TAz)kRYjd321n@7eClHbE| z^Vs9&k#R!>I0>#PgmJ6D&f?t4PP_C0Q*dN<<6I0AG(ZeLKI;&J*c}2f23ZzDL|y;p zV8a|8Ec$a~1Ip;lpFv_3-4)0P8ZANNHN81e%tNb>k}n&KSHW(VAgj}f(12;!>Dy1H z4yJnSdk?~ij>fBWUyTIL&_|!E=#2mdF}er?38m~uqKn?gx`!2AWHmQ9V0_H5ywZrm zf{=p+xBRMihVe#)vD3kWpc@g?N?jrg7%|Dsk1+!j3XlTjYsN^J(wfaqn9^QwNyjN% z9IJRvg&a-UzZ04n&eL_uLX5;tuu_L3HDw#MlAku} zMC-T}8=yUJkam*ESJ5QS8U%hK{0J)) zxM8DHzb2_R;RTC3A=L=6u;GQw&>@-KgoBygxXd<~or`FLb2oD`iQFXzA@`q6h1>_) zMsDD=V7BhU>=Zhr%lAzj3t@TH_=RCXNF_LwLPPj$@B(}sBHr0r@y_ms83E&4XHpHM zgb#rQg>a&SzcL{^`f@pHgvSY?1kkim#Tfsj`0Yrv<2A_RfREifp^$D4szNB&S1nna z`m%gW#U^2NKoFl%w+UQo_NH7&icR_WzdMtC$Oe^c!lptRYE*i$k9bqDF>X@;l~sf3 z>BgXH@MV8zXm{|)3i{1L2nap1wOo?{0B}T|#*Sc#3!4D7hCA>A!iOh%5I6v$gmp8E zhdF7DcOoTdo)t95W(7f!G`@=)4RkkMMly$w@McsC_

{dD@=O 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 BF>~y?);#J45mRi{o$PA2=>-9j1J#V>=zS&Cy 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 diff --git a/wgpu-natives/src/main/resources/libwgpu_native.so b/wgpu-natives/src/main/resources/libwgpu_native.so deleted file mode 100644 index 49a057d15d77ec8e7affdfc5cf0d006e954541f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11224808 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

!epzRYnEyLC8nOM7WhJlsaw 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