![]() |
![]() |
![]() |
Liboil Reference Manual | ![]() |
---|
Other Function ClassesOther Function Classes — Other Function Classes |
void oil_clip_f32 (float *dest, int dstr, const float *src, int sstr, int n, const float *s2_1, const float *s3_1); void oil_clip_f64 (double *dest, int dstr, const double *src, int sstr, int n, const double *s2_1, const double *s3_1); void oil_clip_s16 (int16_t *dest, int dstr, const int16_t *src, int sstr, int n, const int16_t *s2_1, const int16_t *s3_1); void oil_clip_s32 (int32_t *dest, int dstr, const int32_t *src, int sstr, int n, const int32_t *s2_1, const int32_t *s3_1); void oil_clip_s8 (int8_t *dest, int dstr, const int8_t *src, int sstr, int n, const int8_t *s2_1, const int8_t *s3_1); void oil_clip_u16 (uint16_t *dest, int dstr, const uint16_t *src, int sstr, int n, const uint16_t *s2_1, const uint16_t *s3_1); void oil_clip_u32 (uint32_t *dest, int dstr, const uint32_t *src, int sstr, int n, const uint32_t *s2_1, const uint32_t *s3_1); void oil_clip_u8 (uint8_t *dest, int dstr, const uint8_t *src, int sstr, int n, const uint8_t *s2_1, const uint8_t *s3_1); void oil_dequantize8x8_s16 (int16_t *d_8x8, int dstr, const int16_t *s1_8x8, int sstr1, const int16_t *s2_8x8, int sstr2); void oil_diffsquaresum_f64 (double *d_1, const double *src1, int sstr1, const double *src2, int sstr2, int n); void oil_md5 (uint32_t *i_4, const uint32_t *s_16); void oil_mix_u8 (uint8_t *dest, const uint8_t *src1, const uint8_t *src2, const uint8_t *src3, int n); void oil_null (); void oil_scanlinescale2_u8 (uint8_t *dest, const uint8_t *src, int n); void oil_sincos_f64 (double *dest1, double *dest2, int n, const double *s1_1, const double *s2_1); void oil_utf8_validate (int32_t *d_1, const uint8_t *s, int n);
Functions operate on arrays of data. The arrays can be either source arrays (input only), destination arrays (output only), or in-place arrays (both input and output).
The interpretation of a parameter can usually be determined from its name. Parameters for arrays are of the form d1_1xn, where the first character represents the direction (source, destination, or in-place), the second represents the index for that particular direction, and the characters after the underscore indicate the size of the array. In this case, "1xn" represents an array that is 1 by N. Note that the index and the size can both be omitted, giving a default of 1 for the index and 1xn for the size.
Parameters that represent strides are of the form "d1s". The interpretation is similar to above, except that the s indicates a stride parameter.
The exceptions to the above rule are "dest", "src", "dstr", "sstr", etc. These are aliases for "d1", "s1", "d1s", and "s1s", respectively. This form is deprecated and will be removed in the 0.4 series.
Two special parameters are "n" and "m", which determine the size of the arrays in other parameters.
Data arrays are laid out such that rows are separated by the number of bytes given by the corresponding stride. Elements in each row are contiguous. If there is no stride parameter corresponding to an array, the rows of the array are contiguous.
void oil_clip_f32 (float *dest, int dstr, const float *src, int sstr, int n, const float *s2_1, const float *s3_1);
Clips each element in the first source array.
dest : |
|
dstr : |
|
src : |
|
sstr : |
|
n : |
|
s2_1 : |
minumum |
s3_1 : |
maximum |
void oil_clip_f64 (double *dest, int dstr, const double *src, int sstr, int n, const double *s2_1, const double *s3_1);
Clips each element in the first source array.
dest : |
|
dstr : |
|
src : |
|
sstr : |
|
n : |
|
s2_1 : |
minumum |
s3_1 : |
maximum |
void oil_clip_s16 (int16_t *dest, int dstr, const int16_t *src, int sstr, int n, const int16_t *s2_1, const int16_t *s3_1);
Clips each element in the first source array.
dest : |
|
dstr : |
|
src : |
|
sstr : |
|
n : |
|
s2_1 : |
minumum |
s3_1 : |
maximum |
void oil_clip_s32 (int32_t *dest, int dstr, const int32_t *src, int sstr, int n, const int32_t *s2_1, const int32_t *s3_1);
Clips each element in the first source array.
dest : |
|
dstr : |
|
src : |
|
sstr : |
|
n : |
|
s2_1 : |
minimum |
s3_1 : |
maximum |
void oil_clip_s8 (int8_t *dest, int dstr, const int8_t *src, int sstr, int n, const int8_t *s2_1, const int8_t *s3_1);
Clips each element in the first source array.
dest : |
|
dstr : |
|
src : |
|
sstr : |
|
n : |
|
s2_1 : |
minimum |
s3_1 : |
maximum |
void oil_clip_u16 (uint16_t *dest, int dstr, const uint16_t *src, int sstr, int n, const uint16_t *s2_1, const uint16_t *s3_1);
Clips each element in the first source array.
dest : |
|
dstr : |
|
src : |
|
sstr : |
|
n : |
|
s2_1 : |
minimum |
s3_1 : |
maximum |
void oil_clip_u32 (uint32_t *dest, int dstr, const uint32_t *src, int sstr, int n, const uint32_t *s2_1, const uint32_t *s3_1);
Clips each element in the first source array.
dest : |
|
dstr : |
|
src : |
|
sstr : |
|
n : |
|
s2_1 : |
minimum |
s3_1 : |
maximum |
void oil_clip_u8 (uint8_t *dest, int dstr, const uint8_t *src, int sstr, int n, const uint8_t *s2_1, const uint8_t *s3_1);
Clips each element in the first source array.
dest : |
|
dstr : |
|
src : |
|
sstr : |
|
n : |
|
s2_1 : |
minimum |
s3_1 : |
maximum |
void oil_dequantize8x8_s16 (int16_t *d_8x8, int dstr, const int16_t *s1_8x8, int sstr1, const int16_t *s2_8x8, int sstr2);
Multiplies each value in first source array with corresponding value
in second source array, and places result in destination array. This
function would be more appropriately called oil_mult8x8_s16()
.
d_8x8 : |
|
dstr : |
|
s1_8x8 : |
|
sstr1 : |
|
s2_8x8 : |
|
sstr2 : |
void oil_diffsquaresum_f64 (double *d_1, const double *src1, int sstr1, const double *src2, int sstr2, int n);
Subtracts each value in first source array with corresponding value in second source array, squares the result, and then sums the results over the entire array, placing the result in the destination.
d_1 : |
|
src1 : |
|
sstr1 : |
|
src2 : |
|
sstr2 : |
|
n : |
void oil_md5 (uint32_t *i_4, const uint32_t *s_16);
Convolves the MD5 checksum using the given source data. The complete algorithm for calculating MD5 checksums requires additional preparation of the data. See the example in the examples/md5 directory in the source tree.
i_4 : |
|
s_16 : |
void oil_mix_u8 (uint8_t *dest, const uint8_t *src1, const uint8_t *src2, const uint8_t *src3, int n);
dest : |
|
src1 : |
|
src2 : |
|
src3 : |
|
n : |
void oil_scanlinescale2_u8 (uint8_t *dest, const uint8_t *src, int n);
dest : |
|
src : |
|
n : |
void oil_sincos_f64 (double *dest1, double *dest2, int n, const double *s1_1, const double *s2_1);
dest1 : |
|
dest2 : |
|
n : |
|
s1_1 : |
|
s2_1 : |
<< Pixel Operations | Liboil Unstable API >> |