ObjectivelyGPU
Object oriented graphics framework for SDL3 and C
Loading...
Searching...
No Matches
ComputePass.c File Reference
#include <assert.h>
#include "CommandBuffer.h"
#include "ComputePass.h"
#include "ComputePipeline.h"

Macros

#define _Class   _ComputePass
 

Functions

static void dealloc (Object *self)
 
static void bindPipeline (ComputePass *self, ComputePipeline *pipeline)
 
static void bindSamplers (const ComputePass *self, Uint32 firstSlot, const SDL_GPUTextureSamplerBinding *bindings, Uint32 num)
 
static void bindStorageBuffers (const ComputePass *self, Uint32 firstSlot, SDL_GPUBuffer *const *buffers, Uint32 num)
 
static void bindStorageTextures (const ComputePass *self, Uint32 firstSlot, SDL_GPUTexture *const *textures, Uint32 num)
 
static void dispatchCompute (const ComputePass *self, Uint32 groupCountX, Uint32 groupCountY, Uint32 groupCountZ)
 
static void dispatchComputeIndirect (const ComputePass *self, SDL_GPUBuffer *buffer, Uint32 offset)
 
static ComputePassinit (ComputePass *self, CommandBuffer *commands, SDL_GPUComputePass *pass)
 
static void initialize (Class *clazz)
 
Class * _ComputePass (void)
 

Macro Definition Documentation

◆ _Class

#define _Class   _ComputePass

Function Documentation

◆ _ComputePass()

Class * _ComputePass ( void  )

◆ bindPipeline()

static void bindPipeline ( ComputePass self,
ComputePipeline pipeline 
)
static

◆ bindSamplers()

static void bindSamplers ( const ComputePass self,
Uint32  firstSlot,
const SDL_GPUTextureSamplerBinding *  bindings,
Uint32  num 
)
static

◆ bindStorageBuffers()

static void bindStorageBuffers ( const ComputePass self,
Uint32  firstSlot,
SDL_GPUBuffer *const *  buffers,
Uint32  num 
)
static

◆ bindStorageTextures()

static void bindStorageTextures ( const ComputePass self,
Uint32  firstSlot,
SDL_GPUTexture *const *  textures,
Uint32  num 
)
static

◆ dealloc()

static void dealloc ( Object *  self)
static
See also
Object::dealloc(Object *)

◆ dispatchCompute()

static void dispatchCompute ( const ComputePass self,
Uint32  groupCountX,
Uint32  groupCountY,
Uint32  groupCountZ 
)
static

◆ dispatchComputeIndirect()

static void dispatchComputeIndirect ( const ComputePass self,
SDL_GPUBuffer *  buffer,
Uint32  offset 
)
static

◆ init()

static ComputePass * init ( ComputePass self,
CommandBuffer commands,
SDL_GPUComputePass *  pass 
)
static

◆ initialize()

static void initialize ( Class *  clazz)
static
See also
Class::initialize(Class *)