Ejemplo n.º 1
0
        /// <summary>
        /// Extract device handles of <see cref="ComputeCommandQueue"/>s
        /// </summary>
        /// <param name="computeObjects"></param>
        /// <param name="handleCount"></param>
        /// <returns></returns>
        public static CLCommandQueueHandle[] ExtractHandles(ICollection <ComputeCommandQueue> computeObjects, out int handleCount)
        {
            if (computeObjects == null || computeObjects.Count == 0)
            {
                handleCount = 0;
                return(null);
            }

            CLCommandQueueHandle[] result = new CLCommandQueueHandle[computeObjects.Count];
            int i = 0;

            foreach (ComputeCommandQueue computeObj in computeObjects)
            {
                result[i] = computeObj.Handle;
                i++;
            }
            handleCount = computeObjects.Count;
            return(result);
        }
Ejemplo n.º 2
0
 extern internal static ComputeErrorCode SetCommandQueueProperty(
     CLCommandQueueHandle command_queue,
     ComputeCommandQueueFlags properties,
     [MarshalAs(UnmanagedType.Bool)] bool enable,
     out ComputeCommandQueueFlags old_properties);
Ejemplo n.º 3
0
 extern internal static ComputeErrorCode ReleaseCommandQueue(CLCommandQueueHandle command_queue);
Ejemplo n.º 4
0
 extern internal static ComputeErrorCode GetCommandQueueInfo(
     CLCommandQueueHandle command_queue,
     ComputeCommandQueueInfo param_name,
     IntPtr param_value_size,
     IntPtr param_value,
     out IntPtr param_value_size_ret);
Ejemplo n.º 5
0
 extern internal static ComputeErrorCode SetDefaultDeviceCommandQueue(
     CLContextHandle context,
     CLDeviceHandle device,
     CLCommandQueueHandle command_queue);