MrSID Decode SDK for Raster Reference Manual
9.5.1.4427
|
add resolutions to the image More...
#include <lti_multiresFilter.h>
Public Member Functions | |
LT_STATUS | initialize (LTIImageStage *srcImage) |
initializer More... | |
LT_STATUS | initialize (LTIImageStage *srcImage, lt_int8 scaleFactor) |
initializer (for compatibly with the old LTIStaticZoomFilter) More... | |
LT_STATUS | initialize (LTIImageStage *srcImage, double deltaMag, double minMag, double maxMag) |
LT_STATUS | getDimsAtMag (double mag, lt_uint32 &width, lt_uint32 &height) const |
lt_int64 | getEncodingCost (const LTIScene &scene) const |
bool | getReaderScene (const LTIScene &decodeScene, LTIScene &readerScene) const |
virtual lt_uint32 | getModifications (const LTIScene &scene) const |
bool | getPipelineInfo (LTIPipelineInfo info) const |
LT_STATUS | setResampleMethod (LTIResampleMethod resampleMethod) |
Set resampling method. More... | |
void | setMagSnapThreshold (double threshold) |
void | setDeltaMagXY (double deltaMagX, double deltaMagY) |
Static Public Member Functions | |
static LTIMultiResFilter * | create (void) |
static double | magForIcon (const LTIImage &image, lt_uint32 iconSize) |
static double | magForIcon (lt_uint32 width, lt_uint32 height, lt_uint32 iconSize) |
static LT_STATUS | push (LTIImageStage *&pipeline, const LTIScene &dstScene) |
static LT_STATUS | push (LTIImageStage *&pipeline, double mag) |
Protected Types | |
enum | Mode { MODE_INVALID, MODE_RESAMPLE, MODE_PASSTHROUGH, MODE_DOWNSAMPLE_FULLREAD, MODE_ALL_AT_ONCE } |
enum | { kMaxMagnification = 512 } |
Protected Member Functions | |
LTIMultiResFilter (void) | |
virtual | ~LTIMultiResFilter (void) |
LT_STATUS | decodeBegin (const LTIPixel &pixelProps, const LTIScene &fullScene) |
LT_STATUS | decodeStrip (LTISceneBuffer &stripBuffer, const LTIScene &stripScene) |
LT_STATUS | decodeEnd (void) |
bool | getChildScene (const LTIScene &scene, Mode &mode, double &xScale, double &yScale, LTIScene &childScene) const |
Extends the magnification range of an image, to allow decodes at different resolutions than the image stage would normally allow.
Note that this class is not the same as at the LTIStaticZoomFilter class, which scales the magnification statically for the pipeline when initially constructed. This class allows for the zoom level to be extended for an individual decode operation.
Definition at line 39 of file lti_multiresFilter.h.
|
protected |
Enumerator | |
---|---|
kMaxMagnification |
Definition at line 142 of file lti_multiresFilter.h.
|
protected |
Enumerator | |
---|---|
MODE_INVALID | |
MODE_RESAMPLE | |
MODE_PASSTHROUGH | |
MODE_DOWNSAMPLE_FULLREAD | |
MODE_ALL_AT_ONCE |
Definition at line 127 of file lti_multiresFilter.h.
|
protected |
|
protectedvirtual |
|
static |
|
protected |
|
protected |
|
protected |
|
protected |
LT_STATUS LTIMultiResFilter::getDimsAtMag | ( | double | mag, |
lt_uint32 & | width, | ||
lt_uint32 & | height | ||
) | const |
lt_int64 LTIMultiResFilter::getEncodingCost | ( | const LTIScene & | scene | ) | const |
bool LTIMultiResFilter::getPipelineInfo | ( | LTIPipelineInfo | info | ) | const |
bool LTIMultiResFilter::getReaderScene | ( | const LTIScene & | decodeScene, |
LTIScene & | readerScene | ||
) | const |
LT_STATUS LTIMultiResFilter::initialize | ( | LTIImageStage * | srcImage | ) |
Creates an image stage which can be decoded at arbitrary magnifications.
Normally image stages will only support a limited set of magnification values for the LTIScene passed to LTIImageStage::read() – often, only 1.0. This class will perform any needed resampling on the fly so that arbitrary (power-of-two) magnifications are supported.
srcImage | the base image |
LT_STATUS LTIMultiResFilter::initialize | ( | LTIImageStage * | srcImage, |
lt_int8 | scaleFactor | ||
) |
Magnifies the image by the scale factor given. The image width, height, geographic resolution, etc, are all updated accordingly.
A positive scale factor performs a "res-up" operation, while a negative scale factor will reduce the image. That is, a scale factor of 2 will double the image size, e.g. from a magnification of 1.0 to 2.0, while a scale factor of -2 will halve the image size, e.g. from a magnification of 1.0 to 0.5.
srcImage | the base image |
scaleFactor | the integer scale factor |
LT_STATUS LTIMultiResFilter::initialize | ( | LTIImageStage * | srcImage, |
double | deltaMag, | ||
double | minMag, | ||
double | maxMag | ||
) |
|
static |
|
static |
|
static |
void LTIMultiResFilter::setDeltaMagXY | ( | double | deltaMagX, |
double | deltaMagY | ||
) |
void LTIMultiResFilter::setMagSnapThreshold | ( | double | threshold | ) |
LT_STATUS LTIMultiResFilter::setResampleMethod | ( | LTIResampleMethod | resampleMethod | ) |
resampleMethod | resampling method See LTIResampleMethod |
LizardTech |