public static Event Write <T>( this IArrayReadWrite <T> buffer, CommandQueue commandQueue, bool blocking, long bufferOffset, int length, T[] data, int dataOffset, params Event[] eventWaitList) { if (bufferOffset < 0 || bufferOffset + length > buffer.Length) { throw new IndexOutOfRangeException($"{nameof(bufferOffset)}: {bufferOffset}, {nameof(length)}: {length}"); } if (dataOffset < 0 || dataOffset + length > data.Length) { throw new IndexOutOfRangeException($"{nameof(dataOffset)}: {dataOffset}, {nameof(length)}: {length}"); } return(buffer.WriteDirect( commandQueue, blocking, bufferOffset, length, data, dataOffset, eventWaitList)); }
public static Event Read <T>( this IArrayReadWrite <T> buffer, CommandQueue commandQueue, bool blocking, T[] data, params Event[] eventWaitList) => Read(buffer, commandQueue, blocking, 0L, data.Length, data, 0, eventWaitList);
public static Event Write <T>( this IArrayReadWrite <T> buffer, CommandQueue commandQueue, bool blocking, long bufferOffset, int length, T[] data, params Event[] eventWaitList) => Write(buffer, commandQueue, blocking, bufferOffset, length, data, 0, eventWaitList);