'\" te .\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved .TH mlib_MatrixAdd_U8_U8_Mod 3MLIB "2 Mar 2007" "SunOS 5.11" "mediaLib Library Functions" .SH NAME mlib_MatrixAdd_U8_U8_Mod, mlib_MatrixAdd_U8_U8_Sat, mlib_MatrixAdd_U8C_U8C_Mod, mlib_MatrixAdd_U8C_U8C_Sat, mlib_MatrixAdd_S8_S8_Mod, mlib_MatrixAdd_S8_S8_Sat, mlib_MatrixAdd_S8C_S8C_Mod, mlib_MatrixAdd_S8C_S8C_Sat, mlib_MatrixAdd_S16_U8_Mod, mlib_MatrixAdd_S16_U8_Sat, mlib_MatrixAdd_S16_S8_Mod, mlib_MatrixAdd_S16_S8_Sat, mlib_MatrixAdd_S16_S16_Mod, mlib_MatrixAdd_S16_S16_Sat, mlib_MatrixAdd_S16C_U8C_Mod, mlib_MatrixAdd_S16C_U8C_Sat, mlib_MatrixAdd_S16C_S8C_Mod, mlib_MatrixAdd_S16C_S8C_Sat, mlib_MatrixAdd_S16C_S16C_Mod, mlib_MatrixAdd_S16C_S16C_Sat, mlib_MatrixAdd_S32_S16_Mod, mlib_MatrixAdd_S32_S16_Sat, mlib_MatrixAdd_S32_S32_Mod, mlib_MatrixAdd_S32_S32_Sat, mlib_MatrixAdd_S32C_S16C_Mod, mlib_MatrixAdd_S32C_S16C_Sat, mlib_MatrixAdd_S32C_S32C_Mod, mlib_MatrixAdd_S32C_S32C_Sat \- matrix addition .SH SYNOPSIS .LP .nf cc [ \fIflag\fR... ] \fIfile\fR... \fB-lmlib\fR [ \fIlibrary\fR... ] #include \fBmlib_status\fR \fBmlib_MatrixAdd_U8_U8_Mod\fR(\fBmlib_u8 *\fR\fIz\fR, \fBconst mlib_u8 *\fR\fIx\fR, \fBconst mlib_u8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_U8_U8_Sat\fR(\fBmlib_u8 *\fR\fIz\fR, \fBconst mlib_u8 *\fR\fIx\fR, \fBconst mlib_u8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_U8C_U8C_Mod\fR(\fBmlib_u8 *\fR\fIz\fR, \fBconst mlib_u8 *\fR\fIx\fR, \fBconst mlib_u8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_U8C_U8C_Sat\fR(\fBmlib_u8 *\fR\fIz\fR, \fBconst mlib_u8 *\fR\fIx\fR, \fBconst mlib_u8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S8_S8_Mod\fR(\fBmlib_s8 *\fR\fIz\fR, \fBconst mlib_s8 *\fR\fIx\fR, \fBconst mlib_s8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S8_S8_Sat\fR(\fBmlib_s8 *\fR\fIz\fR, \fBconst mlib_s8 *\fR\fIx\fR, \fBconst mlib_s8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S8C_S8C_Mod\fR(\fBmlib_s8 *\fR\fIz\fR, \fBconst mlib_s8 *\fR\fIx\fR, \fBconst mlib_s8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S8C_S8C_Sat\fR(\fBmlib_s8 *\fR\fIz\fR, \fBconst mlib_s8 *\fR\fIx\fR, \fBconst mlib_s8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16_U8_Mod\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_u8 *\fR\fIx\fR, \fBconst mlib_u8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16_U8_Sat\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_u8 *\fR\fIx\fR, \fBconst mlib_u8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16_S8_Mod\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_s8 *\fR\fIx\fR, \fBconst mlib_s8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16_S8_Sat\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_s8 *\fR\fIx\fR, \fBconst mlib_s8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16_S16_Mod\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_s16 *\fR\fIx\fR, \fBconst mlib_s16 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16_S16_Sat\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_s16 *\fR\fIx\fR, \fBconst mlib_s16 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16C_U8C_Mod\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_u8 *\fR\fIx\fR, \fBconst mlib_u8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16C_U8C_Sat\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_u8 *\fR\fIx\fR, \fBconst mlib_u8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16C_S8C_Mod\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_s8 *\fR\fIx\fR, \fBconst mlib_s8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16C_S8C_Sat\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_s8 *\fR\fIx\fR, \fBconst mlib_s8 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16C_S16C_Mod\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_s16 *\fR\fIx\fR, \fBconst mlib_s16 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S16C_S16C_Sat\fR(\fBmlib_s16 *\fR\fIz\fR, \fBconst mlib_s16 *\fR\fIx\fR, \fBconst mlib_s16 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S32_S16_Mod\fR(\fBmlib_s32 *\fR\fIz\fR, \fBconst mlib_s16 *\fR\fIx\fR, \fBconst mlib_s16 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S32_S16_Sat\fR(\fBmlib_s32 *\fR\fIz\fR, \fBconst mlib_s16 *\fR\fIx\fR, \fBconst mlib_s16 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S32_S32_Mod\fR(\fBmlib_s32 *\fR\fIz\fR, \fBconst mlib_s32 *\fR\fIx\fR, \fBconst mlib_s32 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S32_S32_Sat\fR(\fBmlib_s32 *\fR\fIz\fR, \fBconst mlib_s32 *\fR\fIx\fR, \fBconst mlib_s32 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S32C_S16C_Mod\fR(\fBmlib_s32 *\fR\fIz\fR, \fBconst mlib_s16 *\fR\fIx\fR, \fBconst mlib_s16 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S32C_S16C_Sat\fR(\fBmlib_s32 *\fR\fIz\fR, \fBconst mlib_s16 *\fR\fIx\fR, \fBconst mlib_s16 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S32C_S32C_Mod\fR(\fBmlib_s32 *\fR\fIz\fR, \fBconst mlib_s32 *\fR\fIx\fR, \fBconst mlib_s32 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .LP .nf \fBmlib_status\fR \fBmlib_MatrixAdd_S32C_S32C_Sat\fR(\fBmlib_s32 *\fR\fIz\fR, \fBconst mlib_s32 *\fR\fIx\fR, \fBconst mlib_s32 *\fR\fIy\fR, \fBmlib_s32\fR \fIm\fR, \fBmlib_s32\fR \fIn\fR); .fi .SH DESCRIPTION .sp .LP Each of these functions adds the first source matrix to the second source matrix and writes the output to the destination matrix. .sp .LP It uses the following equation: .sp .in +2 .nf z[i] = x[i] + y[i] .fi .in -2 .sp .LP where \fBi = 0, 1, ..., (m*n - 1)\fR for real data; \fBi = 0, 1, ..., (m*n*2 - 1)\fR for complex data. .SH PARAMETERS .sp .LP Each of the functions takes the following arguments: .sp .ne 2 .mk .na \fB\fIz\fR\fR .ad .RS 5n .rt Pointer to the destination matrix. .RE .sp .ne 2 .mk .na \fB\fIx\fR\fR .ad .RS 5n .rt Pointer to the first source matrix. .RE .sp .ne 2 .mk .na \fB\fIy\fR\fR .ad .RS 5n .rt Pointer to the second source matrix. .RE .sp .ne 2 .mk .na \fB\fIm\fR\fR .ad .RS 5n .rt Number of rows in the matrices. .RE .sp .ne 2 .mk .na \fB\fIn\fR\fR .ad .RS 5n .rt Number of columns in the matrices. .RE .SH RETURN VALUES .sp .LP Each of the functions returns \fBMLIB_SUCCESS\fR if successful. Otherwise it returns \fBMLIB_FAILURE\fR. .SH ATTRIBUTES .sp .LP See \fBattributes\fR(5) for descriptions of the following attributes: .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . ATTRIBUTE TYPEATTRIBUTE VALUE _ Interface StabilityCommitted _ MT-LevelMT-Safe .TE .SH SEE ALSO .sp .LP \fBmlib_MatrixAdd_U8_Mod\fR(3MLIB), \fBattributes\fR(5)