Trait cognitive_qualia::traits::MemoryManagement [] [src]

pub trait MemoryManagement {
    fn create_memory_pool(&mut self, memory: Memory) -> MemoryPoolId;
    fn destroy_memory_pool(&mut self, mpid: MemoryPoolId) -> Option<Memory>;
    fn replace_memory_pool(&mut self, mpid: MemoryPoolId, memory: Memory);
    fn create_memory_view(
        &mut self,
        mpid: MemoryPoolId,
        format: PixelFormat,
        offset: usize,
        width: usize,
        height: usize,
        stride: usize
    ) -> Option<MemoryViewId>; fn destroy_memory_view(&mut self, mpid: MemoryViewId); }

Managing memory pools and views.

Required Methods

Creates new memory pool from mapped memory. Returns ID of newly created pool.

Schedules destruction of memory pool identified by given ID. The pool will be destructed when all its views go out of the scope.

If the poll was created from mapped memory, returns this memory.

Replaces mapped memory with other memory reusing its ID. This method may be used when client requests memory map resize.

Creates new memory view from mapped memory.

Destroys memory view.

Implementors