Blender  V3.3
Public Member Functions | List of all members
blender::gpu::GPUBackend Class Referenceabstract

#include <gpu_backend.hh>

Inheritance diagram for blender::gpu::GPUBackend:
blender::gpu::GLBackend blender::gpu::MTLBackend

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)=0
 
virtual Batchbatch_alloc ()=0
 
virtual DrawListdrawlist_alloc (int list_length)=0
 
virtual FrameBufferframebuffer_alloc (const char *name)=0
 
virtual IndexBufindexbuf_alloc ()=0
 
virtual QueryPoolquerypool_alloc ()=0
 
virtual Shadershader_alloc (const char *name)=0
 
virtual Texturetexture_alloc (const char *name)=0
 
virtual UniformBufuniformbuf_alloc (int size, const char *name)=0
 
virtual StorageBufstoragebuf_alloc (int size, GPUUsageType usage, const char *name)=0
 
virtual VertBufvertbuf_alloc ()=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 30 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)
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

◆ framebuffer_alloc()

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

◆ get()

GPUBackend * GPUBackend::get ( )
static

◆ indexbuf_alloc()

virtual IndexBuf* blender::gpu::GPUBackend::indexbuf_alloc ( )
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

◆ storagebuf_alloc()

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

◆ texture_alloc()

virtual Texture* blender::gpu::GPUBackend::texture_alloc ( const char *  name)
pure virtual

◆ uniformbuf_alloc()

virtual UniformBuf* blender::gpu::GPUBackend::uniformbuf_alloc ( int  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: