MrSID Decode SDK for Raster Reference Manual 9.5.4.4709

- Main Page
- Namespaces
- Classes
- Files
- Examples

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
LTIDynamicRangeFilter Class Reference

change dynamic range or datatype of the samples of the image More...

`#include <lti_dynamicRangeFilter.h>`

Inheritance diagram for LTIDynamicRangeFilter:
[legend]
Collaboration diagram for LTIDynamicRangeFilter:
[legend]

## Public Member Functions
LT_STATUS | initialize (LTIImageStage *srcImage, const LTIPixel *srcDRMin=NULL, const LTIPixel *srcDRMax=NULL, LTIDataType dstDataType=LTI_DATATYPE_INVALID)
| initializer More...
LT_STATUS | initialize (LTIImageStage *srcImage, LTIDataType dstDataType)
| initializer (for compatibly with LTIDataTypeTransformer) More...
LT_STATUS | initialize (LTIImageStage *srcImage, const LTIPixel *srcMin, const LTIPixel *srcMax, const LTIPixel &dstMin, const LTIPixel &dstMax)
| initializer More...
virtual lt_int64 | getEncodingCost (const LTIScene &scene) const
| get the cost to encode this scene More...
virtual lt_uint32 | getModifications (const LTIScene &scene) const
| get the modification bitfield for this image More...
const LTIPixel & | getSrcMin () const
const LTIPixel & | getSrcMax () const
LT_STATUS | setSrcMinMax (const LTIPixel &srcMin, const LTIPixel &srcMax)
LT_STATUS | setDstMinMax (const LTIPixel &srcMin, const LTIPixel &srcMax)
void | setPixelFillMethod (LTIPixelFillMethod method, double fuzzyThreshold)
LT_STATUS | reinit (void)
Public Member Functions inherited from LTIOverridePixelProps< LTIOverrideBackgroundPixel< LTIImageFilter > >
const LTIPixel & | getPixelProps () const
| get the pixel properties of the image More...
const LTIPixel & | getMinDynamicRange () const
| get the minimum dynamic range value of image More...
const LTIPixel & | getMaxDynamicRange () const
| get the maximum dynamic range value of image More...
LT_STATUS | overridePixelBPS (lt_uint8 bps)
| override the bits-per-sample of the image's (sample's) datatype More...
LT_STATUS | overrideDynamicRange (const LTIPixel &drmin, const LTIPixel &drmax)
| override the dynamic range of the image More...
Public Member Functions inherited from LTIOverrideBackgroundPixel< LTIImageFilter >
const LTIPixel * | getBackgroundPixel () const
| get the values of the background pixel More...
const LTIPixel * | getNoDataPixel () const
| get the values of the "no data" (transparency) pixel More...
LT_STATUS | overrideBackgroundPixel (const LTIPixel *backgroundPixel)
| override the background color of the image More...
LT_STATUS | overrideNoDataPixel (const LTIPixel *nodataPixel)
| override the "no data" (transparency) color of the image More...
Public Member Functions inherited from LTIImageFilter
lt_uint32 | getWidth () const
| get image width More...
lt_uint32 | getHeight () const
| get image height More...
LT_STATUS | getDimsAtMag (double mag, lt_uint32 &width, lt_uint32 &height) const
| get image width and height at given magnification More...
const LTIPixelLookupTable * | getPixelLookupTable () const
| get the color lookup table, if any More...
const LTIGeoCoord & | getGeoCoord () const
| get the geographic coordinates of the image More...
bool | isGeoCoordImplicit () const
| is geo information "real" or not More...
const LTIMetadataDatabase & | getMetadata () const
| get the metadata associated with the image More...
double | getMinMagnification () const
| get the minimum magnification More...
double | getMaxMagnification () const
| get the maximum magnification More...
bool | isSelective () const
| check if image supports "random access" decoding More...
lt_uint32 | getModifications (const LTIScene &scene) const
| get the modification bitfield for this image More...
LT_STATUS | getMetadataBlob (const char *type, LTIOStreamInf *&stream) const
| extract the metadata associated with the image of the given type More...
void | setProgressDelegate (LTIProgressDelegate *delegate)
| set progress delegate More...
LTIProgressDelegate * | getProgressDelegate () const
| get progress delegate More...
void | setInterruptDelegate (LTIInterruptDelegate *delegate)
| set interrupt delegate More...
LTIInterruptDelegate * | getInterruptDelegate () const
| get interrupt delegate More...
lt_uint32 | getStripHeight () const
| get strip height More...
LT_STATUS | setStripHeight (lt_uint32 stripHeight)
| set the strip height More...
lt_int64 | getEncodingCost (const LTIScene &scene) const
| get the cost to encode this scene More...
bool | getReaderScene (const LTIScene &decodeScene, LTIScene &readerScene) const
| get the underlying scene to be used More...
LT_STATUS | overrideGeoCoord (const LTIGeoCoord &geoCoord)
| override the geographic coordinates of the image More...
LT_STATUS | overridePixelLookupTable (const LTIPixelLookupTable *pixelLookupTable)
| override the CLUT of the image More...
LT_STATUS | overrideMetadata (const LTIMetadataDatabase &metadata)
| override the metadata of the image More...
LTIMaskSource * | getMask () const
bool | getPipelineInfo (LTIPipelineInfo info) const
LTIImageStage * | getPreviousStage (void) const
Public Member Functions inherited from LTIImageStage
LT_STATUS | read (const LTIScene &scene, LTISceneBuffer &buffer)
| read (decode) a scene from the image More...
virtual LT_STATUS | readBegin (const LTIPixel &pixelProps, const LTIScene &fullScene)
| start strip-based read More...
virtual LT_STATUS | readStrip (LTISceneBuffer &buffer, const LTIScene &stripScene)
| read a strip from the image More...
virtual LT_STATUS | readEnd ()
| finish strip-based read More...
lt_uint32 | getNumStrips () const
| get number of strips in scene More...
LTIScene | getStripScene (lt_uint32 stripNumber) const
| get a strip for current scene More...
Public Member Functions inherited from LTIImage
lt_uint16 | getNumBands () const
| get number of bands More...
lt_uint16 | getNumBandsWithoutAlpha () const
| get number of bands without alpha More...
LTIColorSpace | getColorSpace () const
| get colorspace More...
LTIDataType | getDataType () const
| get data type More...
bool | isNaturalDynamicRange () const
| check if the range is "complete" or not More...
lt_int64 | getNominalImageSizeWithoutAlpha () const
| get the nominal size of the image, not considering the alpha band More...
lt_int64 | getNominalImageSizeWithAlpha () const
| get the nominal size of the image, including the alpha band More...
void | getGeoPoint (LTIPosition position, double &x, double &y) const
| get position of a named point More...
LTIPixel * | createBackgroundPixel () const
| return new background pixel More...
Public Member Functions inherited from LTIReferenceCountedObject
virtual void | retain (void) const
| increment reference counter More...
virtual void | release (void) const
| decrement the reference counter and delete the object when the counter is zero More...

