/// <summary> /// 64-bit in place floating point complex number signal NPP_CMP_GREATER threshold with constant level. /// </summary> /// <param name="pSrcDst">In-Place Signal Pointer.</param> /// <param name="nLevel">Constant threshold value (real part only and must be greater than 0) to be used to limit each signal sample</param> /// <param name="nValue">Constant value to replace source value when threshold test is true.</param> public static void Threshold_GTVal(this CudaDeviceVariable<Npp64fc> pSrcDst, double nLevel, Npp64fc nValue) { NppStatus status = NPPNativeMethods.NPPs.Threshold.nppsThreshold_GTVal_64fc_I(pSrcDst.DevicePointer, pSrcDst.Size, nLevel, nValue); Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "nppsThreshold_GTVal_64fc_I", status)); NPPException.CheckNppStatus(status, pSrcDst); }
/// <summary> /// 64-bit floating point complex number (64 bit real, 64 bit imaginary) signal /// subtract constant. /// </summary> /// <param name="pSrc">Source signal pointer.</param> /// <param name="nValue">Constant value to be subtracted from each vector element</param> /// <param name="pDst">Destination signal pointer.</param> public static void SubC(this CudaDeviceVariable<Npp64fc> pSrc, CudaDeviceVariable<Npp64fc> pDst, Npp64fc nValue) { NppStatus status = NPPNativeMethods.NPPs.SubC.nppsSubC_64fc(pSrc.DevicePointer, nValue, pDst.DevicePointer, pSrc.Size); Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "nppsSubC_64fc", status)); NPPException.CheckNppStatus(status, pSrc); }
/// <summary> /// 64-bit complex floating point signal normalize. /// </summary> /// <param name="pSrc">Source signal pointer.</param> /// <param name="pDst">Destination signal pointer.</param> /// <param name="vSub">value subtracted from each signal element before division</param> /// <param name="vDiv">divisor of post-subtracted signal element dividend</param> public static void Normalize(this CudaDeviceVariable<Npp64fc> pSrc, CudaDeviceVariable<Npp64fc> pDst, Npp64fc vSub, double vDiv) { NppStatus status = NPPNativeMethods.NPPs.NormalizeSignal.nppsNormalize_64fc(pSrc.DevicePointer, pDst.DevicePointer, pSrc.Size, vSub, vDiv); Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "nppsNormalize_64fc", status)); NPPException.CheckNppStatus(status, pSrc); }