mediaLib Library Functions mlib_MatrixTranspose_U8(3MLIB)
NAME
mlib_MatrixTranspose_U8, mlib_MatrixTranspose_U8C,
mlib_MatrixTranspose_S8, mlib_MatrixTranspose_S8C,
mlib_MatrixTranspose_S16, mlib_MatrixTranspose_S16C,
mlib_MatrixTranspose_S32, mlib_MatrixTranspose_S32C - matrix
transpose, in placeSYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include
mlib_status mlib_MatrixTranspose_U8(mlib_u8 *xz, mlib_s32 mn);
mlib_status mlib_MatrixTranspose_U8C(mlib_u8 *xz, mlib_s32 mn);
mlib_status mlib_MatrixTranspose_S8(mlib_s8 *xz, mlib_s32 mn);
mlib_status mlib_MatrixTranspose_S8C(mlib_s8 *xz, mlib_s32 mn);
mlib_status mlib_MatrixTranspose_S16(mlib_s16 *xz, mlib_s32 mn);
mlib_status mlib_MatrixTranspose_S16C(mlib_s16 *xz, mlib_s32 mn);
mlib_status mlib_MatrixTranspose_S32(mlib_s32 *xz, mlib_s32 mn);
mlib_status mlib_MatrixTranspose_S32C(mlib_s32 *xz, mlib_s32 mn);
DESCRIPTION
Each of these functions performs an in-place transpose of a
square matrix. For real data, the following pseudo code applies: for (i = 1; i < mn; i++) { for (j = 0; j < i; i++) { tmp = xz[i*mn + j]; xz[i*mn + j] = xz[j*mn + i]; xz[j*mn + i] = tmp; } }SunOS 5.11 Last change: 2 Mar 2007 1
mediaLib Library Functions mlib_MatrixTranspose_U8(3MLIB)
For complex data, the following pseudo code applies: for (i = 1; i < mn; i++) { for (j = 0; j < i; i++) { tmp0 = xz[2*(i*mn + j)]; tmp1 = xz[2*(i*mn + j) + 1]; xz[2*(i*mn + j)] = xz[2*(j*mn + i)]; xz[2*(i*mn + j) + 1] = xz[2*(j*mn + i) + 1]; xz[2*(j*mn + i)] = tmp0; xz[2*(j*mn + i) + 1] = tmp1; } }PARAMETERS
Each of the functions takes the following arguments: xz Pointer to the source and destination matrix. mn Number of rows and columns in the matrix.RETURN VALUES
Each of the functions returns MLIB_SUCCESS if successful.
Otherwise it returns MLIB_FAILURE.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| MT-Level | MT-Safe |
|_____________________________|_____________________________|
SEE ALSO
mlib_MatrixTranspose_U8(3MLIB), attributes(5)
SunOS 5.11 Last change: 2 Mar 2007 2