📄 pp.h
字号:
inline void ICTFwd(Ipp32s *srcDst0, Ipp32s *srcDst1, Ipp32s *srcDst2, unsigned int size){ IppiSize roiSize = {size, 1}; Ipp32s *srcDstArr[3] = {srcDst0, srcDst1, srcDst2}; ippiICTFwd_JPEG2K_32s_P3IR(srcDstArr, size * sizeof(Ipp32s), roiSize);}inline void ICTFwd(Ipp16s *srcDst0, Ipp16s *srcDst1, Ipp16s *srcDst2, unsigned int size){ IppiSize roiSize = {size, 1}; Ipp16s *srcDstArr[3] = {srcDst0, srcDst1, srcDst2}; ippiICTFwd_JPEG2K_16s_P3IR(srcDstArr, size * sizeof(Ipp16s), roiSize);}#ifndef XSCALEinline void ICTInv(const ImageCorePn<Ipp32f> &srcDst, const IppiSize &size){ ippiICTInv_JPEG2K_32f_P3IR((Ipp32f**)srcDst.Data(), srcDst.LineStep(), size);}inline void ICTInv(Ipp32f *srcDst0, Ipp32f *srcDst1, Ipp32f *srcDst2, unsigned int size){ IppiSize roiSize = {size, 1}; Ipp32f *srcDstArr[3] = {srcDst0, srcDst1, srcDst2}; ippiICTInv_JPEG2K_32f_P3IR(srcDstArr, size * sizeof(Ipp32f), roiSize);}#endif //#ifndef XSCALEinline void ICTInv(const ImageCorePn<Ipp32s> &srcDst, const IppiSize &size){ ippiICTInv_JPEG2K_32s_P3IR((Ipp32s**)srcDst.Data(), srcDst.LineStep(), size);}inline void ICTInv(Ipp32s *srcDst0, Ipp32s *srcDst1, Ipp32s *srcDst2, unsigned int size){ IppiSize roiSize = {size, 1}; Ipp32s *srcDstArr[3] = {srcDst0, srcDst1, srcDst2}; ippiICTInv_JPEG2K_32s_P3IR(srcDstArr, size * sizeof(Ipp32s), roiSize);}inline void ICTInv(Ipp16s *srcDst0, Ipp16s *srcDst1, Ipp16s *srcDst2, unsigned int size){ IppiSize roiSize = {size, 1}; Ipp16s *srcDstArr[3] = {srcDst0, srcDst1, srcDst2}; ippiICTInv_JPEG2K_16s_P3IR(srcDstArr, size * sizeof(Ipp16s), roiSize);}#ifndef XSCALEinline void Resize( const ImageCoreC<Ipp32f, 1> &src, const RectSize &srcSize, const ImageCoreC<Ipp32f, 1> &dst, const RectSize &dstSize){ double xFactor = (double)dstSize.Width () / (double)dstSize.Width (); double yFactor = (double)dstSize.Height() / (double)dstSize.Height(); IppiRect srcROI; srcROI.x = 0; srcROI.y = 0; srcROI.width = srcSize.Width(); srcROI.height = srcSize.Height(); ippiResize_32f_C3R( src.Data(), srcSize, src.LineStep(), srcROI, dst.Data(), dst.LineStep(), dstSize, xFactor, yFactor, IPPI_INTER_CUBIC);}inline void ResizeCenter( const ImageCoreC<Ipp32f, 1> &src, const RectSize &srcSize, const ImageCoreC<Ipp32f, 1> &dst, const RectSize &dstSize, double xFactor, double yFactor, double xCenter, double yCenter){ IppiRect srcROI; srcROI.x = 0; srcROI.y = 0; srcROI.width = srcSize.Width(); srcROI.height = srcSize.Height(); IppiRect dstROI; dstROI.x = 0; dstROI.y = 0; dstROI.width = dstSize.Width(); dstROI.height = dstSize.Height(); ippiResizeCenter_32f_C1R( src.Data(), srcSize, src.LineStep(), srcROI, dst.Data(), dst.LineStep(), dstSize, xFactor, yFactor, xCenter, yCenter, IPPI_INTER_CUBIC);}#endif //#ifndef XSCALEinline void CopyReplicateBorder( const ImageCoreC<Ipp32s, 1> &src, const IppiSize &srcSize, const ImageCoreC<Ipp32s, 1> &dst, const IppiSize &dstSize, const Point &dstOrigin){ ippiCopyReplicateBorder_32s_C1R( src.Data(), src.LineStep(), srcSize, dst.Data(), dst.LineStep(), dstSize, dstOrigin.X(), dstOrigin.Y());}/////////////////////////////////////////////////////////////////////////////// Wavelet transforms performance primitives wrappers////typedef IppiWTFilterFirst WTPhase;inline bool IsPhaseL(WTPhase phase) { return phase == ippWTFilterFirstLow; }inline bool IsPhaseH(WTPhase phase) { return phase == ippWTFilterFirstHigh; }inline WTPhase Phase(unsigned int coor) { return coor & 1 ? ippWTFilterFirstHigh : ippWTFilterFirstLow; }inline void WT53FwdRow( const Ipp16s* src, Ipp16s* low, Ipp16s* high, unsigned int dstSize, WTPhase phase){ IppiSize roiSize = {dstSize, 1}; ippiWTFwdRow_B53_JPEG2K_16s_C1R( src, sizeof(Ipp16s) * 2 * dstSize, low, sizeof(Ipp16s) * dstSize, high, sizeof(Ipp16s) * dstSize, roiSize, phase);}inline void WT53FwdRow( const Ipp32s* src, Ipp32s* low, Ipp32s* high, unsigned int dstSize, WTPhase phase){ IppiSize roiSize = {dstSize, 1}; ippiWTFwdRow_B53_JPEG2K_32s_C1R( src, sizeof(Ipp32s) * 2 * dstSize, low, sizeof(Ipp32s) * dstSize, high, sizeof(Ipp32s) * dstSize, roiSize, phase);}inline void WT53InvRow( const Ipp16s* low, const Ipp16s* high, unsigned int srcSize, Ipp16s* dst, WTPhase phase){ IppiSize roiSize = {srcSize, 1}; ippiWTInvRow_B53_JPEG2K_16s_C1R( low , sizeof(Ipp16s) * srcSize, high, sizeof(Ipp16s) * srcSize, roiSize, dst , sizeof(Ipp16s) * 2 * srcSize, phase);}inline void WT53InvRow( const Ipp32s* low, const Ipp32s* high, unsigned int srcSize, Ipp32s* dst, WTPhase phase){ IppiSize roiSize = {srcSize, 1}; ippiWTInvRow_B53_JPEG2K_32s_C1R( low , sizeof(Ipp32s) * srcSize, high, sizeof(Ipp32s) * srcSize, roiSize, dst , sizeof(Ipp32s) * 2 * srcSize, phase);}inline void WT53FwdColLift( const Ipp32s* src0, const Ipp32s* src1, const Ipp32s* src2, Ipp32s* dstLow0, const Ipp32s* srcHigh0, Ipp32s* dstHigh1, int width){ ippiWTFwdColLift_B53_JPEG2K_32s_C1( src0, src1, src2, dstLow0, srcHigh0, dstHigh1, width);}inline void WT53FwdColLift( const Ipp16s* src0, const Ipp16s* src1, const Ipp16s* src2, Ipp16s* dstLow0, const Ipp16s* srcHigh0, Ipp16s* dstHigh1, int width){ ippiWTFwdColLift_B53_JPEG2K_16s_C1( src0, src1, src2, dstLow0, srcHigh0, dstHigh1, width);}inline void WT53InvColLift( const Ipp16s* srcLow0, const Ipp16s* srcHigh0, const Ipp16s* srcHigh1, const Ipp16s* src0, Ipp16s* dst1, Ipp16s* dst2, int width){ ippiWTInvColLift_B53_JPEG2K_16s_C1( srcLow0, srcHigh0, srcHigh1, src0, dst1, dst2, width);}inline void WT53InvColLift( const Ipp32s* srcLow0, const Ipp32s* srcHigh0, const Ipp32s* srcHigh1, const Ipp32s* src0, Ipp32s* dst1, Ipp32s* dst2, int width){ ippiWTInvColLift_B53_JPEG2K_32s_C1( srcLow0, srcHigh0, srcHigh1, src0, dst1, dst2, width);}inline void WT97FwdRow( const Ipp16s* src, Ipp16s* low, Ipp16s* high, unsigned int dstSize, WTPhase phase){ IppiSize roiSize = {dstSize, 1}; ippiWTFwdRow_D97_JPEG2K_16s_C1R( src , sizeof(Ipp16s) * 2 * dstSize, low , sizeof(Ipp16s) * dstSize, high, sizeof(Ipp16s) * dstSize, roiSize, phase);}inline void WT97FwdRow( const Ipp32s* src, Ipp32s* low, Ipp32s* high, unsigned int dstSize, WTPhase phase){ IppiSize roiSize = {dstSize, 1}; ippiWTFwdRow_D97_JPEG2K_32s_C1R( src , sizeof(Ipp32s) * 2 * dstSize, low , sizeof(Ipp32s) * dstSize, high, sizeof(Ipp32s) * dstSize, roiSize, phase);}inline void WT97FwdRow( const Ipp32f* src, Ipp32f* low, Ipp32f* high, unsigned int dstSize, WTPhase phase){ IppiSize roiSize = {dstSize, 1}; ippiWTFwdRow_D97_JPEG2K_32f_C1R( src , sizeof(Ipp32f) * 2 * dstSize, low , sizeof(Ipp32f) * dstSize, high, sizeof(Ipp32f) * dstSize, roiSize, phase);}inline void WT97InvRow( const Ipp16s* low, const Ipp16s* high, unsigned int srcSize, Ipp16s* dst, WTPhase phase){ IppiSize roiSize = {srcSize, 1}; ippiWTInvRow_D97_JPEG2K_16s_C1R( low , sizeof(Ipp16s) * srcSize, high, sizeof(Ipp16s) * srcSize, roiSize, dst , sizeof(Ipp16s) * 2 * srcSize, phase);}inline void WT97InvRow( const Ipp32s* low, const Ipp32s* high, unsigned int srcSize, Ipp32s* dst, WTPhase phase){ IppiSize roiSize = {srcSize, 1}; ippiWTInvRow_D97_JPEG2K_32s_C1R( low , sizeof(Ipp32s) * srcSize, high, sizeof(Ipp32s) * srcSize, roiSize, dst , sizeof(Ipp32s) * 2 * srcSize, phase);}inline void WT97InvRow( const Ipp32f* low, const Ipp32f* high, unsigned int srcSize, Ipp32f* dst, WTPhase phase){ IppiSize roiSize = {srcSize, 1}; ippiWTInvRow_D97_JPEG2K_32f_C1R( low , sizeof(Ipp32f) * srcSize, high, sizeof(Ipp32f) * srcSize, roiSize, dst , sizeof(Ipp32f) * 2 * srcSize, phase);}inline void WT97FwdColLift( const Ipp16s* src0, const Ipp16s* src1, const Ipp16s* src2, Ipp16s* srcDstLow0, Ipp16s* dstLow1, Ipp16s* srcDstHigh0, Ipp16s* srcDstHigh1, Ipp16s* dstHigh2, int width){ ippiWTFwdColLift_D97_JPEG2K_16s_C1( src0, src1, src2, srcDstLow0, dstLow1, srcDstHigh0, srcDstHigh1, dstHigh2, width);}inline void WT97FwdColLift( const Ipp32s* src0, const Ipp32s* src1, const Ipp32s* src2, Ipp32s* srcDstLow0, Ipp32s* dstLow1, Ipp32s* srcDstHigh0, Ipp32s* srcDstHigh1, Ipp32s* dstHigh2, int width){ ippiWTFwdColLift_D97_JPEG2K_32s_C1( src0, src1, src2, srcDstLow0, dstLow1, srcDstHigh0, srcDstHigh1, dstHigh2, width);}#ifndef XSCALEinline void WT97FwdColLift( const Ipp32f* src0, const Ipp32f* src1, const Ipp32f* src2, Ipp32f* srcDstLow0, Ipp32f* dstLow1, Ipp32f* srcDstHigh0, Ipp32f* srcDstHigh1, Ipp32f* dstHigh2, int width){ ippiWTFwdColLift_D97_JPEG2K_32f_C1( src0, src1, src2, srcDstLow0, dstLow1, srcDstHigh0, srcDstHigh1, dstHigh2, width);}#endif //#ifndef XSCALEinline void WT97InvColLift( const Ipp16s* srcLow0, const Ipp16s* srcHigh0, const Ipp16s* srcHigh1, const Ipp16s* src0, Ipp16s* srcDst1, Ipp16s* srcDst2, Ipp16s* dst3, Ipp16s* dst4, int width){ ippiWTInvColLift_D97_JPEG2K_16s_C1( srcLow0, srcHigh0, srcHigh1, src0, srcDst1, srcDst2, dst3, dst4, width);}inline void WT97InvColLift( const Ipp32s* srcLow0, const Ipp32s* srcHigh0, const Ipp32s* srcHigh1, const Ipp32s* src0, Ipp32s* srcDst1, Ipp32s* srcDst2, Ipp32s* dst3, Ipp32s* dst4, int width){ ippiWTInvColLift_D97_JPEG2K_32s_C1( srcLow0, srcHigh0, srcHigh1, src0, srcDst1, srcDst2, dst3, dst4, width);}#ifndef XSCALEinline void WT97InvColLift( const Ipp32f* srcLow0, const Ipp32f* srcHigh0, const Ipp32f* srcHigh1, const Ipp32f* src0, Ipp32f* srcDst1, Ipp32f* srcDst2, Ipp32f* dst3, Ipp32f* dst4, int width){ ippiWTInvColLift_D97_JPEG2K_32f_C1( srcLow0, srcHigh0, srcHigh1, src0, srcDst1, srcDst2, dst3, dst4, width);}#endif //#ifndef XSCALE#endif // __PP_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -