mediaLib Library Functions mlibImageDivAlphaInp(3MLIB)
NAME
mlibImageDivAlphaInp - alpha channel division, in place
SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include
mlibstatus mlibImageDivAlphaInp(mlibimage *srcdst, mlibs32 cmask);
DESCRIPTION
The mlibImageDivAlphaInp() function divides color channels
by the alpha channel on a pixel-by-pixel basis, in place.
For the MLIBYTE image, it uses the following equation:
srcdst[x][y][c] = srcdst[x][y][c] / (srcdst[x][y][a] * 2**(-8))
For the MLIBSHORT image, it uses the following equation:
srcdst[x][y][c] = srcdst[x][y][c] / (srcdst[x][y][a] * 2**(-15))
For the MLIBUSHORT image, it uses the following equation:
srcdst[x][y][c] = srcdst[x][y][c] / (srcdst[x][y][a] * 2**(-16))
For the MLIBINT image, it uses the following equation:
srcdst[x][y][c] = srcdst[x][y][c] / (srcdst[x][y][a] * 2**(-31))
where c and a are the indices for the color channels and the
alpha channel, respectively, so c != a.
In the case of srcdst[x][y][a] = 0,
srcdst[x][y][c] = 0 if srcdst[x][y][c] = 0
srcdst[x][y][c] = DATATYPEMAX if srcdst[x][y][c] > 0
srcdst[x][y][c] = DATATYPEMIN if srcdst[x][y][c] < 0
SunOS 5.11 Last change: 2 Mar 2007 1
mediaLib Library Functions mlibImageDivAlphaInp(3MLIB)
where DATATYPE is MLIBU8, MLIBS16, MLIBU16, or MLIBS32
for an image of type MLIBYTE, MLIBSHORT, MLIBUSHORT, or
MLIBINT, respectively.
PARAMETERS
The function takes the following arguments:
srcdst Pointer to source and destination image.
cmask Channel mask to indicate the alpha channel. Each
bit of the mask represents a channel in the image.
The channel corresponding to the 1 bit of cmask is
the alpha channel.
RETURN VALUES
The function returns MLIBSUCES if successful. Otherwise
it returns MLIBFAILURE.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Committed
MT-Level MT-Safe
SEE ALSO
mlibImageDivAlpha(3MLIB), mlibImageDivAlphaFp(3MLIB),
mlibImageDivAlphaFpInp(3MLIB), attributes(5)
SunOS 5.11 Last change: 2 Mar 2007 2
|