/// <summary> /// Invert the elements of array <paramref name="value"/>/> /// </summary> /// <param name="value">The array will be invert</param> /// <param name="result">The result of inverting</param> /// <param name="length">A 32-bit integer that represents the number of elements to invert</param> /// <param name="valueIndex">A 32-bit integer that represents the index in the <paramref name="value"/> array at which inverting begins</param> /// <param name="resultIndex">A 32-bit integer that represents the index in the <paramref name="result"/> array at which copying result begins</param> /// <remarks>If the <paramref name="result"/> array is null, operation result copying to the <paramref name="value1"/></remarks> unsafe public override void Inversion(Complex[] value, Complex[] result = null, int length = int.MaxValue, int valueIndex = 0, int resultIndex = 0) { Th.ThrowOneValueWithNullableResult(value, ref result, ref length, valueIndex, resultIndex); fixed(Complex *valuePtr = value, resultPtr = result) ComplexArrayHelper.Inverse(valuePtr, resultPtr, length, valueIndex, resultIndex); }