MrSID Decode SDK for Raster Reference Manual  9.5.1.4427
LTIMosaicFilter Class Reference

create a single mosaicked image from a set of images More...

#include <lti_mosaicFilter.h>

Inheritance diagram for LTIMosaicFilter:

Classes

class  InSceneCallback
 

Public Types

enum  AlphaMode { DoNothing, FromMerge, FromSourceRectangle }
 

Public Member Functions

LT_STATUS initialize (LTIImageStageManager *imageStageManager, const LTIPixel *backgroundPixel, bool useMultires, bool mergeMetadata=true, AlphaMode alphaMode=DoNothing)
 initializer More...
 
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
 
LTIMaskSource * getMask () const
 
bool getPipelineInfo (LTIPipelineInfo info) const
 
void setFillMethod (LTIPixelFillMethod method, double fuzzyThreshold)
 Set the fill method which controls how noData pixels are matched. More...
 
LTIPixelFillMethod getFillMethod (void) const
 Get the fill method. More...
 
double getFuzzyThreshold (void) const
 
void setResampleMethod (LTIResampleMethod resampleMethod)
 Set resampling method. More...
 
void setMagSnapThreshold (double threshold)
 
LTIResampleMethod getResampleMethod (void) const
 Get the fill method. More...
 
bool getReaderScene (lt_uint32 child, const LTIScene &decodeScene, LTIScene &mosaicScene, LTIScene &readerScene) const
 
bool getOverviewReaderScene (const LTIScene &decodeScene, LTIScene &mosaicScene, LTIScene &readerScene) const
 
LT_STATUS forEachImageStageInScene (const LTIScene &scene, InSceneCallback &callback)
 
void setDeleteImages (bool deleteImages)
 
bool getDeleteImages (void) const
 
LT_STATUS loadImage (lt_uint32 i, LTIEmbeddedImage *&embedded, LTIImageStage *&raw)
 
LT_STATUS closeImage (lt_uint32 i)
 
LT_STATUS setPipelineBuilder (LTIPipelineBuilder *pipelineBuilder)
 
const LTIRTree & getRTree (void) const
 
LTIImageStageManagergetImageStageManager (void) const
 
bool hasOverviewImage (void) const
 
double getOverviewMag (void) const
 

Static Public Member Functions

static LTIMosaicFiltercreate (void)
 
static LT_STATUS checkResolutionConformance (LTIImageStageManager *imageStageManager, bool useMultires)
 Check if a set of images can be mosaicked together. More...
 

Protected Member Functions

 LTIMosaicFilter (void)
 
virtual ~LTIMosaicFilter (void)
 
LT_STATUS decodeBegin (const LTIPixel &pixelProps, const LTIScene &fullScene)
 
LT_STATUS decodeStrip (LTISceneBuffer &stripBuffer, const LTIScene &stripScene)
 
LT_STATUS decodeEnd (void)
 

Detailed Description

This class create a single mosaicked image from a set of images.

The set of input images are all assumed to be in the same coordinate space. In general, all the images must have the same resolution; differences that are within a small epsilon or exactly a power of two are optionally allowed.

Definition at line 43 of file lti_mosaicFilter.h.

Member Enumeration Documentation

Enumerator
DoNothing 
FromMerge 
FromSourceRectangle 

Definition at line 58 of file lti_mosaicFilter.h.

Constructor & Destructor Documentation

LTIMosaicFilter::LTIMosaicFilter ( void  )
protected
virtual LTIMosaicFilter::~LTIMosaicFilter ( void  )
protectedvirtual

Member Function Documentation

static LT_STATUS LTIMosaicFilter::checkResolutionConformance ( LTIImageStageManager imageStageManager,
bool  useMultires 
)
static

The parameters to this function mirror those of the constructor: this function will return LT_STS_Success if and only if the images' resolutions are such that a mosaic can be produced.

