'\" te .\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved .TH mlib_ImageInterpTableCreate 3MLIB "2 Mar 2007" "SunOS 5.11" "mediaLib Library Functions" .SH NAME mlib_ImageInterpTableCreate \- creates an interpolation table .SH SYNOPSIS .LP .nf cc [ \fIflag\fR... ] \fIfile\fR... \fB-lmlib\fR [ \fIlibrary\fR... ] #include \fBvoid *\fR\fBmlib_ImageInterpTableCreate\fR(\fBmlib_type\fR \fItype\fR, \fBmlib_s32\fR \fIwidth\fR, \fBmlib_s32\fR \fIheight\fR, \fBmlib_s32\fR \fIleftPadding\fR, \fBmlib_s32\fR \fItopPadding\fR, \fBmlib_s32\fR \fIsubsampleBitsH\fR, \fBmlib_s32\fR \fIsubsampleBitsV\fR, \fBmlib_s32\fR \fIprecisionBits\fR, \fBconst void *\fR\fIdataH\fR, \fBconst void *\fR\fIdataV\fR); .fi .SH DESCRIPTION .sp .LP The \fBmlib_ImageInterpTableCreate()\fR function creates an interpolation table based on prameters spedified. .sp .LP This function creates an internal data structure, an interpolation table, which can be used by some image geometric functions for implementing a table-driven interpolation algorithm. .sp .LP The parameter type defines the type of \fBdataH\fR/\fBdataV\fR input arrays and can be \fBMLIB_BYTE\fR, \fBMLIB_SHORT\fR, \fBMLIB_USHORT\fR, \fBMLIB_INT\fR, \fBMLIB_FLOAT\fR, or \fBMLIB_DOUBLE\fR. .sp .LP The \fBdataH\fR array should have at least \fBwidth*2**subsampleBitsH\fR entries. \fBdataH[i*2**subsampleBitsH]\fR holds the coefficient for the leftmost neighboring pixel, \fBdataH[i*2**subsampleBitsH + 1]\fR holds the coefficient for the second neighboring pixel from left, ..., and \fBdataH[i*2**subsampleBitsH + width - 1]\fR holds the coefficient for the rightmost neighboring pixel, where \fBi = 0, 1, 2, ..., 2**subsampleBitsH - 1\fR. .sp .LP The \fBdataV\fR array should have at least \fBheight*2**subsampleBitsV\fR entries or should be \fBNULL\fR. If \fBdataV\fR is \fBNULL\fR, then \fBdataH\fR is used in its place, and in this case the parameters \fBtopPadding\fR, \fBheight\fR, and \fBsubsampleBitsV\fR are ignored. .SH PARAMETERS .sp .LP The function takes the following arguments: .sp .ne 2 .mk .na \fB\fItype\fR\fR .ad .RS 18n .rt Data type of the coefficients. .RE .sp .ne 2 .mk .na \fB\fIwidth\fR\fR .ad .RS 18n .rt Width of the interpolation kernel in pixels. .RE .sp .ne 2 .mk .na \fB\fIheight\fR\fR .ad .RS 18n .rt Height of the interpolation kernel in pixels. .RE .sp .ne 2 .mk .na \fB\fIleftPadding\fR\fR .ad .RS 18n .rt Number of pixels lying to the left of the interpolation kernel key position. .RE .sp .ne 2 .mk .na \fB\fItopPadding\fR\fR .ad .RS 18n .rt Number of pixels lying above the interpolation kernel key position. .RE .sp .ne 2 .mk .na \fB\fIsubsampleBitsH\fR\fR .ad .RS 18n .rt Numbers of bits used for the horizontal subsample position. .RE .sp .ne 2 .mk .na \fB\fIsubsampleBitsV\fR\fR .ad .RS 18n .rt Numbers of bits used for the vertical subsample position. .RE .sp .ne 2 .mk .na \fB\fIprecisionBits\fR\fR .ad .RS 18n .rt Number of fractional bits used to describe the coefficients. .RE .sp .ne 2 .mk .na \fB\fIdataH\fR\fR .ad .RS 18n .rt Pointer to horizontal coefficient data. .RE .sp .ne 2 .mk .na \fB\fIdataV\fR\fR .ad .RS 18n .rt Pointer to vertical coefficient data. .RE .SH RETURN VALUES .sp .LP The function returns a pointer to an interpolation table. .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_ImageInterpTableDelete\fR(3MLIB), \fBmlib_ImageAffineTable\fR(3MLIB), \fBmlib_ImageZoomTranslateTable\fR(3MLIB), \fBmlib_ImageGridWarpTable\fR(3MLIB), \fBmlib_ImagePolynomialWarpTable\fR(3MLIB), \fBattributes\fR(5)