Class CL11
- java.lang.Object
-
- org.lwjgl.opencl.CL11
-
public class CL11 extends java.lang.ObjectThe core OpenCL 1.1 functionality.
-
-
Field Summary
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static longclCreateSubBuffer(long buffer, long flags, int buffer_create_type, java.nio.ByteBuffer buffer_create_info, int[] errcode_ret)Array version of:CreateSubBufferstatic longclCreateSubBuffer(long buffer, long flags, int buffer_create_type, java.nio.ByteBuffer buffer_create_info, java.nio.IntBuffer errcode_ret)Creates a new buffer object (referred to as a sub-buffer object) from an existing buffer object.static longclCreateUserEvent(long context, int[] errcode_ret)Array version of:CreateUserEventstatic longclCreateUserEvent(long context, java.nio.IntBuffer errcode_ret)Creates a user event object.static intclEnqueueCopyBufferRect(long command_queue, long src_buffer, long dst_buffer, PointerBuffer src_origin, PointerBuffer dst_origin, PointerBuffer region, long src_row_pitch, long src_slice_pitch, long dst_row_pitch, long dst_slice_pitch, PointerBuffer event_wait_list, PointerBuffer event)Enqueues a command to copy a 2D or 3D rectangular region from the buffer object identified bysrc_bufferto a 2D or 3D region in the buffer object identified bydst_buffer.static intclEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.ByteBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)Enqueues a command to read a 2D or 3D rectangular region from a buffer object to host memory.static intclEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, double[] ptr, PointerBuffer event_wait_list, PointerBuffer event)double[] version of:EnqueueReadBufferRectstatic intclEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.DoubleBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)DoubleBuffer version of:EnqueueReadBufferRectstatic intclEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, float[] ptr, PointerBuffer event_wait_list, PointerBuffer event)float[] version of:EnqueueReadBufferRectstatic intclEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.FloatBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)FloatBuffer version of:EnqueueReadBufferRectstatic intclEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, int[] ptr, PointerBuffer event_wait_list, PointerBuffer event)int[] version of:EnqueueReadBufferRectstatic intclEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.IntBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)IntBuffer version of:EnqueueReadBufferRectstatic intclEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, short[] ptr, PointerBuffer event_wait_list, PointerBuffer event)short[] version of:EnqueueReadBufferRectstatic intclEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.ShortBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)ShortBuffer version of:EnqueueReadBufferRectstatic intclEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.ByteBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)Enqueues a command to write a 2D or 3D rectangular region to a buffer object from host memory.static intclEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, double[] ptr, PointerBuffer event_wait_list, PointerBuffer event)double[] version of:EnqueueWriteBufferRectstatic intclEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.DoubleBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)DoubleBuffer version of:EnqueueWriteBufferRectstatic intclEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, float[] ptr, PointerBuffer event_wait_list, PointerBuffer event)float[] version of:EnqueueWriteBufferRectstatic intclEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.FloatBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)FloatBuffer version of:EnqueueWriteBufferRectstatic intclEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, int[] ptr, PointerBuffer event_wait_list, PointerBuffer event)int[] version of:EnqueueWriteBufferRectstatic intclEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.IntBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)IntBuffer version of:EnqueueWriteBufferRectstatic intclEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, short[] ptr, PointerBuffer event_wait_list, PointerBuffer event)short[] version of:EnqueueWriteBufferRectstatic intclEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.ShortBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)ShortBuffer version of:EnqueueWriteBufferRectstatic intclSetEventCallback(long event, int command_exec_callback_type, CLEventCallbackI pfn_notify, long user_data)Registers a user callback function for a specific command execution status.static intclSetMemObjectDestructorCallback(long memobj, CLMemObjectDestructorCallbackI pfn_notify, long user_data)Registers a user callback function with a memory object.static intclSetUserEventStatus(long event, int execution_status)Sets the execution status of a user event object.
-
-
-
Field Detail
-
CL_MISALIGNED_SUB_BUFFER_OFFSET
public static final int CL_MISALIGNED_SUB_BUFFER_OFFSET
Error Codes.- See Also:
- Constant Field Values
-
CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST
public static final int CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST
Error Codes.- See Also:
- Constant Field Values
-
CL_INVALID_PROPERTY
public static final int CL_INVALID_PROPERTY
Error Codes.- See Also:
- Constant Field Values
-
CL_VERSION_1_1
public static final int CL_VERSION_1_1
OpenCL Version.- See Also:
- Constant Field Values
-
CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF
public static final int CL_DEVICE_PREFERRED_VECTOR_WIDTH_HALF
cl_device_info.- See Also:
- Constant Field Values
-
CL_DEVICE_HOST_UNIFIED_MEMORY
public static final int CL_DEVICE_HOST_UNIFIED_MEMORY
cl_device_info.- See Also:
- Constant Field Values
-
CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR
public static final int CL_DEVICE_NATIVE_VECTOR_WIDTH_CHAR
cl_device_info.- See Also:
- Constant Field Values
-
CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT
public static final int CL_DEVICE_NATIVE_VECTOR_WIDTH_SHORT
cl_device_info.- See Also:
- Constant Field Values
-
CL_DEVICE_NATIVE_VECTOR_WIDTH_INT
public static final int CL_DEVICE_NATIVE_VECTOR_WIDTH_INT
cl_device_info.- See Also:
- Constant Field Values
-
CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG
public static final int CL_DEVICE_NATIVE_VECTOR_WIDTH_LONG
cl_device_info.- See Also:
- Constant Field Values
-
CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT
public static final int CL_DEVICE_NATIVE_VECTOR_WIDTH_FLOAT
cl_device_info.- See Also:
- Constant Field Values
-
CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE
public static final int CL_DEVICE_NATIVE_VECTOR_WIDTH_DOUBLE
cl_device_info.- See Also:
- Constant Field Values
-
CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF
public static final int CL_DEVICE_NATIVE_VECTOR_WIDTH_HALF
cl_device_info.- See Also:
- Constant Field Values
-
CL_DEVICE_OPENCL_C_VERSION
public static final int CL_DEVICE_OPENCL_C_VERSION
cl_device_info.- See Also:
- Constant Field Values
-
CL_FP_SOFT_FLOAT
public static final int CL_FP_SOFT_FLOAT
cl_device_fp_config - bitfield.- See Also:
- Constant Field Values
-
CL_CONTEXT_NUM_DEVICES
public static final int CL_CONTEXT_NUM_DEVICES
cl_context_info.- See Also:
- Constant Field Values
-
CL_Rx
public static final int CL_Rx
cl_channel_order.- See Also:
- Constant Field Values
-
CL_RGx
public static final int CL_RGx
cl_channel_order.- See Also:
- Constant Field Values
-
CL_RGBx
public static final int CL_RGBx
cl_channel_order.- See Also:
- Constant Field Values
-
CL_MEM_ASSOCIATED_MEMOBJECT
public static final int CL_MEM_ASSOCIATED_MEMOBJECT
cl_mem_info.- See Also:
- Constant Field Values
-
CL_MEM_OFFSET
public static final int CL_MEM_OFFSET
cl_mem_info.- See Also:
- Constant Field Values
-
CL_ADDRESS_MIRRORED_REPEAT
public static final int CL_ADDRESS_MIRRORED_REPEAT
cl_addressing_mode.- See Also:
- Constant Field Values
-
CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE
public static final int CL_KERNEL_PREFERRED_WORK_GROUP_SIZE_MULTIPLE
cl_kernel_work_group_info.- See Also:
- Constant Field Values
-
CL_KERNEL_PRIVATE_MEM_SIZE
public static final int CL_KERNEL_PRIVATE_MEM_SIZE
cl_kernel_work_group_info.- See Also:
- Constant Field Values
-
CL_EVENT_CONTEXT
public static final int CL_EVENT_CONTEXT
cl_event_info.- See Also:
- Constant Field Values
-
CL_COMMAND_READ_BUFFER_RECT
public static final int CL_COMMAND_READ_BUFFER_RECT
cl_command_type.- See Also:
- Constant Field Values
-
CL_COMMAND_WRITE_BUFFER_RECT
public static final int CL_COMMAND_WRITE_BUFFER_RECT
cl_command_type.- See Also:
- Constant Field Values
-
CL_COMMAND_COPY_BUFFER_RECT
public static final int CL_COMMAND_COPY_BUFFER_RECT
cl_command_type.- See Also:
- Constant Field Values
-
CL_COMMAND_USER
public static final int CL_COMMAND_USER
cl_command_type.- See Also:
- Constant Field Values
-
CL_BUFFER_CREATE_TYPE_REGION
public static final int CL_BUFFER_CREATE_TYPE_REGION
cl_buffer_create_type.- See Also:
- Constant Field Values
-
-
Method Detail
-
clCreateSubBuffer
public static long clCreateSubBuffer(long buffer, long flags, int buffer_create_type, java.nio.ByteBuffer buffer_create_info, java.nio.IntBuffer errcode_ret)Creates a new buffer object (referred to as a sub-buffer object) from an existing buffer object.NOTE: Concurrent reading from, writing to and copying between both a buffer object and its sub-buffer object(s) is undefined. Concurrent reading from, writing to and copying between overlapping sub-buffer objects created with the same buffer object is undefined. Only reading from both a buffer object and its sub-buffer objects or reading from multiple overlapping sub-buffer objects is defined.
- Parameters:
buffer- a valid buffer object and cannot be a sub-buffer objectflags- a bit-field that is used to specify allocation and usage information about the sub-buffer memory object being created.If the
MEM_READ_WRITE,MEM_READ_ONLYorMEM_WRITE_ONLYvalues are not specified in flags, they are inherited from the corresponding memory access qualifers associated with buffer. TheMEM_USE_HOST_PTR,MEM_ALLOC_HOST_PTRandMEM_COPY_HOST_PTRvalues cannot be specified in flags but are inherited from the corresponding memory access qualifiers associated with buffer. IfMEM_COPY_HOST_PTRis specified in the memory access qualifier values associated with buffer it does not imply any additional copies when the sub-buffer is created from buffer. If theMEM_HOST_WRITE_ONLY,MEM_HOST_READ_ONLYorMEM_HOST_NO_ACCESSvalues are not specified in flags, they are inherited from the corresponding memory access qualifiers associated with buffer.buffer_create_type- the type of buffer object to be created. Must be:BUFFER_CREATE_TYPE_REGIONbuffer_create_info- details about the buffer object to be created.When
buffer_create_typeisBUFFER_CREATE_TYPE_REGION, thenbuffer_create_infois a pointer to aCLBufferRegionstructure.(origin, size)defines the offset and size in bytes in buffer.errcode_ret- will return an appropriate error code. Iferrcode_retisNULL, no error code is returned.- Returns:
SUCCESSif the function is executed successfully. Otherwise, it returns one of the following errors inerrcode_ret:INVALID_MEM_OBJECTifbufferis not a valid buffer object or is a sub-buffer object.INVALID_VALUEifbufferwas created withMEM_WRITE_ONLYandflagsspecifiesMEM_READ_WRITEorMEM_READ_ONLY, or ifbufferwas created withMEM_READ_ONLYandflagsspecifiesMEM_READ_WRITEorMEM_WRITE_ONLY, or ifflagsspecifiesMEM_USE_HOST_PTRorMEM_ALLOC_HOST_PTRorMEM_COPY_HOST_PTR.INVALID_VALUEifbufferwas created withMEM_HOST_WRITE_ONLYandflagsspecifyMEM_HOST_READ_ONLY, or ifbufferwas created withMEM_HOST_READ_ONLYandflagsspecifyMEM_HOST_WRITE_ONLY, or ifbufferwas created withMEM_HOST_NO_ACCESSandflagsspecifyMEM_HOST_READ_ONLYorMEM_HOST_WRITE_ONLY.INVALID_VALUEif value specified inbuffer_create_typeis not valid.INVALID_VALUEif value(s) specified inbuffer_create_info(for a givenbuffer_create_type) is not valid or ifbuffer_create_infoisNULL.INVALID_BUFFER_SIZEifsizeis 0.MEM_OBJECT_ALLOCATION_FAILUREif there is a failure to allocate memory for sub-buffer object.OUT_OF_RESOURCESif there is a failure to allocate resources required by the OpenCL implementation on the device.OUT_OF_HOST_MEMORYif there is a failure to allocate resources required by the OpenCL implementation on the host.
-
clSetMemObjectDestructorCallback
public static int clSetMemObjectDestructorCallback(long memobj, CLMemObjectDestructorCallbackI pfn_notify, long user_data)Registers a user callback function with a memory object. Each call toclSetMemObjectDestructorCallbackregisters the specified user callback function on a callback stack associated withmemobj. The registered user callback functions are called in the reverse order in which they were registered. The user callback functions are called and then the memory object's resources are freed and the memory object is deleted. This provides a mechanism for the application (and libraries) usingmemobjto be notified when the memory referenced byhost_ptr, specified when the memory object is created and used as the storage bits for the memory object, can be reused or freed.- Parameters:
memobj- a valid memory objectpfn_notify- the callback function that can be registered by the application. This callback function may be called asynchronously by the OpenCL implementation. It is the application's responsibility to ensure that the callback function is thread-safe.user_data- will be passed as theuser_dataargument whenpfn_notifyis called.user_datacan beNULL.- Returns:
SUCCESSif the function is executed successfully. Otherwise, it returns one of the following errors:INVALID_MEM_OBJECTifmemobjis not a valid memory object.INVALID_VALUEifpfn_notifyis NULL.OUT_OF_RESOURCESif there is a failure to allocate resources required by the OpenCL implementation on the device.OUT_OF_HOST_MEMORYif there is a failure to allocate resources required by the OpenCL implementation on the host.
-
clEnqueueReadBufferRect
public static int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.ByteBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)Enqueues a command to read a 2D or 3D rectangular region from a buffer object to host memory.Calling
clEnqueueReadBufferRectto read a region of the buffer object with theptrargument value set tohost_ptrandhost_origin,buffer_originvalues are the same, wherehost_ptris a pointer to the memory region specified when the buffer object being read is created withMEM_USE_HOST_PTR, must meet the following requirements in order to avoid undefined behavior:- All commands that use this buffer object or a memory object (buffer or image) created from this buffer object have finished execution before the read command begins execution.
- The buffer object or memory objects created from this buffer object are not mapped.
- The buffer object or memory objects created from this buffer object are not used by any command-queue until the read command has finished execution.
- Parameters:
command_queue- the command-queue in which the read command will be queued.command_queueandbuffermust be created with the same OpenCL context.buffer- a valid buffer objectblocking_read- indicates if the read operation is blocking or nonblocking.If
blocking_readisTRUEi.e. the read command is blocking,clEnqueueReadBufferRectdoes not return until the buffer data has been read and copied into memory pointed to byptr.If
blocking_readisFALSEi.e. the read command is non-blocking,clEnqueueReadBufferRectqueues a non-blocking read command and returns. The contents of the buffer thatptrpoints to cannot be used until the read command has completed. Theeventargument returns an event object which can be used to query the execution status of the read command. When the read command has completed, the contents of the buffer thatptrpoints to can be used by the application.buffer_offset- the(x, y, z)offset in the memory region associated withbuffer. For a 2D rectangle region, the z value given bybuffer_origin[2]should be 0. The offset in bytes is computed asbuffer_origin[2] * buffer_slice_pitch + buffer_origin[1] * buffer_row_pitch + buffer_origin[0].host_offset- the(x, y, z)offset in the memory region pointed to byptr. For a 2D rectangle region, the z value given byhost_origin[2]should be 0. The offset in bytes is computed ashost_origin[2] * host_slice_pitch + host_origin[1] * host_row_pitch + host_origin[0].region- the (width in bytes, height in rows, depth in slices) of the 2D or 3D rectangle being read or written. For a 2D rectangle copy, the depth value given byregion[2]should be 1. The values in region cannot be 0.buffer_row_pitch- the length of each row in bytes to be used for the memory region associated withbuffer. Ifbuffer_row_pitchis 0,buffer_row_pitchis computed asregion[0].buffer_slice_pitch- the length of each 2D slice in bytes to be used for the memory region associated withbuffer. Ifbuffer_slice_pitchis 0,buffer_slice_pitchis computed asregion[1] * buffer_row_pitch.host_row_pitch- the length of each row in bytes to be used for the memory region pointed to byptr. Ifhost_row_pitchis 0,host_row_pitchis computed asregion[0].host_slice_pitch- the length of each 2D slice in bytes to be used for the memory region pointed to byptr. Ifhost_slice_pitchis 0,host_slice_pitchis computed asregion[1] * host_row_pitch.ptr- the pointer to buffer in host memory where data is to be read intoevent_wait_list- a list of events that need to complete before this particular command can be executed. Ifevent_wait_listisNULL, then this particular command does not wait on any event to complete. The events specified inevent_wait_listact as synchronization points. The context associated with events inevent_wait_listandcommand_queuemust be the same.event- Returns an event object that identifies this particular command and can be used to query or queue a wait for this particular command to complete.eventcan beNULLin which case it will not be possible for the application to query the status of this command or queue a wait for this command to complete. If theevent_wait_listand theeventarguments are notNULL, the event argument should not refer to an element of theevent_wait_listarray.- Returns:
SUCCESSif the function is executed successfully. Otherwise, it returns one of the following errors:INVALID_COMMAND_QUEUEifcommand_queueis not a valid command-queue.INVALID_CONTEXTif the context associated withcommand_queueandbufferare not the same or if the context associated withcommand_queueand events inevent_wait_listare not the same.INVALID_MEM_OBJECTifbufferis not a valid buffer object.INVALID_VALUEif the region being read specified by(buffer_origin, region, buffer_row_pitch, buffer_slice_pitch)is out of bounds.INVALID_VALUEifptris aNULLvalue.INVALID_VALUEif anyregionarray element is 0.INVALID_VALUEifbuffer_row_pitchis not 0 and is less thanregion[0].INVALID_VALUEifhost_row_pitchis not 0 and is less thanregion[0].INVALID_VALUEifbuffer_slice_pitchis not 0 and is less thanregion[1] * buffer_row_pitchand not a multiple ofbuffer_row_pitch.INVALID_VALUEifhost_slice_pitchis not 0 and is less thanregion[1] * host_row_pitchand not a multiple ofhost_row_pitch.INVALID_EVENT_WAIT_LISTifevent_wait_listisNULLandnum_events_in_wait_list> 0, orevent_wait_listis notNULLandnum_events_in_wait_listis 0, or if event objects inevent_wait_listare not valid events.MISALIGNED_SUB_BUFFER_OFFSETifbufferis a sub-buffer object and offset specified when the sub-buffer object is created is not aligned toDEVICE_MEM_BASE_ADDR_ALIGNvalue for device associated with queue.EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LISTif the read operation is blocking and the execution status of any of the events inevent_wait_listis a negative integer value.MEM_OBJECT_ALLOCATION_FAILUREif there is a failure to allocate memory for data store associated withbuffer.INVALID_OPERATIONifclEnqueueReadBufferRectis called on buffer which has been created withMEM_HOST_WRITE_ONLYorMEM_HOST_NO_ACCESS.OUT_OF_RESOURCESif there is a failure to allocate resources required by the OpenCL implementation on the device.OUT_OF_HOST_MEMORYif there is a failure to allocate resources required by the OpenCL implementation on the host.
-
clEnqueueReadBufferRect
public static int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.ShortBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)ShortBuffer version of:EnqueueReadBufferRect
-
clEnqueueReadBufferRect
public static int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.IntBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)IntBuffer version of:EnqueueReadBufferRect
-
clEnqueueReadBufferRect
public static int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.FloatBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)FloatBuffer version of:EnqueueReadBufferRect
-
clEnqueueReadBufferRect
public static int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.DoubleBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)DoubleBuffer version of:EnqueueReadBufferRect
-
clEnqueueWriteBufferRect
public static int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.ByteBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)Enqueues a command to write a 2D or 3D rectangular region to a buffer object from host memory.Calling
clEnqueueWriteBufferRectto update the latest bits in a region of the buffer object with theptrargument value set tohost_ptrandhost_origin,buffer_originvalues are the same, wherehost_ptris a pointer to the memory region specified when the buffer object being written is created withMEM_USE_HOST_PTR, must meet the following requirements in order to avoid undefined behavior:- The host memory region given by
(buffer_origin region)contains the latest bits when the enqueued write command begins execution. - The buffer object or memory objects created from this buffer object are not mapped.
- The buffer object or memory objects created from this buffer object are not used by any command-queue until the write command has finished execution.
- Parameters:
command_queue- the command-queue in which the write command will be queued.command_queueandbuffermust be created with the same OpenCL context.buffer- a valid buffer objectblocking_write- indicates if the write operation is blocking or nonblocking.If
blocking_writeisTRUE, the OpenCL implementation copies the data referred to byptrand enqueues the write operation in the command-queue. The memory pointed to byptrcan be reused by the application after theclEnqueueWriteBufferRectcall returns.If
blocking_writeisFALSE, the OpenCL implementation will useptrto perform a non-blocking write. As the write is non-blocking the implementation can return immediately. The memory pointed to byptrcannot be reused by the application after the call returns. Theeventargument returns an event object which can be used to query the execution status of the write command. When the write command has completed, the memory pointed to byptrcan then be reused by the application.buffer_offset- the(x, y, z)offset in the memory region associated withbuffer. For a 2D rectangle region, the z value given bybuffer_origin[2]should be 0. The offset in bytes is computed asbuffer_origin[2] * buffer_slice_pitch + buffer_origin[1] * buffer_row_pitch + buffer_origin[0].host_offset- the(x, y, z)offset in the memory region pointed to byptr. For a 2D rectangle region, the z value given byhost_origin[2]should be 0. The offset in bytes is computed ashost_origin[2] * host_slice_pitch + host_origin[1] * host_row_pitch + host_origin[0].region- the (width in bytes, height in rows, depth in slices) of the 2D or 3D rectangle being read or written. For a 2D rectangle copy, the depth value given byregion[2]should be 1. The values in region cannot be 0.buffer_row_pitch- the length of each row in bytes to be used for the memory region associated withbuffer. Ifbuffer_row_pitchis 0,buffer_row_pitchis computed asregion[0].buffer_slice_pitch- the length of each 2D slice in bytes to be used for the memory region associated withbuffer. Ifbuffer_slice_pitchis 0,buffer_slice_pitchis computed asregion[1] * buffer_row_pitch.host_row_pitch- the length of each row in bytes to be used for the memory region pointed to byptr. Ifhost_row_pitchis 0,host_row_pitchis computed asregion[0].host_slice_pitch- the length of each 2D slice in bytes to be used for the memory region pointed to byptr. Ifhost_slice_pitchis 0,host_slice_pitchis computed asregion[1] * host_row_pitch.ptr- the pointer to buffer in host memory where data is to be written fromevent_wait_list- a list of events that need to complete before this particular command can be executed. Ifevent_wait_listisNULL, then this particular command does not wait on any event to complete. The events specified inevent_wait_listact as synchronization points. The context associated with events inevent_wait_listandcommand_queuemust be the same.event- Returns an event object that identifies this particular command and can be used to query or queue a wait for this particular command to complete.eventcan beNULLin which case it will not be possible for the application to query the status of this command or queue a wait for this command to complete. If theevent_wait_listand theeventarguments are notNULL, the event argument should not refer to an element of theevent_wait_listarray.- Returns:
SUCCESSif the function is executed successfully. Otherwise, it returns one of the following errors:INVALID_COMMAND_QUEUEifcommand_queueis not a valid command-queue.INVALID_CONTEXTif the context associated withcommand_queueandbufferare not the same or if the context associated withcommand_queueand events inevent_wait_listare not the same.INVALID_MEM_OBJECTifbufferis not a valid buffer object.INVALID_VALUEif the region being written specified by(buffer_origin, region, buffer_row_pitch, buffer_slice_pitch)is out of bounds.INVALID_VALUEifptris aNULLvalue.INVALID_VALUEif anyregionarray element is 0.INVALID_VALUEifbuffer_row_pitchis not 0 and is less thanregion[0].INVALID_VALUEifhost_row_pitchis not 0 and is less thanregion[0].INVALID_VALUEifbuffer_slice_pitchis not 0 and is less thanregion[1] * buffer_row_pitchand not a multiple ofbuffer_row_pitch.INVALID_VALUEifhost_slice_pitchis not 0 and is less thanregion[1] * host_row_pitchand not a multiple ofhost_row_pitch.INVALID_EVENT_WAIT_LISTifevent_wait_listisNULLandnum_events_in_wait_list> 0, orevent_wait_listis notNULLandnum_events_in_wait_listis 0, or if event objects inevent_wait_listare not valid events.MISALIGNED_SUB_BUFFER_OFFSETifbufferis a sub-buffer object and offset specified when the sub-buffer object is created is not aligned toDEVICE_MEM_BASE_ADDR_ALIGNvalue for device associated with queue.EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LISTif the write operation is blocking and the execution status of any of the events inevent_wait_listis a negative integer value.MEM_OBJECT_ALLOCATION_FAILUREif there is a failure to allocate memory for data store associated withbuffer.INVALID_OPERATIONifclEnqueueWriteBufferRectis called on buffer which has been created withMEM_HOST_READ_ONLYorMEM_HOST_NO_ACCESS.OUT_OF_RESOURCESif there is a failure to allocate resources required by the OpenCL implementation on the device.OUT_OF_HOST_MEMORYif there is a failure to allocate resources required by the OpenCL implementation on the host.
- The host memory region given by
-
clEnqueueWriteBufferRect
public static int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.ShortBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)ShortBuffer version of:EnqueueWriteBufferRect
-
clEnqueueWriteBufferRect
public static int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.IntBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)IntBuffer version of:EnqueueWriteBufferRect
-
clEnqueueWriteBufferRect
public static int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.FloatBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)FloatBuffer version of:EnqueueWriteBufferRect
-
clEnqueueWriteBufferRect
public static int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, java.nio.DoubleBuffer ptr, PointerBuffer event_wait_list, PointerBuffer event)DoubleBuffer version of:EnqueueWriteBufferRect
-
clEnqueueCopyBufferRect
public static int clEnqueueCopyBufferRect(long command_queue, long src_buffer, long dst_buffer, PointerBuffer src_origin, PointerBuffer dst_origin, PointerBuffer region, long src_row_pitch, long src_slice_pitch, long dst_row_pitch, long dst_slice_pitch, PointerBuffer event_wait_list, PointerBuffer event)Enqueues a command to copy a 2D or 3D rectangular region from the buffer object identified bysrc_bufferto a 2D or 3D region in the buffer object identified bydst_buffer. Copying begins at the source offset and destination offset which are computed as described below in the description forsrc_originanddst_origin. Each byte of the region's width is copied from the source offset to the destination offset. After copying each width, the source and destination offsets are incremented by their respective source and destination row pitches. After copying each 2D rectangle, the source and destination offsets are incremented by their respective source and destination slice pitches.NOTE: If
src_bufferanddst_bufferare the same buffer object,src_row_pitchmust equaldst_row_pitchandsrc_slice_pitchmust equaldst_slice_pitch.- Parameters:
command_queue- the command-queue in which the copy command will be queued. The OpenCL context associated withcommand_queue,src_bufferanddst_buffermust be the same.src_buffer- the source bufferdst_buffer- the destination buffersrc_origin- the(x, y, z)offset in the memory region associated withsrc_buffer. For a 2D rectangle region, the z value given bysrc_origin[2]should be 0. The offset in bytes is computed assrc_origin[2] * src_slice_pitch + src_origin[1] * src_row_pitch + src_origin[0].dst_origin- the(x, y, z)offset in the memory region associated withdst_buffer. For a 2D rectangle region, the z value given bydst_origin[2]should be 0. The offset in bytes is computed asdst_origin[2] * dst_slice_pitch + dst_origin[1] * dst_row_pitch + dst_origin[0].region- the (widthin bytes,heightin rows,depthin slices) of the 2D or 3D rectangle being copied. For a 2D rectangle, the depth value given byregion[2]should be 1. The values inregioncannot be 0.src_row_pitch- the length of each row in bytes to be used for the memory region associated withsrc_buffer. Ifsrc_row_pitchis 0,src_row_pitchis computed asregion[0].src_slice_pitch- the length of each 2D slice in bytes to be used for the memory region associated withsrc_buffer. Ifsrc_slice_pitchis 0,src_slice_pitchis computed asregion[1] * src_row_pitch.dst_row_pitch- the length of each row in bytes to be used for the memory region associated withdst_buffer. Ifdst_row_pitchis 0,dst_row_pitchis computed asregion[0].dst_slice_pitch- the length of each 2D slice in bytes to be used for the memory region associated withdst_buffer. Ifdst_slice_pitchis 0,dst_slice_pitchis computed asregion[1] * dst_row_pitch.event_wait_list- a list of events that need to complete before this particular command can be executed. Ifevent_wait_listisNULL, then this particular command does not wait on any event to complete. The events specified inevent_wait_listact as synchronization points. The context associated with events inevent_wait_listandcommand_queuemust be the same.event- Returns an event object that identifies this particular command and can be used to query or queue a wait for this particular command to complete.eventcan beNULLin which case it will not be possible for the application to query the status of this command or queue a wait for this command to complete. If theevent_wait_listand theeventarguments are notNULL, the event argument should not refer to an element of theevent_wait_listarray.- Returns:
SUCCESSif the function is executed successfully. Otherwise, it returns one of the following errors:INVALID_COMMAND_QUEUEifcommand_queueis not a valid command-queue.INVALID_CONTEXTif the context associated withcommand_queue,src_bufferanddst_bufferare not the same or if the context associated withcommand_queueand events inevent_wait_listare not the same.INVALID_MEM_OBJECTifsrc_bufferanddst_bufferare not valid buffer objects.INVALID_VALUEif(src_origin, region, src_row_pitch, src_slice_pitch)or(dst_origin, region, dst_row_pitch, dst_slice_pitch)require accessing elements outside thesrc_bufferanddst_bufferbuffer objects respectively.INVALID_VALUEif anyregionarray element is 0.INVALID_VALUEifsrc_row_pitchis not 0 and is less thanregion[0].INVALID_VALUEifdst_row_pitchis not 0 and is less thanregion[0].INVALID_VALUEifsrc_slice_pitchis not 0 and is less thanregion[1] * src_row_pitchor ifsrc_slice_pitchis not 0 and is not a multiple ofsrc_row_pitch.INVALID_VALUEifdst_slice_pitchis not 0 and is less thanregion[1] * dst_row_pitchor ifdst_slice_pitchis not 0 and is not a multiple ofdst_row_pitch.INVALID_VALUEifsrc_bufferanddst_bufferare the same buffer object andsrc_slice_pitchis not equal todst_slice_pitchandsrc_row_pitchis not equal todst_row_pitch.INVALID_EVENT_WAIT_LISTifevent_wait_listisNULLandnum_events_in_wait_list> 0, orevent_wait_listis notNULLandnum_events_in_wait_listis 0, or if event objects inevent_wait_listare not valid events.MEM_COPY_OVERLAPifsrc_bufferanddst_bufferare the same buffer or subbuffer object and the source and destination regions overlap or ifsrc_bufferanddst_bufferare different sub-buffers of the same associated buffer object and they overlap.MISALIGNED_SUB_BUFFER_OFFSETifsrc_bufferis a sub-buffer object and offset specified when the sub-buffer object is created is not aligned toDEVICE_MEM_BASE_ADDR_ALIGNvalue for device associated with queue.MISALIGNED_SUB_BUFFER_OFFSETifdst_bufferis a sub-buffer object and offset specified when the sub-buffer object is created is not aligned toDEVICE_MEM_BASE_ADDR_ALIGNvalue for device associated with queue.MEM_OBJECT_ALLOCATION_FAILUREif there is a failure to allocate memory for data store associated withsrc_bufferordst_buffer.OUT_OF_RESOURCESif there is a failure to allocate resources required by the OpenCL implementation on the device.OUT_OF_HOST_MEMORYif there is a failure to allocate resources required by the OpenCL implementation on the host.
-
clCreateUserEvent
public static long clCreateUserEvent(long context, java.nio.IntBuffer errcode_ret)Creates a user event object. User events allow applications to enqueue commands that wait on a user event to finish before the command is executed by the device.The execution status of the user event object created is set to
SUBMITTED.- Parameters:
context- a valid OpenCL contexterrcode_ret- will return an appropriate error code. Iferrcode_retisNULL, no error code is returned.- Returns:
- a valid non-zero event object and
errcode_retis set toSUCCESSif the user event object is created successfully. Otherwise, it returns aNULLvalue with one of the following error values returned inerrcode_ret:INVALID_CONTEXTifcontextis not a valid context.OUT_OF_RESOURCESif there is a failure to allocate resources required by the OpenCL implementation on the device.OUT_OF_HOST_MEMORYif there is a failure to allocate resources required by the OpenCL implementation on the host.
-
clSetUserEventStatus
public static int clSetUserEventStatus(long event, int execution_status)Sets the execution status of a user event object.NOTE: Enqueued commands that specify user events in the
event_wait_listargument ofclEnqueue***commands must ensure that the status of these user events being waited on are set usingclSetUserEventStatusbefore any OpenCL APIs that release OpenCL objects except for event objects are called; otherwise the behavior is undefined.For example, the following code sequence will result in undefined behavior of
ReleaseMemObject.ev1 = clCreateUserEvent(ctx, NULL); clEnqueueWriteBuffer(cq, buf1, CL_FALSE, ..., 1, &ev1, NULL); clEnqueueWriteBuffer(cq, buf2, CL_FALSE, ...); clReleaseMemObject(buf2); clSetUserEventStatus(ev1, CL_COMPLETE);The following code sequence, however, works correctly.
ev1 = clCreateUserEvent(ctx, NULL); clEnqueueWriteBuffer(cq, buf1, CL_FALSE, ..., 1, &ev1, NULL); clEnqueueWriteBuffer(cq, buf2, CL_FALSE, ...); clSetUserEventStatus(ev1, CL_COMPLETE); clReleaseMemObject(buf2);- Parameters:
event- a user event object created usingCreateUserEventexecution_status- the new execution status to be set and can beCOMPLETEor a negative integer value to indicate an error. A negative integer value causes all enqueued commands that wait on this user event to be terminated.clSetUserEventStatuscan only be called once to change the execution status of event.- Returns:
SUCCESSif the function was executed successfully. Otherwise, it returns one of the following errors:INVALID_EVENTifeventis not a valid user event object.INVALID_VALUEif theexecution_statusis notCOMPLETEor a negative integer value.INVALID_OPERATIONif theexecution_statusfor event has already been changed by a previous call toclSetUserEventStatus.OUT_OF_RESOURCESif there is a failure to allocate resources required by the OpenCL implementation on the device.OUT_OF_HOST_MEMORYif there is a failure to allocate resources required by the OpenCL implementation on the host.
-
clSetEventCallback
public static int clSetEventCallback(long event, int command_exec_callback_type, CLEventCallbackI pfn_notify, long user_data)Registers a user callback function for a specific command execution status. The registered callback function will be called when the execution status of command associated with event changes to an execution status equal to or past the status specified bycommand_exec_status.Each call to
clSetEventCallbackregisters the specified user callback function on a callback stack associated with event. The order in which the registered user callback functions are called is undefined.All callbacks registered for an event object must be called. All enqueued callbacks shall be called before the event object is destroyed. Callbacks must return promptly. The behavior of calling expensive system routines, OpenCL API calls to create contexts or command-queues, or blocking OpenCL operations from the following list below, in a callback is undefined.
Finish,WaitForEvents,- blocking calls to
EnqueueReadBuffer,EnqueueReadBufferRect,EnqueueWriteBuffer,EnqueueWriteBufferRect, - blocking calls to
EnqueueReadImageandEnqueueWriteImage, - blocking calls to
EnqueueMapBufferandEnqueueMapImage, - blocking calls to
BuildProgram,CompileProgramorLinkProgram
If an application needs to wait for completion of a routine from the above list in a callback, please use the non-blocking form of the function, and assign a completion callback to it to do the remainder of your work. Note that when a callback (or other code) enqueues commands to a command-queue, the commands are not required to begin execution until the queue is flushed. In standard usage, blocking enqueue calls serve this role by implicitly flushing the queue. Since blocking calls are not permitted in callbacks, those callbacks that enqueue commands on a command queue should either call
Flushon the queue before returning or arrange forFlushto be called later on another thread.- Parameters:
event- a valid event objectcommand_exec_callback_type- the command execution status for which the callback is registered. There is no guarantee that the callback functions registered for various execution status values for an event will be called in the exact order that the execution status of a command changes. Furthermore, it should be noted that receiving a call back for an event with a status other thanCOMPLETE, in no way implies that the memory model or execution model as defined by the OpenCL specification has changed. For example, it is not valid to assume that a corresponding memory transfer has completed unless the event is in a stateCOMPLETE. One of:SUBMITTEDRUNNINGCOMPLETEpfn_notify- the event callback function that can be registered by the application. This callback function may be called asynchronously by the OpenCL implementation. It is the application's responsibility to ensure that the callback function is thread-safe.user_data- will be passed as theuser_dataargument whenpfn_notifyis called.user_datacan beNULL.- Returns:
SUCCESSif the function is executed successfully. Otherwise, it returns one of the following errors:INVALID_EVENTifeventis not a valid event object.INVALID_VALUEifpfn_event_notifyisNULLor ifcommand_exec_callback_typeis notSUBMITTED,RUNNINGorCOMPLETE.INVALID_VALUEifeventis a user event object andcommand_exec_callback_typeis notCOMPLETE.OUT_OF_RESOURCESif there is a failure to allocate resources required by the OpenCL implementation on the device.OUT_OF_HOST_MEMORYif there is a failure to allocate resources required by the OpenCL implementation on the host.
-
clCreateSubBuffer
public static long clCreateSubBuffer(long buffer, long flags, int buffer_create_type, java.nio.ByteBuffer buffer_create_info, int[] errcode_ret)Array version of:CreateSubBuffer
-
clEnqueueReadBufferRect
public static int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, short[] ptr, PointerBuffer event_wait_list, PointerBuffer event)short[] version of:EnqueueReadBufferRect
-
clEnqueueReadBufferRect
public static int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, int[] ptr, PointerBuffer event_wait_list, PointerBuffer event)int[] version of:EnqueueReadBufferRect
-
clEnqueueReadBufferRect
public static int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, float[] ptr, PointerBuffer event_wait_list, PointerBuffer event)float[] version of:EnqueueReadBufferRect
-
clEnqueueReadBufferRect
public static int clEnqueueReadBufferRect(long command_queue, long buffer, int blocking_read, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, double[] ptr, PointerBuffer event_wait_list, PointerBuffer event)double[] version of:EnqueueReadBufferRect
-
clEnqueueWriteBufferRect
public static int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, short[] ptr, PointerBuffer event_wait_list, PointerBuffer event)short[] version of:EnqueueWriteBufferRect
-
clEnqueueWriteBufferRect
public static int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, int[] ptr, PointerBuffer event_wait_list, PointerBuffer event)int[] version of:EnqueueWriteBufferRect
-
clEnqueueWriteBufferRect
public static int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, float[] ptr, PointerBuffer event_wait_list, PointerBuffer event)float[] version of:EnqueueWriteBufferRect
-
clEnqueueWriteBufferRect
public static int clEnqueueWriteBufferRect(long command_queue, long buffer, int blocking_write, PointerBuffer buffer_offset, PointerBuffer host_offset, PointerBuffer region, long buffer_row_pitch, long buffer_slice_pitch, long host_row_pitch, long host_slice_pitch, double[] ptr, PointerBuffer event_wait_list, PointerBuffer event)double[] version of:EnqueueWriteBufferRect
-
clCreateUserEvent
public static long clCreateUserEvent(long context, int[] errcode_ret)Array version of:CreateUserEvent
-
-