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

#include <gpu_state_private.hh>

Inheritance diagram for blender::gpu::StateManager:
blender::gpu::GLStateManager blender::gpu::MTLStateManager

Public Member Functions

virtual ~StateManager ()
 
virtual void apply_state ()=0
 
virtual void force_state ()=0
 
virtual void issue_barrier (eGPUBarrier barrier_bits)=0
 
virtual void texture_bind (Texture *tex, eGPUSamplerState sampler, int unit)=0
 
virtual void texture_unbind (Texture *tex)=0
 
virtual void texture_unbind_all ()=0
 
virtual void image_bind (Texture *tex, int unit)=0
 
virtual void image_unbind (Texture *tex)=0
 
virtual void image_unbind_all ()=0
 
virtual void texture_unpack_row_length_set (uint len)=0
 
Default State
 StateManager ()
 

Public Attributes

GPUState state
 
GPUStateMutable mutable_state
 
bool use_bgl = false
 

Detailed Description

State manager keeping track of the draw state and applying it before drawing. Base class which is then specialized for each implementation (GL, VK, ...).

Definition at line 137 of file gpu_state_private.hh.

Constructor & Destructor Documentation

◆ StateManager()

StateManager::StateManager ( )

◆ ~StateManager()

virtual blender::gpu::StateManager::~StateManager ( )
inlinevirtual

Definition at line 145 of file gpu_state_private.hh.

Member Function Documentation

◆ apply_state()

virtual void blender::gpu::StateManager::apply_state ( )
pure virtual

◆ force_state()

virtual void blender::gpu::StateManager::force_state ( )
pure virtual

◆ image_bind()

virtual void blender::gpu::StateManager::image_bind ( Texture tex,
int  unit 
)
pure virtual

◆ image_unbind()

virtual void blender::gpu::StateManager::image_unbind ( Texture tex)
pure virtual

◆ image_unbind_all()

virtual void blender::gpu::StateManager::image_unbind_all ( )
pure virtual

◆ issue_barrier()

virtual void blender::gpu::StateManager::issue_barrier ( eGPUBarrier  barrier_bits)
pure virtual

◆ texture_bind()

virtual void blender::gpu::StateManager::texture_bind ( Texture tex,
eGPUSamplerState  sampler,
int  unit 
)
pure virtual

◆ texture_unbind()

virtual void blender::gpu::StateManager::texture_unbind ( Texture tex)
pure virtual

◆ texture_unbind_all()

virtual void blender::gpu::StateManager::texture_unbind_all ( )
pure virtual

◆ texture_unpack_row_length_set()

virtual void blender::gpu::StateManager::texture_unpack_row_length_set ( uint  len)
pure virtual

Member Data Documentation

◆ mutable_state

GPUStateMutable blender::gpu::StateManager::mutable_state

◆ state

GPUState blender::gpu::StateManager::state

◆ use_bgl

bool blender::gpu::StateManager::use_bgl = false

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