## Static Public Member Functions
static LTIDynamicRangeFilter * | create (void)
static LT_STATUS | push (LTIImageStage *&pipeline, const LTIPixel &pixelProps, bool applyDynamicRange)
static LT_STATUS | transformBuffer (const LTIPixel &srcMin, const LTIPixel &srcMax, const LTISceneBuffer &srcBuffer, const LTIPixel &dstMin, const LTIPixel &dstMax, LTISceneBuffer &dstBuffer, lt_uint32 numCols, lt_uint32 numRows)
static LT_STATUS | transformPixel (const LTIPixel &srcMin, const LTIPixel &srcMax, const LTIPixel &srcPixel, const LTIPixel &dstMin, const LTIPixel &dstMax, LTIPixel &dstPixel)

## Protected Member Functions
| LTIDynamicRangeFilter (void)
virtual | ~LTIDynamicRangeFilter (void)
LT_STATUS | decodeBegin (const LTIPixel &pixelProps, const LTIScene &fullScene)
| start strip-based read More...
LT_STATUS | decodeStrip (LTISceneBuffer &stripBuffer, const LTIScene &stripScene)
| read a strip from the image More...
LT_STATUS | decodeEnd (void)
| finish strip-based read More...

## Additional Inherited Members
Protected Attributes inherited from LTIOverrideBackgroundPixelData
LTIPixel * | m_backgroundPixel
LTIPixel * | m_nodataPixel
Protected Attributes inherited from LTIOverridePixelPropsData
LTIPixel * | m_pixelProps
LTIPixel * | m_drminPixel
LTIPixel * | m_drmaxPixel