Parameters
imageStageManagermanages the set of input images
useMultiresallow images with incompatible resolution
Returns
status code indicating success or failure
LT_STATUS LTIMosaicFilter::closeImage ( lt_uint32  i)
static LTIMosaicFilter* LTIMosaicFilter::create ( void  )
static
LT_STATUS LTIMosaicFilter::decodeBegin ( const LTIPixel pixelProps,
const LTIScene fullScene 
)
protected
LT_STATUS LTIMosaicFilter::decodeEnd ( void  )
protected
LT_STATUS LTIMosaicFilter::decodeStrip ( LTISceneBuffer stripBuffer,
const LTIScene stripScene 
)
protected
LT_STATUS LTIMosaicFilter::forEachImageStageInScene ( const LTIScene scene,
InSceneCallback callback 
)
bool LTIMosaicFilter::getDeleteImages ( void  ) const
LT_STATUS LTIMosaicFilter::getDimsAtMag ( double  mag,
lt_uint32 width,
lt_uint32 height 
) const
lt_int64 LTIMosaicFilter::getEncodingCost ( const LTIScene scene) const
LTIPixelFillMethod LTIMosaicFilter::getFillMethod ( void  ) const
double LTIMosaicFilter::getFuzzyThreshold ( void  ) const
LTIImageStageManager& LTIMosaicFilter::getImageStageManager ( void  ) const
LTIMaskSource* LTIMosaicFilter::getMask ( ) const
virtual lt_uint32 LTIMosaicFilter::getModifications ( const LTIScene scene) const
virtual
double LTIMosaicFilter::getOverviewMag ( void  ) const
bool LTIMosaicFilter::getOverviewReaderScene ( const LTIScene decodeScene,
LTIScene mosaicScene,
LTIScene readerScene 
) const
bool LTIMosaicFilter::getPipelineInfo ( LTIPipelineInfo  info) const
bool LTIMosaicFilter::getReaderScene ( const LTIScene decodeScene,
LTIScene readerScene 
) const
bool LTIMosaicFilter::getReaderScene ( lt_uint32  child,
const LTIScene decodeScene,
LTIScene mosaicScene,
LTIScene readerScene 
) const
LTIResampleMethod LTIMosaicFilter::getResampleMethod ( void  ) const
const LTIRTree& LTIMosaicFilter::getRTree ( void  ) const
bool LTIMosaicFilter::hasOverviewImage ( void  ) const
LT_STATUS LTIMosaicFilter::initialize ( LTIImageStageManager imageStageManager,
const LTIPixel backgroundPixel,
bool  useMultires,
bool  mergeMetadata = true,
AlphaMode  alphaMode = DoNothing 
)

Creates an image stage which is a mosaic of the set of input images.

In order to create a mosaic, the ground resolution of all component images must match exactly or be offset by a power of two. For example, two images having 1m resolution can be mosaicked with an image having .5m resolution. However, an image with 1ft resolution will cause an error condition. Slight variations in resolution will be automatically tolerated to accommodate differences in floating-point representation.

The "useMultires" flag will allow images to be mosaicked that do not have compatible ground resolution. Setting this flag will cause some images in the mosaic to be resampled to achieve compatible resolution.

Transparency settings are honored by the mosaic process.

Parameters
imageStageManagermanages the set of input images
backgroundPixelcolor to use for the background of the mosaic
useMultiresresample images with incompatible resolution
mergeMetadatamerge input-file-name, input-file-size and modifications
LT_STATUS LTIMosaicFilter::loadImage ( lt_uint32  i,
LTIEmbeddedImage *&  embedded,
LTIImageStage *&  raw 
)
void LTIMosaicFilter::setDeleteImages ( bool  deleteImages)
void LTIMosaicFilter::setFillMethod ( LTIPixelFillMethod  method,
double  fuzzyThreshold 
)
Parameters
methodfill method enum. See LTIPixelFillMethod
fuzzyThresholdfill method enum. See LTIPixelFillMethod
void LTIMosaicFilter::setMagSnapThreshold ( double  threshold)
LT_STATUS LTIMosaicFilter::setPipelineBuilder ( LTIPipelineBuilder *  pipelineBuilder)
void LTIMosaicFilter::setResampleMethod ( LTIResampleMethod  resampleMethod)
Parameters
resampleMethodresampling method See LTIResampleMethod

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

LizardTech