25 #include "../vart_memory_types.hpp"
Abstract interface for memory implementation used by Memory.
Definition: vart_memory_impl_base.hpp:37
virtual int export_buffer() const =0
export_buffer() - Export the underlying buffer as a dma-buf file descriptor
virtual uint64_t get_physical_addr()=0
get_physical_addr() - Retrieves the physical address of the allocated memory if applicable.
virtual std::shared_ptr< Device > get_device_handle()=0
get_device_handle() - Retrieves the device handle associated with memory allocation
virtual const uint8_t * map(DataMapFlags map_flags)=0
map() - Maps allocated memory to user space
MemoryImplBase()=delete
Default construction is disabled.
MemoryImplBase(std::shared_ptr< Device > dev)
MemoryImplBase() - Constructor that takes device instance as an input.
Definition: vart_memory_impl_base.hpp:48
virtual void unmap()=0
unmap() - Unmaps allocated memory from user space.
virtual ~MemoryImplBase()
Virtual destructor to ensure proper cleanup of derived implementations.
Definition: vart_memory_impl_base.hpp:51
std::shared_ptr< Device > device
Device handle for this implementation.
Definition: vart_memory_impl_base.hpp:108
virtual size_t get_size()=0
get_size() - Retrieves the size of the allocated memory
VART (Vitis AI Runtime) public API namespace.
DataMapFlags
Definition: vart_memory_types.hpp:30