internal static void Flush(CommandQueueSafeHandle commandQueue)
        {
            if (commandQueue == null)
                throw new ArgumentNullException("commandQueue");

            ErrorHandler.ThrowOnFailure(clFlush(commandQueue));
        }
        internal static EventSafeHandle EnqueueMarkerWithWaitList(CommandQueueSafeHandle commandQueue, EventSafeHandle[] eventWaitList)
        {
            if (commandQueue == null)
                throw new ArgumentNullException("commandQueue");

            EventSafeHandle result;
            ErrorHandler.ThrowOnFailure(clEnqueueMarkerWithWaitList(commandQueue, GetNumItems(eventWaitList), GetItems(eventWaitList), out result));
            return result;
        }
예제 #3
0
        internal CommandQueue(CommandQueueSafeHandle handle, Context context, Device device)
        {
            if (handle == null)
                throw new ArgumentNullException("handle");
            if (context == null)
                throw new ArgumentNullException("context");
            if (device == null)
                throw new ArgumentNullException("device");

            _handle = handle;
            _context = context;
            _device = device;
        }
 private static extern ErrorCode clEnqueueBarrierWithWaitList(
     CommandQueueSafeHandle commandQueue,
     uint numEventsInWaitList,
     [In, MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(SafeHandleArrayMarshaler))] EventSafeHandle[] eventWaitList,
     out EventSafeHandle @event);
 private static extern ErrorCode clFinish(CommandQueueSafeHandle commandQueue);