Name | Synopsis | Description | Parameters | Return Values | Attributes | See Also
cc [ flag... ] file... -lmlib [ library... ] #include <mlib.h> mlib_status mlib_VectorAve_U8(mlib_u8 *xz, const mlib_u8 *y, mlib_s32 n);
mlib_status mlib_VectorAve_U8C(mlib_u8 *xz, const mlib_u8 *y, mlib_s32 n);
mlib_status mlib_VectorAve_S8(mlib_s8 *xz, const mlib_s8 *y, mlib_s32 n);
mlib_status mlib_VectorAve_S8C(mlib_s8 *xz, const mlib_s8 *y, mlib_s32 n);
mlib_status mlib_VectorAve_S16(mlib_s16 *xz, const mlib_s16 *y, mlib_s32 n);
mlib_status mlib_VectorAve_S16C(mlib_s16 *xz, const mlib_s16 *y, mlib_s32 n);
mlib_status mlib_VectorAve_S32(mlib_s32 *xz, const mlib_s32 *y, mlib_s32 n);
mlib_status mlib_VectorAve_S32C(mlib_s32 *xz, const mlib_s32 *y, mlib_s32 n);
Each of these functions performs an in-place averaging of two vectors.
It uses the following equation:
xz[i] = (xz[i] + y[i] + 1) / 2
where i = 0, 1, ..., (n - 1) for real data; i = 0, 1, ..., (2*n - 1) for complex data.
Each of the functions takes the following arguments:
Pointer to the first element of the first source and destination vector.
Pointer to the first element of the second source vector.
Number of elements in the vectors.
Each of the functions returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE |
ATTRIBUTE VALUE |
---|---|
Interface Stability |
Committed |
MT-Level |
MT-Safe |
Name | Synopsis | Description | Parameters | Return Values | Attributes | See Also