## Detailed Description

Adjusts the sample values to fit the given dynamic range and datatype.

Definition at line 33 of file lti_dynamicRangeFilter.h.

## Constructor & Destructor Documentation

LTIDynamicRangeFilter::LTIDynamicRangeFilter | ( | void | ) |  |
| protected

virtual LTIDynamicRangeFilter::~LTIDynamicRangeFilter | ( | void | ) |  |
| protected virtual

## Member Function Documentation

static LTIDynamicRangeFilter* LTIDynamicRangeFilter::create | ( | void | ) |  |
| static

LT_STATUS LTIDynamicRangeFilter::decodeBegin | ( | const LTIPixel & | pixelProps,
|  | const LTIScene & | fullScene
| ) |  |
| protected virtual

This function is called by readBegin() to start the actual class-specific work for decoding a scene.

Derived classes must implement this function.

This function should never be called directly.

Parameters

  pixelProps | the band selection
  fullScene | the full scene to be read

Returns
  status code indicating success or failure

Implements LTIImageStage.

LT_STATUS LTIDynamicRangeFilter::decodeEnd | ( | void | ) |  |
| protected virtual

This function is called by readEnd() to complete the actual class-specific work for decoding a scene.

Derived classes must implement this function.

This function should never be called directly.

Returns
  status code indicating success or failure

Implements LTIImageStage.

LT_STATUS LTIDynamicRangeFilter::decodeStrip | ( | LTISceneBuffer & | stripBuffer,
|  | const LTIScene & | stripScene
| ) |  |
| protected virtual

This function is called by readStrip() to implement the actual class-specific work for decoding a strip of the scene.

Derived classes must implement this function.

This function should never be called directly.

Parameters

  stripBuffer | the buffer to read the pixels into
  stripScene | the scene for this strip being decoded

Returns
  status code indicating success or failure

Implements LTIImageStage.

virtual lt_int64 LTIDynamicRangeFilter::getEncodingCost | ( | const LTIScene & | scene) |  | const
| virtual

Returns the "cost" to encode this scene, for use by those image writers which have usage metering enabled. The typical cost is equal to the nominal image size (width * height * numBands * bytesPerSample), but this is overridden for special situations, e.g. the mosaic filter.

Parameters

  scene | the scene to be charged for

Returns
  the cost to encode the given scene

Implements LTIImageStage.

virtual lt_uint32 LTIDynamicRangeFilter::getModifications | ( | const LTIScene & | scene) |  | const
| virtual

This function returns a bitfield describing what kinds of modifications have been made to the image during and since its initial encoding.

Parameters

  scene | the area pertaining to this request

Returns
  a bitfield itemizing the encoding modifications

Implements LTIImage.

const LTIPixel& LTIDynamicRangeFilter::getSrcMax | ( | ) |  | const
| inline

Definition at line 99 of file lti_dynamicRangeFilter.h.

const LTIPixel& LTIDynamicRangeFilter::getSrcMin | ( | ) |  | const
| inline

