Go to the source code of this file.
Functions | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterMMXdetect (void) |
MMX detection routine (with override flag). | |
SDL_IMAGEFILTER_SCOPE void | SDL_imageFilterMMXoff (void) |
Disable MMX check for filter functions and and force to use non-MMX C based code. | |
SDL_IMAGEFILTER_SCOPE void | SDL_imageFilterMMXon (void) |
Enable MMX check for filter functions and use MMX code if available. | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterAdd (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using Add: D = saturation255(S1 + S2). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterMean (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using Mean: D = S1/2 + S2/2. | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterSub (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using Sub: D = saturation0(S1 - S2). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterAbsDiff (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using AbsDiff: D = | S1 - S2 |. | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterMult (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using Mult: D = saturation255(S1 * S2). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterMultNor (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using MultNor: D = S1 * S2. | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterMultDivby2 (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using MultDivby2: D = saturation255(S1/2 * S2). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterMultDivby4 (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using MultDivby4: D = saturation255(S1/2 * S2/2). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterBitAnd (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using BitAnd: D = S1 & S2. | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterBitOr (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using BitOr: D = S1 | S2. | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterDiv (unsigned char *Src1, unsigned char *Src2, unsigned char *Dest, unsigned int length) |
Filter using Div: D = S1 / S2. | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterBitNegation (unsigned char *Src1, unsigned char *Dest, unsigned int length) |
Filter using BitNegation: D = !S. | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterAddByte (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char C) |
Filter using AddByte: D = saturation255(S + C). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterAddUint (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned int C) |
Filter using AddUint: D = saturation255((S[i] + Cs[i % 4]), Cs=Swap32((uint)C). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterAddByteToHalf (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char C) |
Filter using AddByteToHalf: D = saturation255(S/2 + C). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterSubByte (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char C) |
Filter using SubByte: D = saturation0(S - C). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterSubUint (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned int C) |
Filter using SubUint: D = saturation0(S[i] - Cs[i % 4]), Cs=Swap32((uint)C). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterShiftRight (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char N) |
Filter using ShiftRight: D = saturation0(S >> N). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterShiftRightUint (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char N) |
Filter using ShiftRightUint: D = saturation0((uint)S[i] >> N). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterMultByByte (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char C) |
Filter using MultByByte: D = saturation255(S * C). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterShiftRightAndMultByByte (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char N, unsigned char C) |
Filter using ShiftRightAndMultByByte: D = saturation255((S >> N) * C). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterShiftLeftByte (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char N) |
Filter using ShiftLeftByte: D = (S << N). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterShiftLeftUint (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char N) |
Filter using ShiftLeftUint: D = ((uint)S << N). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterShiftLeft (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char N) |
Filter ShiftLeft: D = saturation255(S << N). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterBinarizeUsingThreshold (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char T) |
Filter using BinarizeUsingThreshold: D = (S >= T) ? 255:0. | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterClipToRange (unsigned char *Src1, unsigned char *Dest, unsigned int length, unsigned char Tmin, unsigned char Tmax) |
Filter using ClipToRange: D = (S >= Tmin) & (S <= Tmax) S:Tmin | Tmax. | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterNormalizeLinear (unsigned char *Src, unsigned char *Dest, unsigned int length, int Cmin, int Cmax, int Nmin, int Nmax) |
Filter using NormalizeLinear: D = saturation255((Nmax - Nmin)/(Cmax - Cmin)*(S - Cmin) + Nmin). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterConvolveKernel3x3Divide (unsigned char *Src, unsigned char *Dest, int rows, int columns, signed short *Kernel, unsigned char Divisor) |
Filter using ConvolveKernel3x3Divide: Dij = saturation0and255( ... ). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterConvolveKernel5x5Divide (unsigned char *Src, unsigned char *Dest, int rows, int columns, signed short *Kernel, unsigned char Divisor) |
Filter using ConvolveKernel5x5Divide: Dij = saturation0and255( ... ). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterConvolveKernel7x7Divide (unsigned char *Src, unsigned char *Dest, int rows, int columns, signed short *Kernel, unsigned char Divisor) |
Filter using ConvolveKernel7x7Divide: Dij = saturation0and255( ... ). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterConvolveKernel9x9Divide (unsigned char *Src, unsigned char *Dest, int rows, int columns, signed short *Kernel, unsigned char Divisor) |
Filter using ConvolveKernel9x9Divide: Dij = saturation0and255( ... ). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterConvolveKernel3x3ShiftRight (unsigned char *Src, unsigned char *Dest, int rows, int columns, signed short *Kernel, unsigned char NRightShift) |
Filter using ConvolveKernel3x3ShiftRight: Dij = saturation0and255( ... ). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterConvolveKernel5x5ShiftRight (unsigned char *Src, unsigned char *Dest, int rows, int columns, signed short *Kernel, unsigned char NRightShift) |
Filter using ConvolveKernel5x5ShiftRight: Dij = saturation0and255( ... ). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterConvolveKernel7x7ShiftRight (unsigned char *Src, unsigned char *Dest, int rows, int columns, signed short *Kernel, unsigned char NRightShift) |
Filter using ConvolveKernel7x7ShiftRight: Dij = saturation0and255( ... ). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterConvolveKernel9x9ShiftRight (unsigned char *Src, unsigned char *Dest, int rows, int columns, signed short *Kernel, unsigned char NRightShift) |
Filter using ConvolveKernel9x9ShiftRight: Dij = saturation255( ... ). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterSobelX (unsigned char *Src, unsigned char *Dest, int rows, int columns) |
Filter using SobelX: Dij = saturation255( ... ). | |
SDL_IMAGEFILTER_SCOPE int | SDL_imageFilterSobelXShiftRight (unsigned char *Src, unsigned char *Dest, int rows, int columns, unsigned char NRightShift) |
Filter using SobelXShiftRight: Dij = saturation255( ... ). | |
SDL_IMAGEFILTER_SCOPE void | SDL_imageFilterAlignStack (void) |
Align stack to 32 byte boundary,. | |
SDL_IMAGEFILTER_SCOPE void | SDL_imageFilterRestoreStack (void) |
Restore previously aligned stack. |
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterAbsDiff | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using AbsDiff: D = | S1 - S2 |.
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 581 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterAdd | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using Add: D = saturation255(S1 + S2).
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 181 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterAddByte | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | C | |||
) |
Filter using AddByte: D = saturation255(S + C).
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
C | Constant value to add (C). |
Definition at line 1782 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterAddByteToHalf | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | C | |||
) |
Filter using AddByteToHalf: D = saturation255(S/2 + C).
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
C | Constant to add (C). |
Definition at line 2089 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterAddUint | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned int | C | |||
) |
Filter using AddUint: D = saturation255((S[i] + Cs[i % 4]), Cs=Swap32((uint)C).
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
C | Constant to add (C). |
Definition at line 1923 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE void SDL_imageFilterAlignStack | ( | void | ) |
Align stack to 32 byte boundary,.
Definition at line 7511 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterBinarizeUsingThreshold | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | T | |||
) |
Filter using BinarizeUsingThreshold: D = (S >= T) ? 255:0.
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
T | The threshold boundary (inclusive). |
Definition at line 3691 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterBitAnd | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using BitAnd: D = S1 & S2.
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 1286 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterBitNegation | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using BitNegation: D = !S.
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. |
Definition at line 1648 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterBitOr | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using BitOr: D = S1 | S2.
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 1408 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterClipToRange | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | Tmin, | |||
unsigned char | Tmax | |||
) |
Filter using ClipToRange: D = (S >= Tmin) & (S <= Tmax) S:Tmin | Tmax.
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
Tmin | Lower (inclusive) boundary of the clipping range. | |
Tmax | Upper (inclusive) boundary of the clipping range. |
Definition at line 3864 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterConvolveKernel3x3Divide | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
int | rows, | |||
int | columns, | |||
signed short * | Kernel, | |||
unsigned char | Divisor | |||
) |
Filter using ConvolveKernel3x3Divide: Dij = saturation0and255( ... ).
Src | The source 2D byte array to convolve. Should be different from destination. | |
Dest | The destination 2D byte array to store the result in. Should be different from source. | |
rows | Number of rows in source/destination array. Must be >2. | |
columns | Number of columns in source/destination array. Must be >2. | |
Kernel | The 2D convolution kernel of size 3x3. | |
Divisor | The divisor of the convolution sum. Must be >0. |
Note: Non-MMX implementation not available for this function.
Definition at line 4175 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterConvolveKernel3x3ShiftRight | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
int | rows, | |||
int | columns, | |||
signed short * | Kernel, | |||
unsigned char | NRightShift | |||
) |
Filter using ConvolveKernel3x3ShiftRight: Dij = saturation0and255( ... ).
Src | The source 2D byte array to convolve. Should be different from destination. | |
Dest | The destination 2D byte array to store the result in. Should be different from source. | |
rows | Number of rows in source/destination array. Must be >2. | |
columns | Number of columns in source/destination array. Must be >2. | |
Kernel | The 2D convolution kernel of size 3x3. | |
NRightShift | The number of right bit shifts to apply to the convolution sum. Must be <7. |
Note: Non-MMX implementation not available for this function.
Definition at line 5569 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterConvolveKernel5x5Divide | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
int | rows, | |||
int | columns, | |||
signed short * | Kernel, | |||
unsigned char | Divisor | |||
) |
Filter using ConvolveKernel5x5Divide: Dij = saturation0and255( ... ).
Src | The source 2D byte array to convolve. Should be different from destination. | |
Dest | The destination 2D byte array to store the result in. Should be different from source. | |
rows | Number of rows in source/destination array. Must be >4. | |
columns | Number of columns in source/destination array. Must be >4. | |
Kernel | The 2D convolution kernel of size 5x5. | |
Divisor | The divisor of the convolution sum. Must be >0. |
Note: Non-MMX implementation not available for this function.
Definition at line 4364 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterConvolveKernel5x5ShiftRight | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
int | rows, | |||
int | columns, | |||
signed short * | Kernel, | |||
unsigned char | NRightShift | |||
) |
Filter using ConvolveKernel5x5ShiftRight: Dij = saturation0and255( ... ).
Src | The source 2D byte array to convolve. Should be different from destination. | |
Dest | The destination 2D byte array to store the result in. Should be different from source. | |
rows | Number of rows in source/destination array. Must be >4. | |
columns | Number of columns in source/destination array. Must be >4. | |
Kernel | The 2D convolution kernel of size 5x5. | |
NRightShift | The number of right bit shifts to apply to the convolution sum. Must be <7. |
Note: Non-MMX implementation not available for this function.
Definition at line 5745 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterConvolveKernel7x7Divide | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
int | rows, | |||
int | columns, | |||
signed short * | Kernel, | |||
unsigned char | Divisor | |||
) |
Filter using ConvolveKernel7x7Divide: Dij = saturation0and255( ... ).
Src | The source 2D byte array to convolve. Should be different from destination. | |
Dest | The destination 2D byte array to store the result in. Should be different from source. | |
rows | Number of rows in source/destination array. Must be >6. | |
columns | Number of columns in source/destination array. Must be >6. | |
Kernel | The 2D convolution kernel of size 7x7. | |
Divisor | The divisor of the convolution sum. Must be >0. |
Note: Non-MMX implementation not available for this function.
Definition at line 4666 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterConvolveKernel7x7ShiftRight | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
int | rows, | |||
int | columns, | |||
signed short * | Kernel, | |||
unsigned char | NRightShift | |||
) |
Filter using ConvolveKernel7x7ShiftRight: Dij = saturation0and255( ... ).
Src | The source 2D byte array to convolve. Should be different from destination. | |
Dest | The destination 2D byte array to store the result in. Should be different from source. | |
rows | Number of rows in source/destination array. Must be >6. | |
columns | Number of columns in source/destination array. Must be >6. | |
Kernel | The 2D convolution kernel of size 7x7. | |
NRightShift | The number of right bit shifts to apply to the convolution sum. Must be <7. |
Note: Non-MMX implementation not available for this function.
Definition at line 6045 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterConvolveKernel9x9Divide | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
int | rows, | |||
int | columns, | |||
signed short * | Kernel, | |||
unsigned char | Divisor | |||
) |
Filter using ConvolveKernel9x9Divide: Dij = saturation0and255( ... ).
Src | The source 2D byte array to convolve. Should be different from destination. | |
Dest | The destination 2D byte array to store the result in. Should be different from source. | |
rows | Number of rows in source/destination array. Must be >8. | |
columns | Number of columns in source/destination array. Must be >8. | |
Kernel | The 2D convolution kernel of size 9x9. | |
Divisor | The divisor of the convolution sum. Must be >0. |
Note: Non-MMX implementation not available for this function.
Definition at line 5022 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterConvolveKernel9x9ShiftRight | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
int | rows, | |||
int | columns, | |||
signed short * | Kernel, | |||
unsigned char | NRightShift | |||
) |
Filter using ConvolveKernel9x9ShiftRight: Dij = saturation255( ... ).
Src | The source 2D byte array to convolve. Should be different from destination. | |
Dest | The destination 2D byte array to store the result in. Should be different from source. | |
rows | Number of rows in source/destination array. Must be >8. | |
columns | Number of columns in source/destination array. Must be >8. | |
Kernel | The 2D convolution kernel of size 9x9. | |
NRightShift | The number of right bit shifts to apply to the convolution sum. Must be <7. |
Note: Non-MMX implementation not available for this function.
Definition at line 6407 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterDiv | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using Div: D = S1 / S2.
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 1535 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterMean | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using Mean: D = S1/2 + S2/2.
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 330 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterMMXdetect | ( | void | ) |
MMX detection routine (with override flag).
Definition at line 74 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE void SDL_imageFilterMMXoff | ( | void | ) |
Disable MMX check for filter functions and and force to use non-MMX C based code.
Definition at line 93 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE void SDL_imageFilterMMXon | ( | void | ) |
Enable MMX check for filter functions and use MMX code if available.
Definition at line 101 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterMult | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using Mult: D = saturation255(S1 * S2).
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 740 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterMultByByte | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | C | |||
) |
Filter using MultByByte: D = saturation255(S * C).
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. | |
C | Constant to multiply with (C). |
Definition at line 2877 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterMultDivby2 | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using MultDivby2: D = saturation255(S1/2 * S2).
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 1012 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterMultDivby4 | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using MultDivby4: D = saturation255(S1/2 * S2/2).
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 1163 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterMultNor | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using MultNor: D = S1 * S2.
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 862 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterNormalizeLinear | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
int | Cmin, | |||
int | Cmax, | |||
int | Nmin, | |||
int | Nmax | |||
) |
Filter using NormalizeLinear: D = saturation255((Nmax - Nmin)/(Cmax - Cmin)*(S - Cmin) + Nmin).
Src | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
Cmin | Normalization constant. | |
Cmax | Normalization constant. | |
Nmin | Normalization constant. | |
Nmax | Normalization constant. |
Definition at line 4104 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE void SDL_imageFilterRestoreStack | ( | void | ) |
Restore previously aligned stack.
Definition at line 7539 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterShiftLeft | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | N | |||
) |
Filter ShiftLeft: D = saturation255(S << N).
Src1 | Pointer to the start of the source byte array (S1). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
N | Number of bit-positions to shift (N). Valid range is 0 to 8. |
Definition at line 3536 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterShiftLeftByte | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | N | |||
) |
Filter using ShiftLeftByte: D = (S << N).
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. | |
N | Number of bit-positions to shift (N). Valid range is 0 to 8. |
Definition at line 3211 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterShiftLeftUint | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | N | |||
) |
Filter using ShiftLeftUint: D = ((uint)S << N).
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
N | Number of bit-positions to shift (N). Valid range is 0 to 32. |
Definition at line 3338 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterShiftRight | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | N | |||
) |
Filter using ShiftRight: D = saturation0(S >> N).
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
N | Number of bit-positions to shift (N). Valid range is 0 to 8. |
Definition at line 2538 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterShiftRightAndMultByByte | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | N, | |||
unsigned char | C | |||
) |
Filter using ShiftRightAndMultByByte: D = saturation255((S >> N) * C).
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
N | Number of bit-positions to shift (N). Valid range is 0 to 8. | |
C | Constant to multiply with (C). |
Definition at line 3048 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterShiftRightUint | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | N | |||
) |
Filter using ShiftRightUint: D = saturation0((uint)S[i] >> N).
Src1 | Pointer to the start of the source byte array (S1). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
N | Number of bit-positions to shift (N). Valid range is 0 to 32. |
Definition at line 2666 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterSobelX | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
int | rows, | |||
int | columns | |||
) |
Filter using SobelX: Dij = saturation255( ... ).
Src | The source 2D byte array to sobel-filter. Should be different from destination. | |
Dest | The destination 2D byte array to store the result in. Should be different from source. | |
rows | Number of rows in source/destination array. Must be >2. | |
columns | Number of columns in source/destination array. Must be >7. |
Note: Non-MMX implementation not available for this function.
Definition at line 6986 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterSobelXShiftRight | ( | unsigned char * | Src, | |
unsigned char * | Dest, | |||
int | rows, | |||
int | columns, | |||
unsigned char | NRightShift | |||
) |
Filter using SobelXShiftRight: Dij = saturation255( ... ).
Src | The source 2D byte array to sobel-filter. Should be different from destination. | |
Dest | The destination 2D byte array to store the result in. Should be different from source. | |
rows | Number of rows in source/destination array. Must be >2. | |
columns | Number of columns in source/destination array. Must be >8. | |
NRightShift | The number of right bit shifts to apply to the filter sum. Must be <7. |
Note: Non-MMX implementation not available for this function.
Definition at line 7238 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterSub | ( | unsigned char * | Src1, | |
unsigned char * | Src2, | |||
unsigned char * | Dest, | |||
unsigned int | length | |||
) |
Filter using Sub: D = saturation0(S1 - S2).
Src1 | Pointer to the start of the first source byte array (S1). | |
Src2 | Pointer to the start of the second source byte array (S2). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. |
Definition at line 452 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterSubByte | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned char | C | |||
) |
Filter using SubByte: D = saturation0(S - C).
Src1 | Pointer to the start of the source byte array (S). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source arrays. | |
C | Constant to subtract (C). |
Definition at line 2230 of file SDL_imageFilter.c.
SDL_IMAGEFILTER_SCOPE int SDL_imageFilterSubUint | ( | unsigned char * | Src1, | |
unsigned char * | Dest, | |||
unsigned int | length, | |||
unsigned int | C | |||
) |
Filter using SubUint: D = saturation0(S[i] - Cs[i % 4]), Cs=Swap32((uint)C).
Src1 | Pointer to the start of the source byte array (S1). | |
Dest | Pointer to the start of the destination byte array (D). | |
length | The number of bytes in the source array. | |
C | Constant to subtract (C). |
Definition at line 2371 of file SDL_imageFilter.c.