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

Macros

#define _Class   _Framebuffer
 

Functions

static void dealloc (Object *self)
 
static Uint32 currentSlot (const Framebuffer *self, const GPU_FramebufferAttachment *attachment)
 Returns the physical slot index a double-buffered attachment is writing this frame.
 
static SDL_GPUColorTargetInfo colorTargetInfo (const Framebuffer *self, Uint32 index, SDL_GPULoadOp loadOp, SDL_GPUStoreOp storeOp)
 
static SDL_GPUDepthStencilTargetInfo depthTargetInfo (const Framebuffer *self, SDL_GPULoadOp loadOp, SDL_GPUStoreOp storeOp)
 
static void pipelineTargetInfo (const Framebuffer *self, const SDL_GPUColorTargetBlendState *blendStates, SDL_GPUColorTargetDescription *descriptions, SDL_GPUGraphicsPipelineTargetInfo *targetInfo)
 
static FramebufferinitWithDevice (Framebuffer *self, RenderDevice *device, const GPU_FramebufferCreateInfo *info)
 
static bool resize (Framebuffer *self, const SDL_Size *size)
 
static TextureresolveColorTexture (const Framebuffer *self, Uint32 index)
 
static TexturepreviousColorTexture (const Framebuffer *self, Uint32 index)
 
static TextureresolveDepthTexture (const Framebuffer *self)
 
static void swap (Framebuffer *self)
 
static void initialize (Class *clazz)
 
Class * _Framebuffer (void)
 

Macro Definition Documentation

◆ _Class

#define _Class   _Framebuffer

Function Documentation

◆ _Framebuffer()

Class * _Framebuffer ( void  )

◆ colorTargetInfo()

static SDL_GPUColorTargetInfo colorTargetInfo ( const Framebuffer self,
Uint32  index,
SDL_GPULoadOp  loadOp,
SDL_GPUStoreOp  storeOp 
)
static

◆ currentSlot()

static Uint32 currentSlot ( const Framebuffer self,
const GPU_FramebufferAttachment attachment 
)
static

Returns the physical slot index a double-buffered attachment is writing this frame.

◆ dealloc()

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

◆ depthTargetInfo()

static SDL_GPUDepthStencilTargetInfo depthTargetInfo ( const Framebuffer self,
SDL_GPULoadOp  loadOp,
SDL_GPUStoreOp  storeOp 
)
static

◆ initialize()

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

◆ initWithDevice()

static Framebuffer * initWithDevice ( Framebuffer self,
RenderDevice device,
const GPU_FramebufferCreateInfo info 
)
static

◆ pipelineTargetInfo()

static void pipelineTargetInfo ( const Framebuffer self,
const SDL_GPUColorTargetBlendState *  blendStates,
SDL_GPUColorTargetDescription *  descriptions,
SDL_GPUGraphicsPipelineTargetInfo *  targetInfo 
)
static

◆ previousColorTexture()

static Texture * previousColorTexture ( const Framebuffer self,
Uint32  index 
)
static

◆ resize()

static bool resize ( Framebuffer self,
const SDL_Size size 
)
static

◆ resolveColorTexture()

static Texture * resolveColorTexture ( const Framebuffer self,
Uint32  index 
)
static

◆ resolveDepthTexture()

static Texture * resolveDepthTexture ( const Framebuffer self)
static

◆ swap()

static void swap ( Framebuffer self)
static