Definition at line 98 of file lti_dynamicRangeFilter.h.

LT_STATUS LTIDynamicRangeFilter::initialize | ( | LTIImageStage * | srcImage,
|  | const LTIPixel * | srcDRMin = `NULL`,
|  | const LTIPixel * | srcDRMax = `NULL`,
|  | LTIDataType | dstDataType = `LTI_DATATYPE_INVALID`
| ) |  |

Creates an image stage with the sample data adjusted from the given dynamic range values to the full dynamic range of the given datatype. If not specified, the target datatype will be that of the source image. If not specified, the filter will get the dynamic range from the source image (i.e., it will use whatever is in the image metadata).

Note
  the filter will stretch dynamic range on a per-band basis

Parameters

  srcImage | the base image
  srcDRMin | the minimum dynamic range value of the source data
  srcDRMax | the maximum dynamic range value of the source data
  dstDataType | the datatype of the new image stage

LT_STATUS LTIDynamicRangeFilter::initialize | ( | LTIImageStage * | srcImage,
|  | LTIDataType | dstDataType
| ) |  |

This initializer will cause the filter to do a straight datatype conversion of the source image. Advertised dynamic range in the source image will be translated to the appropriate value for the new datatype.

Parameters

  srcImage | the base image
  dstDataType | the datatype of the new image stage

LT_STATUS LTIDynamicRangeFilter::initialize | ( | LTIImageStage * | srcImage,
|  | const LTIPixel * | srcMin,
|  | const LTIPixel * | srcMax,
|  | const LTIPixel & | dstMin,
|  | const LTIPixel & | dstMax
| ) |  |

Adjusts the sample data of the source image by scaling it from the given source and destination dynamic range pixels. Samples falling outside of the given source range will be clipped to the range.

Note
  the filter will stretch dynamic range on a per-band basis

Parameters

  srcImage | the base image
  srcMin | minimum of the dynamic range present in the source
  srcMax | maximum of the dynamic range present in the source
  dstMin | minimum bound of desired output dynamic range
  dstMax | maximum bound of desired output dynamic range

static LT_STATUS LTIDynamicRangeFilter::push | ( | LTIImageStage *& | pipeline,
|  | const LTIPixel & | pixelProps,
|  | bool | applyDynamicRange
| ) |  |
| static

LT_STATUS LTIDynamicRangeFilter::reinit | ( | void | ) |  |

LT_STATUS LTIDynamicRangeFilter::setDstMinMax | ( | const LTIPixel & | srcMin,
|  | const LTIPixel & | srcMax
| ) |  |

void LTIDynamicRangeFilter::setPixelFillMethod | ( | LTIPixelFillMethod | method,
|  | double | fuzzyThreshold
| ) |  |

LT_STATUS LTIDynamicRangeFilter::setSrcMinMax | ( | const LTIPixel & | srcMin,
|  | const LTIPixel & | srcMax
| ) |  |

static LT_STATUS LTIDynamicRangeFilter::transformBuffer | ( | const LTIPixel & | srcMin,
|  | const LTIPixel & | srcMax,
|  | const LTISceneBuffer & | srcBuffer,
|  | const LTIPixel & | dstMin,
|  | const LTIPixel & | dstMax,
|  | LTISceneBuffer & | dstBuffer,
|  | lt_uint32 | numCols,
|  | lt_uint32 | numRows
| ) |  |
| static

static LT_STATUS LTIDynamicRangeFilter::transformPixel | ( | const LTIPixel & | srcMin,
|  | const LTIPixel & | srcMax,
|  | const LTIPixel & | srcPixel,
|  | const LTIPixel & | dstMin,
|  | const LTIPixel & | dstMax,
|  | LTIPixel & | dstPixel
| ) |  |
| static

The documentation for this class was generated from the following file:

- lti_dynamicRangeFilter.h

LizardTech