public unsafe override void Inverse <T>(ref T[] src) { switch (typeof(T).ToString()) { case "System.Double": fixed(double *pSrcDst = src as double[]) { IPPNative.ippsFlip_64f_I(pSrcDst, src.Length); } break; case "System.Single": fixed(float *pSrcDst = src as float[]) { IPPNative.ippsFlip_32f_I(pSrcDst, src.Length); } break; default: base.Inverse(ref src); break; } }