Image resizing variables. More...
#include <avir.h>
Public Attributes | |
| int | AlphaIndex |
| Alpha-channel index, for 4-channel input. Default -1 applies gamma correction to all channels. Value of 0 or 3 bypasses gamma correction for alpha-channel at this index. | |
| int | BuildMode |
| The build mode to use, for debugging purposes. Set to -1, to select a minimal-complexity mode automatically. All build modes deliver similar results with minor deviations. | |
| double | ox |
| Start X pixel offset within source image (can be negative). Positive offset moves image to the left. | |
| double | oy |
| Start Y pixel offset within source image (can be negative). Positive offset moves image to the top. | |
| int | RndSeed |
| Random seed parameter. This parameter may be incremented after each random generator initialization. The use of this variable depends on the ditherer implementation. | |
| CImageResizerThreadPool * | ThreadPool |
Thread pool to be used by the image resizing function. Set to nullptr to use single-threaded processing. | |
| bool | UseSRGBGamma |
| Perform sRGB gamma linearization (correction). | |
Public Attributes inherited from avir::CImageResizerVarsBase | |
| int | BufLen [2] |
Intermediate buffers' lengths in fptype elements. | |
| int | BufOffs [2] |
| Offsets into the intermediate buffers, used to provide prefix elements required during processing so that no "out of range" access happens. This offset is a multiple of ElCount if pixels are stored in interleaved form. | |
| int | elalign |
| Length alignment of arrays of elements. This applies to filters and intermediate buffers: this constant forces filters and scanlines to have a length which is a multiple of this value, for more efficient SIMD implementation. | |
| int | ElCount |
The number of fptype elements used to store 1 pixel. | |
| int | ElCountIO |
| The number of source and destination image's elements used to store 1 pixel. | |
| int | fpalign |
| Suggested alignment size in bytes. This is not a required alignment, because image resizing algorithm cannot be made to have a strictly aligned data access in all cases (e.g. de-interleaved interpolation cannot perform aligned accesses). | |
| int | fppack |
The number of atomic types stored in a single fptype element. | |
| double | InGammaMult |
| Input gamma multiplier, used to convert input data to [0; 1] range. 0.0, if no gamma is in use. | |
| bool | IsResize2 |
| Use optimized doResize2() function. | |
| double | k |
| Resizing step coefficient, updated to reflect the actually used coefficient during resizing. | |
| double | o |
| Starting pixel offset inside the source image, updated to reflect the actually used offset during resizing. | |
| double | OutGammaMult |
| Output gamma multiplier, used to convert data to [0; 255/65535] range. 0.0, if no gamma is in use. | |
| int | packmode |
| 0, if interleaved packing; 1, if de-interleaved. | |
| int | ResizeStep |
| Index of the resizing step in the latest filtering steps array. | |
Image resizing variables.
Variables defined in this class are used as additional "input" variables to the image resizing function. These variables will not be changed by the avir::CImageResizer<>::resizeImage() function.