200 static const int FLOAT_STORE_INT_PRECISELY_MAX_VALUE = 16777216;
201 static const int FLOAT_STORE_INT_PRECISELY_MIN_VALUE = -16777215;
212 NumImageOverlayOptions
224 virtual void StartProcess(
const int &piOutSample,
const int &piOutLine,
const int &piOutBand);
237 const int ss,
const int sl,
239 const int ns,
const int nl,
246 const int ss = 1,
const int sl = 1,
248 const int ns = -1,
const int nl = -1,
258 void SetBandBinMatch(
bool enforceBandBinMatch);
260 void SetBandKeyword(QString bandPriorityKeyName, QString bandPriorityKeyValue);
265 void SetImageOverlay(ImageOverlay placement);
269 void SetTrackFlag(
bool trackingEnabled);
272 ImageOverlay GetImageOverlay()
const;
289 int bandPriorityInputBandNumber,
int bandPriorityOutputBandNumber,
294 int ins,
int inl,
int inb,
295 int bandPriorityInputBandNumber,
296 int bandPriorityOutputBandNumber);
324 bool m_trackingEnabled;
326 bool m_createOutputMosaic;
327 int m_bandPriorityBandNumber;
328 QString m_bandPriorityKeyName;
329 QString m_bandPriorityKeyValue;
330 bool m_bandPriorityUseMaxValue;
360 bool m_placeHighSatPixels;
361 bool m_placeLowSatPixels;
362 bool m_placeNullPixels;
IO Handler for Isis Cubes.
Buffer for containing a two dimensional section of an image.
Base class for all cube processing derivatives.
virtual void StartProcess(void funct())
In the base class, this method will invoked a user-specified function exactly one time.
virtual Isis::Cube * SetInputCube(const QString ¶meter, const int requirements=0)
Opens an input cube specified by the user and verifies requirements are met.
Mosaic two cubes together.
void SetMatchDEM(bool matchDEM)
Set the DEM match flag.
void BandPriorityWithNoTracking(int iss, int isl, int isb, int ins, int inl, int inb, int bandPriorityInputBandNumber, int bandPriorityOutputBandNumber)
Mosaicking for Band Priority with no Tracking.
virtual void StartProcess(const int &piOutSample, const int &piOutLine, const int &piOutBand)
This method invokes the process by mosaic operation over a single input cube and single output cube.
bool m_enforceMatchDEM
DEM of the input and mosaic should match.
void BandComparison(int iss, int isl, int ins, int inl, int bandPriorityInputBandNumber, int bandPriorityOutputBandNumber, int index)
This method compares the specified band of the input and output using the criteria (lesser or greater...
bool GetLowSaturationFlag() const
int m_onb
The number of bands in the output cube.
int m_isl
The starting line within the input cube.
Isis::Cube * SetOutputCube(const QString &psParameter)
Opens an output cube specified by the user.
ImageOverlay
Enumeration for different Mosaic priorities (input, mosaic, band)
@ PlaceImagesOnTop
ontop priority
@ UseBandPlacementCriteria
band priority
@ PlaceImagesBeneath
beneath priority
@ AverageImageWithMosaic
average priority
bool GetTrackFlag() const
int m_oss
The starting sample within the output cube.
virtual ~ProcessMosaic()
Destroys the Mosaic object. It will close all opened cubes.
bool GetHighSaturationFlag() const
int GetInputStartLineInMosaic() const
This is the line where the image was placed into the output mosaic.
void SetLowSaturationFlag(bool placeLowSatPixels)
When true, low saturation (LRS, LIS) will be considered valid data for the purposes of placing pixels...
int m_isb
The starting band within the input cube.
virtual void EndProcess()
Cleans up by closing input, output and tracking cubes.
int m_iss
The starting sample within the input cube.
void SetHighSaturationFlag(bool placeHighSatPixels)
When true, high saturation (HRS, HIS) will be considered valid data for the purposes of placing pixel...
static ImageOverlay StringToOverlay(QString)
Convert a QString to an ImageOverlay (case-insensitive).
PvlObject imagePositions()
Accessor for the placed images and their locations.
int m_ins
The number of samples from the input cube.
Cube * m_trackingCube
Output tracking cube. NULL unless tracking is enabled.
void SetCreateFlag(bool createOutputMosaic)
Flag to indicate that the mosaic is being newly created Indication that the new label specific to the...
int m_inl
The number of lines from the input cube.
static QString OverlayToString(ImageOverlay)
Convert an ImageOverlay to a QString.
void SetBandNumber(int bandPriorityBandNumber)
Set the band to use for priorities when using band priority.
int GetInputStartBandInMosaic() const
This is the band where the image was placed into the output mosaic.
bool GetTrackStatus()
This method searchs the mosaic label for a table with name "InputFile".
int m_inb
The number of bands from the input cube.
void SetBandKeyword(QString bandPriorityKeyName, QString bandPriorityKeyValue)
Set the keyword/value to use for comparing when using band priority.
bool ProcessAveragePriority(int piPixel, Portal &pInPortal, Portal &pOutPortal, Portal &pOrigPortal)
Calculate DN value for a pixel for AverageImageWithMosaic priority and set the Count band portal.
void AddDefaultBandBinGroup()
AddDefaultBandBinGroup.
static const char * TRACKING_TABLE_NAME
This is the name of the table in the Cube which will contain the image file names.
int m_osb
The starting band within the output cube.
ProcessMosaic()
ProcessMosaic Contructor.
void MatchBandBinGroup(int origIsb, int &inb)
This method matches the input BandBin group to the mosaic BandBin Group and allows band to be replace...
virtual Isis::Cube * SetInputCube(const QString ¶meter, const int ss, const int sl, const int sb, const int ns, const int nl, const int nb)
Opens an input cube specified by the user.
int GetBandIndex(bool inputFile)
Get the Band Index in an image of type (input/output)
void SetBandUseMaxValue(bool useMax)
Set whether to take the image with the max or min value when using band priority.
void SetNullFlag(bool placeNullPixels)
When true, Null pixels will be considered valid data for the purposes of placing pixels in the output...
int GetOriginDefaultByPixelType()
This method returns the defaults(unassigned origin value) depending on the pixel type.
int GetInputStartSampleInMosaic() const
This is the sample where the image was placed into the output mosaic.
void ResetCountBands()
Reset all the count bands to default at the time of mosaic creation.
void AddBandBinGroup(int origIsb)
This method adds the BandBin group to the mosaic corresponding to the actual bands in the mosaic.
bool m_enforceBandBinMatch
True/False value to determine whether to enforce the input cube bandbin matches the mosaic bandbin gr...
PvlObject m_imagePositions
List of images placed on the mosaic.
int m_osl
The starting line within the output cube.
void MatchDEMShapeModel()
Match the Shape Model for input and mosaic.
Contains Pvl Groups and Pvl Objects.
Command Line and Xml loader, validation, and access.
This is free and unencumbered software released into the public domain.