Function ocl_core::enqueue_map_buffer [] [src]

pub unsafe fn enqueue_map_buffer<T: OclPrm>(command_queue: &CommandQueue, buffer: &Mem, block: bool, map_flags: MapFlags, offset: usize, size: usize, wait_list: Option<&ClWaitList>, new_event: Option<&mut ClEventPtrNew>) -> OclResult<*mut c_void>

[UNTESTED] Enqueues a command to map a region of the buffer object given by buffer into the host address space and returns a pointer to this mapped region.

SDK Docs

Stability

This function will eventually return a safe wrapper for the mapped host memory. Until then, just create a Vec from the returned pointer using size / size_of::() as the length and capacity.

Safety

Caller must ensure that the returned pointer is not used until the map is complete. Use new_event to monitor it. [TEMPORARY] It also must be ensured that memory referred to by the returned pointer is not dropped, reused, or otherwise interfered with until enqueue_unmap_mem_object is called.

TODO: Return a new wrapped type representing the newly mapped memory.