Event CommandQueue::enqueueUnmap(const Image2D& image, void *mappedPtr, const Epic::Core::Array<Event>& eventWaitList) const { Event ret; cl_int err = 0; Array<cl_event> events = eventArrayToCLEventArray(eventWaitList); err = clEnqueueUnmapMemObject(queueHandle(), image.imageHandle(), mappedPtr, events.count(), events.data(), ret.eventPointer()); EPIC_OPENCL_CHECK_ERROR(err) return ret; }
Event CommandQueue::enqueueWriteImage(const Image2D& image, bool blockingRead, const size_t origin[2], const size_t region[2], size_t rowPitch, void *pointer, const Epic::Core::Array<Event>& eventWaitList) const { Event ret; cl_int err = 0; Array<cl_event> events = eventArrayToCLEventArray(eventWaitList); const size_t orig[3] = { origin[0], origin[1], 0}; const size_t regn[3] = { region[0], region[1], 1}; err = clEnqueueWriteImage(queueHandle(), image.imageHandle(), blockingRead, orig, regn, rowPitch, 0, pointer, events.count(), events.data(), ret.eventPointer()); EPIC_OPENCL_CHECK_ERROR(err) return ret; }