1mlib_VectorScale_U8_Mod(3MLmIeBd)iaLib Library Functimolnisb_VectorScale_U8_Mod(3MLIB)
2
3
4

NAME

6       mlib_VectorScale_U8_Mod,       mlib_VectorScale_U8_Sat,       mlib_Vec‐
7       torScale_U8C_Mod,  mlib_VectorScale_U8C_Sat,   mlib_VectorScale_S8_Mod,
8       mlib_VectorScale_S8_Sat,       mlib_VectorScale_S8C_Mod,      mlib_Vec‐
9       torScale_S8C_Sat,  mlib_VectorScale_S16_Mod,  mlib_VectorScale_S16_Sat,
10       mlib_VectorScale_S16C_Mod,     mlib_VectorScale_S16C_Sat,     mlib_Vec‐
11       torScale_S32_Mod, mlib_VectorScale_S32_Sat,  mlib_VectorScale_S32C_Mod,
12       mlib_VectorScale_S32C_Sat - vector linear scaling, in place
13

SYNOPSIS

15       cc [ flag... ] file... -lmlib [ library... ]
16       #include <mlib.h>
17
18       mlib_status mlib_VectorScale_U8_Mod(mlib_u8 *xz,
19            const mlib_u8 *a, const mlib_u8 *b, mlib_s32 n);
20
21
22       mlib_status mlib_VectorScale_U8_Sat(mlib_u8 *xz,
23            const mlib_u8 *a, const mlib_u8 *b, mlib_s32 n);
24
25
26       mlib_status mlib_VectorScale_U8C_Mod(mlib_u8 *xz,
27            const mlib_u8 *a, const mlib_u8 *b, mlib_s32 n);
28
29
30       mlib_status mlib_VectorScale_U8C_Sat(mlib_u8 *xz,
31            const mlib_u8 *a, const mlib_u8 *b, mlib_s32 n);
32
33
34       mlib_status mlib_VectorScale_S8_Mod(mlib_s8 *xz,
35            const mlib_s8 *a, const mlib_s8 *b, mlib_s32 n);
36
37
38       mlib_status mlib_VectorScale_S8_Sat(mlib_s8 *xz,
39            const mlib_s8 *a, const mlib_s8 *b, mlib_s32 n);
40
41
42       mlib_status mlib_VectorScale_S8C_Mod(mlib_s8 *xz,
43            const mlib_s8 *a, const mlib_s8 *b, mlib_s32 n);
44
45
46       mlib_status mlib_VectorScale_S8C_Sat(mlib_s8 *xz,
47            const mlib_s8 *a, const mlib_s8 *b, mlib_s32 n);
48
49
50       mlib_status mlib_VectorScale_S16_Mod(mlib_s16 *xz,
51            const mlib_s16 *a, const mlib_s16 *b, mlib_s32 n);
52
53
54       mlib_status mlib_VectorScale_S16_Sat(mlib_s16 *xz,
55            const mlib_s16 *a, const mlib_s16 *b, mlib_s32 n);
56
57
58       mlib_status mlib_VectorScale_S16C_Mod(mlib_s16 *xz,
59            const mlib_s16 *a, const mlib_s16 *b, mlib_s32 n);
60
61
62       mlib_status mlib_VectorScale_S16C_Sat(mlib_s16 *xz,
63            const mlib_s16 *a, const mlib_s16 *b, mlib_s32 n);
64
65
66       mlib_status mlib_VectorScale_S32_Mod(mlib_s32 *xz,
67            const mlib_s32 *a, const mlib_s32 *b, mlib_s32 n);
68
69
70       mlib_status mlib_VectorScale_S32_Sat(mlib_s32 *xz,
71            const mlib_s32 *a, const mlib_s32 *b, mlib_s32 n);
72
73
74       mlib_status mlib_VectorScale_S32C_Mod(mlib_s32 *xz,
75            const mlib_s32 *a, const mlib_s32 *b, mlib_s32 n);
76
77
78       mlib_status mlib_VectorScale_S32C_Sat(mlib_s32 *xz,
79            const mlib_s32 *a, const mlib_s32 *b, mlib_s32 n);
80
81

DESCRIPTION

83       Each  of  these  functions  performs an in-place scaling of a vector by
84       multiplying by a scalar and adding an offset.
85
86
87       For real data, the following equation is used:
88
89         xz[i] = a[0]*xz[i] + b[0]
90
91
92
93       where i = 0, 1, ..., (n - 1).
94
95
96       For complex data, the following equation is used:
97
98         tmp         = xz[2*i]
99         xz[2*i]     = a[0]*tmp - a[1]*xz[2*i + 1] + b[0]
100         xz[2*i + 1] = a[1]*tmp + a[0]*xz[2*i + 1] + b[1]
101
102
103
104       where i = 0, 1, ..., (n - 1).
105

PARAMETERS

107       Each of the functions takes the following arguments:
108
109       xz    Pointer to the first element of the source and  destination  vec‐
110             tor.
111
112
113       a     Pointer  to  the source scaling factor. When the function is used
114             with complex data types, a[0] contains the real part of the scal‐
115             ing  factor,  and a[1] contains the imaginary part of the scaling
116             factor.
117
118
119       b     Pointer to the source offset. When the function is used with com‐
120             plex  data  types, b[0] contains the real part of the offset, and
121             b[1] contains the imaginary part of the offset.
122
123
124       n     Number of elements in the vectors.
125
126

RETURN VALUES

128       Each of the functions returns MLIB_SUCCESS if successful. Otherwise  it
129       returns MLIB_FAILURE.
130

ATTRIBUTES

132       See attributes(5) for descriptions of the following attributes:
133
134
135
136
137       ┌─────────────────────────────┬─────────────────────────────┐
138       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
139       ├─────────────────────────────┼─────────────────────────────┤
140       │Interface Stability          │Committed                    │
141       ├─────────────────────────────┼─────────────────────────────┤
142       │MT-Level                     │MT-Safe                      │
143       └─────────────────────────────┴─────────────────────────────┘
144

SEE ALSO

146       mlib_VectorScale_U8_U8_Mod(3MLIB), attributes(5)
147
148
149
150SunOS 5.11                        2 Mar 2007    mlib_VectorScale_U8_Mod(3MLIB)
Impressum