예제 #1
0
        public static void AddScaleCopy(float a, ReadOnlySpan <float> src, ReadOnlySpan <float> dst, Span <float> res, int count)
        {
            Contracts.AssertNonEmpty(dst);
            Contracts.Assert(0 < count && count <= dst.Length);
            Contracts.AssertNonEmpty(src);
            Contracts.Assert(count <= src.Length);
            Contracts.AssertNonEmpty(res);
            Contracts.Assert(count <= res.Length);

            unsafe
            {
                fixed(float *pdst = &MemoryMarshal.GetReference(dst))
                fixed(float *psrc = &MemoryMarshal.GetReference(src))
                fixed(float *pres = &MemoryMarshal.GetReference(res))
                Thunk.AddScaleCopyU(a, psrc, pdst, pres, count);
            }
        }