sdlSubmitGpuCommandBufferAndAcquireFence function

Pointer<SdlGpuFence> sdlSubmitGpuCommandBufferAndAcquireFence(
  1. Pointer<SdlGpuCommandBuffer> commandBuffer
)

Submits a command buffer so its commands can be processed on the GPU, and acquires a fence associated with the command buffer.

You must release this fence when it is no longer needed or it will cause a leak. It is invalid to use the command buffer after this is called.

This must be called from the thread the command buffer was acquired on.

All commands in the submission are guaranteed to begin executing before any command in a subsequent submission begins executing.

\param command_buffer a command buffer. \returns a fence associated with the command buffer, or NULL on failure; call SDL_GetError() for more information.

\since This function is available since SDL 3.1.3.

\sa SDL_AcquireGPUCommandBuffer \sa SDL_WaitAndAcquireGPUSwapchainTexture \sa SDL_AcquireGPUSwapchainTexture \sa SDL_SubmitGPUCommandBuffer \sa SDL_ReleaseGPUFence

extern SDL_DECLSPEC SDL_GPUFence *SDLCALL SDL_SubmitGPUCommandBufferAndAcquireFence( SDL_GPUCommandBuffer *command_buffer)

Implementation

Pointer<SdlGpuFence> sdlSubmitGpuCommandBufferAndAcquireFence(
    Pointer<SdlGpuCommandBuffer> commandBuffer) {
  final sdlSubmitGpuCommandBufferAndAcquireFenceLookupFunction =
      libSdl3.lookupFunction<
              Pointer<SdlGpuFence> Function(
                  Pointer<SdlGpuCommandBuffer> commandBuffer),
              Pointer<SdlGpuFence> Function(
                  Pointer<SdlGpuCommandBuffer> commandBuffer)>(
          'SDL_SubmitGPUCommandBufferAndAcquireFence');
  return sdlSubmitGpuCommandBufferAndAcquireFenceLookupFunction(commandBuffer);
}