public unsafe override void FindMaxMin(float[] src, out float maxValue, out float minValue, out int maxIdx, out int minIdx) { float[] max = new float[1]; float[] min = new float[1]; int[] maxIndex = new int[1]; int[] minIndex = new int[1]; fixed(float *pSrc = src, pMin = min, pMax = max) { fixed(int *pMinIdx = minIndex, pMaxIdx = maxIndex) { IPPNative.ippsMinMaxIndx_32f(pSrc, src.Length, pMin, pMinIdx, pMax, pMaxIdx); } } maxValue = max[0]; minValue = min[0]; maxIdx = maxIndex[0]; minIdx = minIndex[0]; }