nmpp
vStat.h
1//------------------------------------------------------------------------
2//
3// $Workfile:: vStat.h $
4//
5// Векторно-матричная библиотека
6//
7// Copyright (c) RC Module Inc.
8//
9// $Revision: 1.1 $ $Date: 2004/11/22 13:50:02 $
10//
19//------------------------------------------------------------------------
20
21
22#ifndef _VSTAT_H_INCLUDED_
23#define _VSTAT_H_INCLUDED_
24
25#ifdef __cplusplus
26 extern "C" {
27#endif
28
69 unsigned nmppsCrc_32u (const unsigned int* pSrcVec, int nSize);
70 unsigned nmppsCrcAcc_32u (const unsigned int* pSrcVec, int nSize, unsigned int* crcAccumulator);
71
72
73
74__INLINE__ unsigned nmppsCrc_64s(nm64s* pSrcVec, int nSize) { return nmppsCrc_32u((unsigned*)pSrcVec, nSize<<1); }
75__INLINE__ unsigned nmppsCrc_32s(nm32s* pSrcVec, int nSize) { return nmppsCrc_32u((unsigned*)pSrcVec, nSize ); }
76__INLINE__ unsigned nmppsCrc_16s(nm16s* pSrcVec, int nSize) { return nmppsCrc_32u((unsigned*)pSrcVec, nSize>>1); }
77__INLINE__ unsigned nmppsCrc_8s (nm8s* pSrcVec, int nSize) { return nmppsCrc_32u((unsigned*)pSrcVec, nSize>>2); }
78__INLINE__ unsigned nmppsCrc_4s (nm4s* pSrcVec, int nSize) { return nmppsCrc_32u((unsigned*)pSrcVec, nSize>>3); }
79__INLINE__ unsigned nmppsCrc_64u(nm64u* pSrcVec, int nSize) { return nmppsCrc_32u((unsigned*)pSrcVec, nSize<<1); }
80
81//__INLINE__ unsigned nmppsCrc_32f(nm32f* pSrcVec, int numBitsToClear, int nSize) { return nmppsCrcMask_32u((unsigned*)pSrcVec,(-1<<numBitsToClear),nSize>>1); }
82
83__INLINE__ unsigned nmppsCrc_16u(nm16u* pSrcVec, int nSize) { return nmppsCrc_32u((unsigned*)pSrcVec, nSize>>1); }
84__INLINE__ unsigned nmppsCrc_8u (nm8u* pSrcVec, int nSize) { return nmppsCrc_32u((unsigned*)pSrcVec, nSize>>2); }
85
86
87__INLINE__ unsigned nmppsCrcAcc_64s(nm64s* pSrcVec, int nSize, unsigned int* crcAccumulator) { return nmppsCrcAcc_32u((unsigned*)pSrcVec, nSize<<1, crcAccumulator); }
88__INLINE__ unsigned nmppsCrcAcc_32s(nm32s* pSrcVec, int nSize, unsigned int* crcAccumulator) { return nmppsCrcAcc_32u((unsigned*)pSrcVec, nSize, crcAccumulator); }
89__INLINE__ unsigned nmppsCrcAcc_16s(nm16s* pSrcVec, int nSize, unsigned int* crcAccumulator) { return nmppsCrcAcc_32u((unsigned*)pSrcVec, nSize>>1, crcAccumulator); }
90__INLINE__ unsigned nmppsCrcAcc_8s (nm8s* pSrcVec, int nSize, unsigned int* crcAccumulator) { return nmppsCrcAcc_32u((unsigned*)pSrcVec, nSize>>2, crcAccumulator); }
91__INLINE__ unsigned nmppsCrcAcc_64u(nm64u* pSrcVec, int nSize, unsigned int* crcAccumulator) { return nmppsCrcAcc_32u((unsigned*)pSrcVec, nSize<<1, crcAccumulator); }
92
93
94__INLINE__ unsigned nmppsCrcAcc_16u(nm16u* pSrcVec, int nSize, unsigned int* crcAccumulator) { return nmppsCrcAcc_32u((unsigned*)pSrcVec, nSize>>1, crcAccumulator); }
95__INLINE__ unsigned nmppsCrcAcc_8u (nm8u* pSrcVec, int nSize, unsigned int* crcAccumulator) { return nmppsCrcAcc_32u((unsigned*)pSrcVec, nSize>>2, crcAccumulator); }
96
97unsigned nmppsCrcAcc_32f(const nm32f* pSrcVec, int numBitsToClear, int nSize, unsigned int* crcAccumulator) ;
98unsigned nmppsCrcAcc_64f(const nm64f* pSrcVec, int numBitsToClear, int nSize, unsigned int* crcAccumulator) ;
99
101
102
103
104//*****************************************************************************
137
138int nmppsSadV16_16s(nm16s* pSrc1,nm16s* pSrc2);
139int nmppsSadV16_8s(nm8s* pSrc1,nm8s* pSrc2);
141
142
143#ifdef __cplusplus
144 };
145#endif
146
147#endif // _VSTAT_H_INCLUDED_
unsigned char nm8u
Definition: nmtype.h:448
int nm32s
Definition: nmtype.h:292
unsigned short nm16u
Definition: nmtype.h:481
long long nm64s
Definition: nmtype.h:375
short nm16s
Definition: nmtype.h:243
void nm4s
Definition: nmtype.h:129
unsigned long long nm64u
Definition: nmtype.h:536
char nm8s
Definition: nmtype.h:167