Exemple #1
0
        internal static void ArrayViewAlignmentKernel <T>(
            Index1 index,
            ArrayView <T> data,
            ArrayView <long> prefixLength,
            ArrayView <long> mainLength,
            int alignmentInBytes,
            T element)
            where T : unmanaged
        {
            var(prefix, main) = data.AlignTo(alignmentInBytes);

            prefixLength[index] = prefix.Length;
            mainLength[index]   = main.Length;

            if (index < prefix.Length)
            {
                prefix[index] = element;
            }

            Trace.Assert(main.Length > 0);
            main[index] = element;
        }