private OpenCLImage3D(CLMemoryHandle handle, OpenCLContext context, OpenCLMemoryFlags flags) : base(context, flags) { Handle = handle; Init(); }
public extern static OpenCLErrorCode EnqueueUnmapMemObject( CLCommandQueueHandle command_queue, CLMemoryHandle memobj, IntPtr mapped_ptr, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst = 1)] CLEventHandle[] new_event);
public extern static OpenCLErrorCode EnqueueWriteBuffer( CLCommandQueueHandle command_queue, CLMemoryHandle buffer, [MarshalAs(UnmanagedType.Bool)] bool blocking_write, IntPtr offset, IntPtr cb, IntPtr ptr, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst = 1)] CLEventHandle[] new_event);
public extern static OpenCLErrorCode EnqueueCopyBufferToImage( CLCommandQueueHandle command_queue, CLMemoryHandle src_buffer, CLMemoryHandle dst_image, IntPtr src_offset, ref SysIntX3 dst_origin, ref SysIntX3 region, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst = 1)] CLEventHandle[] new_event);
public extern static IntPtr EnqueueMapBuffer( CLCommandQueueHandle command_queue, CLMemoryHandle buffer, [MarshalAs(UnmanagedType.Bool)] bool blocking_map, OpenCLMemoryMappingFlags map_flags, IntPtr offset, IntPtr cb, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst = 1)] CLEventHandle[] new_event, out OpenCLErrorCode errcode_ret);
public extern static OpenCLErrorCode EnqueueWriteImage( CLCommandQueueHandle command_queue, CLMemoryHandle image, [MarshalAs(UnmanagedType.Bool)] bool blocking_write, ref SysIntX3 origin, ref SysIntX3 region, IntPtr input_row_pitch, IntPtr input_slice_pitch, IntPtr ptr, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst = 1)] CLEventHandle[] new_event);
public extern static IntPtr EnqueueMapImage( CLCommandQueueHandle command_queue, CLMemoryHandle image, [MarshalAs(UnmanagedType.Bool)] bool blocking_map, OpenCLMemoryMappingFlags map_flags, ref SysIntX3 origin, ref SysIntX3 region, out IntPtr image_row_pitch, out IntPtr image_slice_pitch, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst = 1)] CLEventHandle[] new_event, out OpenCLErrorCode errcode_ret);
public extern static OpenCLErrorCode EnqueueReadBufferRect( CLCommandQueueHandle command_queue, CLMemoryHandle buffer, [MarshalAs(UnmanagedType.Bool)] bool blocking_read, ref SysIntX3 buffer_offset, ref SysIntX3 host_offset, ref SysIntX3 region, IntPtr buffer_row_pitch, IntPtr buffer_slice_pitch, IntPtr host_row_pitch, IntPtr host_slice_pitch, IntPtr ptr, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst = 1)] CLEventHandle[] new_event);
public extern static OpenCLErrorCode EnqueueWriteImage( CLCommandQueueHandle command_queue, CLMemoryHandle image, [MarshalAs(UnmanagedType.Bool)] bool blocking_write, ref SysIntX3 origin, ref SysIntX3 region, IntPtr input_row_pitch, IntPtr input_slice_pitch, IntPtr ptr, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst=1)] CLEventHandle[] new_event);
public extern static OpenCLErrorCode EnqueueCopyBuffer( CLCommandQueueHandle command_queue, CLMemoryHandle src_buffer, CLMemoryHandle dst_buffer, IntPtr src_offset, IntPtr dst_offset, IntPtr cb, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst=1)] CLEventHandle[] new_event);
public extern static OpenCLErrorCode SetMemObjectDestructorCallback( CLMemoryHandle memobj, OpenCLMemoryDestructorNotifer pfn_notify, IntPtr user_data);
public extern static OpenCLErrorCode EnqueueCopyBufferRect( CLCommandQueueHandle command_queue, CLMemoryHandle src_buffer, CLMemoryHandle dst_buffer, ref SysIntX3 src_origin, ref SysIntX3 dst_origin, ref SysIntX3 region, IntPtr src_row_pitch, IntPtr src_slice_pitch, IntPtr dst_row_pitch, IntPtr dst_slice_pitch, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst=1)] CLEventHandle[] new_event);
public extern static OpenCLErrorCode GetGLObjectInfo( CLMemoryHandle memobj, out OpenCLGLObjectType gl_object_type, out Int32 gl_object_name);
public extern static OpenCLErrorCode EnqueueCopyImage( CLCommandQueueHandle command_queue, CLMemoryHandle src_image, CLMemoryHandle dst_image, ref SysIntX3 src_origin, ref SysIntX3 dst_origin, ref SysIntX3 region, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst=1)] CLEventHandle[] new_event);
public extern static OpenCLErrorCode ReleaseMemObject( CLMemoryHandle memobj);
public extern static OpenCLErrorCode GetImageInfo( CLMemoryHandle image, OpenCLImageInfo param_name, IntPtr param_value_size, IntPtr param_value, out IntPtr param_value_size_ret);
public extern static OpenCLErrorCode EnqueueUnmapMemObject( CLCommandQueueHandle command_queue, CLMemoryHandle memobj, IntPtr mapped_ptr, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst=1)] CLEventHandle[] new_event);
public extern static OpenCLErrorCode GetGLTextureInfo( CLMemoryHandle memobj, OpenCLGLTextureInfo param_name, IntPtr param_value_size, IntPtr param_value, out IntPtr param_value_size_ret);
internal static CLMemoryHandle[] ExtractHandles(IList<OpenCLMemory> computeObjects, out int handleCount) { if (computeObjects == null || computeObjects.Count == 0) { handleCount = 0; return null; } CLMemoryHandle[] result = new CLMemoryHandle[computeObjects.Count]; int i = 0; foreach (OpenCLMemory computeObj in computeObjects) { result[i] = computeObj.Handle; i++; } handleCount = computeObjects.Count; return result; }
public extern static CLMemoryHandle CreateSubBuffer( CLMemoryHandle buffer, OpenCLMemoryFlags flags, OpenCLBufferCreateType buffer_create_type, ref SysIntX2 buffer_create_info, out OpenCLErrorCode errcode_ret);
public extern static OpenCLErrorCode EnqueueWriteBuffer( CLCommandQueueHandle command_queue, CLMemoryHandle buffer, [MarshalAs(UnmanagedType.Bool)] bool blocking_write, IntPtr offset, IntPtr cb, IntPtr ptr, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst=1)] CLEventHandle[] new_event);
public extern static OpenCLErrorCode EnqueueReadBufferRect( CLCommandQueueHandle command_queue, CLMemoryHandle buffer, [MarshalAs(UnmanagedType.Bool)] bool blocking_read, ref SysIntX3 buffer_offset, ref SysIntX3 host_offset, ref SysIntX3 region, IntPtr buffer_row_pitch, IntPtr buffer_slice_pitch, IntPtr host_row_pitch, IntPtr host_slice_pitch, IntPtr ptr, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst=1)] CLEventHandle[] new_event);