Blender V4.3
blender::gpu::GPUBackend Class Referenceabstract

#include <gpu_backend.hh>

Inherited by blender::gpu::DummyBackend, blender::gpu::GLBackend, blender::gpu::MTLBackend, and blender::gpu::VKBackend.

Public Member Functions

virtual ~GPUBackend ()=default
 
virtual void delete_resources ()=0
 
virtual void samplers_update ()=0
 
virtual void compute_dispatch (int groups_x_len, int groups_y_len, int groups_z_len)=0
 
virtual void compute_dispatch_indirect (StorageBuf *indirect_buf)=0
 
virtual Contextcontext_alloc (void *ghost_window, void *ghost_context)=0
 
virtual Batch * batch_alloc ()=0
 
virtual DrawListdrawlist_alloc (int list_length)=0
 
virtual Fencefence_alloc ()=0
 
virtual FrameBufferframebuffer_alloc (const char *name)=0
 
virtual IndexBufindexbuf_alloc ()=0
 
virtual PixelBufferpixelbuf_alloc (size_t size)=0
 
virtual QueryPoolquerypool_alloc ()=0
 
virtual Shadershader_alloc (const char *name)=0
 
virtual Texturetexture_alloc (const char *name)=0
 
virtual UniformBufuniformbuf_alloc (size_t size, const char *name)=0
 
virtual StorageBufstoragebuf_alloc (size_t size, GPUUsageType usage, const char *name)=0
 
virtual VertBufvertbuf_alloc ()=0
 
virtual void shader_cache_dir_clear_old ()=0
 
virtual void render_begin ()=0
 
virtual void render_end ()=0
 
virtual void render_step ()=0
 

Static Public Member Functions

Backend selection
static GPUBackendget ()
 

Detailed Description

Definition at line 33 of file gpu_backend.hh.

Constructor & Destructor Documentation

◆ ~GPUBackend()

virtual blender::gpu::GPUBackend::~GPUBackend ( )
virtualdefault

Member Function Documentation

◆ batch_alloc()

virtual Batch * blender::gpu::GPUBackend::batch_alloc ( )
pure virtual

◆ compute_dispatch()

virtual void blender::gpu::GPUBackend::compute_dispatch ( int groups_x_len,
int groups_y_len,
int groups_z_len )
pure virtual

◆ compute_dispatch_indirect()

virtual void blender::gpu::GPUBackend::compute_dispatch_indirect ( StorageBuf * indirect_buf)
pure virtual

◆ context_alloc()

virtual Context * blender::gpu::GPUBackend::context_alloc ( void * ghost_window,
void * ghost_context )
pure virtual

◆ delete_resources()

virtual void blender::gpu::GPUBackend::delete_resources ( )
pure virtual

◆ drawlist_alloc()

virtual DrawList * blender::gpu::GPUBackend::drawlist_alloc ( int list_length)
pure virtual

◆ fence_alloc()

virtual Fence * blender::gpu::GPUBackend::fence_alloc ( )
pure virtual

◆ framebuffer_alloc()

virtual FrameBuffer * blender::gpu::GPUBackend::framebuffer_alloc ( const char * name)
pure virtual

◆ get()

◆ indexbuf_alloc()

virtual IndexBuf * blender::gpu::GPUBackend::indexbuf_alloc ( )
pure virtual

◆ pixelbuf_alloc()

virtual PixelBuffer * blender::gpu::GPUBackend::pixelbuf_alloc ( size_t size)
pure virtual

◆ querypool_alloc()

virtual QueryPool * blender::gpu::GPUBackend::querypool_alloc ( )
pure virtual

◆ render_begin()

virtual void blender::gpu::GPUBackend::render_begin ( )
pure virtual

◆ render_end()

virtual void blender::gpu::GPUBackend::render_end ( )
pure virtual

◆ render_step()

virtual void blender::gpu::GPUBackend::render_step ( )
pure virtual

◆ samplers_update()

virtual void blender::gpu::GPUBackend::samplers_update ( )
pure virtual

◆ shader_alloc()

virtual Shader * blender::gpu::GPUBackend::shader_alloc ( const char * name)
pure virtual

◆ shader_cache_dir_clear_old()

virtual void blender::gpu::GPUBackend::shader_cache_dir_clear_old ( )
pure virtual

◆ storagebuf_alloc()

virtual StorageBuf * blender::gpu::GPUBackend::storagebuf_alloc ( size_t size,
GPUUsageType usage,
const char * name )
pure virtual

◆ texture_alloc()

◆ uniformbuf_alloc()

virtual UniformBuf * blender::gpu::GPUBackend::uniformbuf_alloc ( size_t size,
const char * name )
pure virtual

◆ vertbuf_alloc()

virtual VertBuf * blender::gpu::GPUBackend::vertbuf_alloc ( )
pure virtual

The documentation for this class was generated from the following files: