Blender V5.0
blender::gpu::MTLBufferPool Class Reference

#include <mtl_memory.hh>

Memory Management - MTLBufferPool and MTLSafeFreeList implementations

void init (id< MTLDevice > device)
 ~MTLBufferPool ()
gpu::MTLBufferallocate (uint64_t size, bool cpu_visible)
gpu::MTLBufferallocate_aligned (uint64_t size, uint alignment, bool cpu_visible)
gpu::MTLBufferallocate_with_data (uint64_t size, bool cpu_visible, const void *data=nullptr)
gpu::MTLBufferallocate_aligned_with_data (uint64_t size, uint alignment, bool cpu_visible, const void *data=nullptr)
bool free_buffer (gpu::MTLBuffer *buffer)
void update_memory_pools ()
MTLSafeFreeListget_current_safe_list ()
void begin_new_safe_list ()
void push_completed_safe_list (MTLSafeFreeList *list)

Detailed Description

Definition at line 364 of file mtl_memory.hh.

Constructor & Destructor Documentation

◆ ~MTLBufferPool()

blender::gpu::MTLBufferPool::~MTLBufferPool ( )

Definition at line 61 of file mtl_memory.mm.

Member Function Documentation

◆ allocate()

◆ allocate_aligned()

◆ allocate_aligned_with_data()

gpu::MTLBuffer * blender::gpu::MTLBufferPool::allocate_aligned_with_data ( uint64_t size,
uint alignment,
bool cpu_visible,
const void * data = nullptr )

◆ allocate_with_data()

gpu::MTLBuffer * blender::gpu::MTLBufferPool::allocate_with_data ( uint64_t size,
bool cpu_visible,
const void * data = nullptr )

◆ begin_new_safe_list()

void blender::gpu::MTLBufferPool::begin_new_safe_list ( )

◆ free_buffer()

◆ get_current_safe_list()

MTLSafeFreeList * blender::gpu::MTLBufferPool::get_current_safe_list ( )

◆ init()

void blender::gpu::MTLBufferPool::init ( id< MTLDevice > device)

Definition at line 35 of file mtl_memory.mm.

References begin_new_safe_list(), and BLI_assert.

Referenced by blender::gpu::MTLContext::MTLContext().

◆ push_completed_safe_list()

void blender::gpu::MTLBufferPool::push_completed_safe_list ( MTLSafeFreeList * list)

◆ update_memory_pools()


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