|
Isis Developer Reference
|
Go to the documentation of this file. 1 #ifndef ProcessMosaic_h
2 #define ProcessMosaic_h
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,
260 void SetBandKeyword(QString bandPriorityKeyName, QString bandPriorityKeyValue);
288 void BandComparison(
int iss,
int isl,
int ins,
int inl,
289 int bandPriorityInputBandNumber,
int bandPriorityOutputBandNumber,
293 void BandPriorityWithNoTracking(
int iss,
int isl,
int isb,
294 int ins,
int inl,
int inb,
295 int bandPriorityInputBandNumber,
296 int bandPriorityOutputBandNumber);
299 int GetOriginDefaultByPixelType();
302 int GetBandIndex(
bool inputFile);
305 bool GetTrackStatus();
308 void AddBandBinGroup(
int origIsb);
311 void AddDefaultBandBinGroup();
314 void MatchBandBinGroup(
int origIsb,
int &inb);
316 bool ProcessAveragePriority(
int piPixel,
Portal& pInPortal,
Portal& pOutPortal,
319 void ResetCountBands();
322 void MatchDEMShapeModel();
324 bool m_trackingEnabled;
325 Cube *m_trackingCube;
326 bool m_createOutputMosaic;
327 int m_bandPriorityBandNumber;
328 QString m_bandPriorityKeyName;
329 QString m_bandPriorityKeyValue;
330 bool m_bandPriorityUseMaxValue;
345 bool m_enforceBandBinMatch;
349 bool m_enforceMatchDEM;
360 bool m_placeHighSatPixels;
361 bool m_placeLowSatPixels;
362 bool m_placeNullPixels;
int SizeOf(Isis::PixelType pixelType)
Returns the number of bytes of the specified PixelType.
Definition: PixelType.h:46
void SetBandNumber(int bandPriorityBandNumber)
Set the band to use for priorities when using band priority.
Definition: ProcessMosaic.cpp:749
PvlGroupIterator findGroup(const QString &name, PvlGroupIterator beg, PvlGroupIterator end)
Find a group with the specified name, within these indexes.
Definition: PvlObject.h:129
static const int FLOAT_STORE_INT_PRECISELY_MAX_VALUE
Definition: ProcessMosaic.h:200
Contains Pvl Groups and Pvl Objects.
Definition: PvlObject.h:61
ImageOverlay
Enumeration for different Mosaic priorities (input, mosaic, band)
Definition: ProcessMosaic.h:207
const QString trackingTableName
Definition: TrackingTable.h:19
Buffer for containing a two dimensional section of an image.
Definition: Portal.h:36
@ NumImageOverlayOptions
Definition: ProcessMosaic.h:212
A single keyword-value pair.
Definition: PvlKeyword.h:82
ProcessMosaic()
ProcessMosaic Contructor.
Definition: ProcessMosaic.cpp:33
void SetBandUseMaxValue(bool useMax)
Set whether to take the image with the max or min value when using band priority.
Definition: ProcessMosaic.cpp:758
void SetBandBinMatch(bool enforceBandBinMatch)
Definition: ProcessMosaic.cpp:732
void SetHighSaturationFlag(bool placeHighSatPixels)
When true, high saturation (HRS, HIS) will be considered valid data for the purposes of placing pixel...
Definition: ProcessMosaic.cpp:780
void addKeyword(const PvlKeyword &keyword, const InsertMode mode=Append)
Add a keyword to the container.
Definition: PvlContainer.cpp:202
File name manipulation and expansion.
Definition: FileName.h:100
virtual void EndProcess()
Cleans up by closing input, output and tracking cubes.
Definition: ProcessMosaic.cpp:517
void SetMatchDEM(bool matchDEM)
Set the DEM match flag.
Definition: ProcessMosaic.cpp:802
@ AverageImageWithMosaic
average priority
Definition: ProcessMosaic.h:211
bool IsNullPixel(const double d)
Returns if the input pixel is null.
Definition: SpecialPixel.h:235
void SetNullFlag(bool placeNullPixels)
When true, Null pixels will be considered valid data for the purposes of placing pixels in the output...
Definition: ProcessMosaic.cpp:811
@ UseBandPlacementCriteria
band priority
Definition: ProcessMosaic.h:210
QString GetFileName(const QString ¶mName, QString extension="") const
Allows the retrieval of a value for a parameter of type "filename".
Definition: IsisAml.cpp:607
Base class for all cube processing derivatives.
Definition: Process.h:143
bool hasKeyword(const QString &name) const
Check to see if a keyword exists.
Definition: PvlContainer.cpp:159
Container for cube-like labels.
Definition: Pvl.h:119
unsigned int fileNameToPixel(FileName file, QString serialNumber)
Returns the pixel value of the filename/serialnumber combination.
Definition: TrackingTable.cpp:150
const unsigned char NULL1
Definition: SpecialPixel.h:182
virtual void StartProcess(void funct())
In the base class, this method will invoked a user-specified function exactly one time.
Definition: Process.h:213
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
Definition: IString.cpp:211
bool IsSpecial(const double d)
Returns if the input pixel is special.
Definition: SpecialPixel.h:197
bool IsHighPixel(const double d)
Returns if the input pixel is one of the high saturation types.
Definition: SpecialPixel.h:247
void SetCreateFlag(bool createOutputMosaic)
Flag to indicate that the mosaic is being newly created Indication that the new label specific to the...
Definition: ProcessMosaic.cpp:771
PvlObject imagePositions()
Accessor for the placed images and their locations.
Definition: ProcessMosaic.cpp:532
QString expanded() const
Returns a QString of the full file name including the file path, excluding the attributes.
Definition: FileName.cpp:196
@ PlaceImagesBeneath
beneath priority
Definition: ProcessMosaic.h:209
static const char * TRACKING_TABLE_NAME
This is the name of the table in the Cube which will contain the image file names.
Definition: ProcessMosaic.h:197
Contains multiple PvlContainers.
Definition: PvlGroup.h:41
virtual Isis::Cube * SetInputCube(const QString ¶meter, const int requirements=0)
Opens an input cube specified by the user and verifies requirements are met.
Definition: Process.cpp:136
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
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.
Definition: ProcessMosaic.cpp:106
int toInt(const QString &string)
Global function to convert from a string to an integer.
Definition: IString.cpp:93
Isis::Cube * SetOutputCube(const QString &psParameter)
Opens an output cube specified by the user.
Definition: ProcessMosaic.cpp:692
virtual Isis::Cube * SetInputCube(const QString ¶meter, const int requirements=0)
Opens an input cube specified by the user and verifies requirements are met.
Definition: Process.cpp:136
Class for storing Table blobs information.
Definition: Table.h:61
PvlObjectIterator findObject(const QString &name, PvlObjectIterator beg, PvlObjectIterator end)
Find the index of object with a specified name, between two indexes.
Definition: PvlObject.h:274
Table toTable()
Constrcts and returns a Table object based on values in m_fileList.
Definition: TrackingTable.cpp:69
@ PlaceImagesOnTop
ontop priority
Definition: ProcessMosaic.h:208
ImageOverlay GetImageOverlay() const
Definition: ProcessMosaic.cpp:832
void SetBandKeyword(QString bandPriorityKeyName, QString bandPriorityKeyValue)
Set the keyword/value to use for comparing when using band priority.
Definition: ProcessMosaic.cpp:740
static ImageOverlay StringToOverlay(QString)
Convert a QString to an ImageOverlay (case-insensitive).
Definition: ProcessMosaic.cpp:927
Table to store tracking information for a mosaic.
Definition: TrackingTable.h:37
IO Handler for Isis Cubes.
Definition: Cube.h:167
const short NULL2
Definition: SpecialPixel.h:154
Isis exception class.
Definition: IException.h:91
void setValue(QString value, QString unit="")
Sets new values.
Definition: PvlKeyword.cpp:155
virtual ~ProcessMosaic()
Destroys the Mosaic object. It will close all opened cubes.
Definition: ProcessMosaic.cpp:71
void SetTrackFlag(bool trackingEnabled)
Definition: ProcessMosaic.cpp:816
const unsigned int VALID_MINUI4
Definition: SpecialPixel.h:171
FileName removeExtension() const
Removes all extensions in the file name.
Definition: FileName.cpp:246
bool GetLowSaturationFlag() const
Definition: ProcessMosaic.cpp:840
@ UnsignedInteger
Definition: PixelType.h:33
Namespace for the standard library.
bool IsValidPixel(const double d)
Returns if the input pixel is valid.
Definition: SpecialPixel.h:223
Command Line and Xml loader, validation, and access.
Definition: UserInterface.h:140
Pvl * label() const
Returns a pointer to the IsisLabel object associated with the cube.
Definition: Cube.cpp:1701
const int INULL4
Definition: SpecialPixel.h:133
int size() const
Returns the total number of pixels in the shape buffer.
Definition: Buffer.h:97
void setPixelType(PixelType pixelType)
Used prior to the Create method, this will specify the output pixel type.
Definition: Cube.cpp:1304
PvlKeyword & findKeyword(const QString &name)
Find a keyword with a specified name.
Definition: PvlContainer.cpp:62
bool GetTrackFlag() const
Definition: ProcessMosaic.cpp:856
int GetInputStartLineInMosaic() const
This is the line where the image was placed into the output mosaic.
Definition: ProcessMosaic.cpp:864
int GetInputStartSampleInMosaic() const
This is the sample where the image was placed into the output mosaic.
Definition: ProcessMosaic.cpp:872
bool IsLowPixel(const double d)
Returns if the input pixel is one of the low saturation types.
Definition: SpecialPixel.h:259
Mosaic two cubes together.
Definition: ProcessMosaic.h:194
bool GetHighSaturationFlag() const
Definition: ProcessMosaic.cpp:824
void open(const QString &cfile, QString access="r")
This method will open an isis cube for reading or reading/writing.
Definition: Cube.cpp:627
void SetImageOverlay(ImageOverlay placement)
Definition: ProcessMosaic.cpp:785
void SetPosition(const double sample, const double line, const int band)
Sets the line and sample position of the buffer.
Definition: Portal.h:93
bool GetNullFlag() const
Definition: ProcessMosaic.cpp:848
void SetLowSaturationFlag(bool placeLowSatPixels)
When true, low saturation (LRS, LIS) will be considered valid data for the purposes of placing pixels...
Definition: ProcessMosaic.cpp:794
static QString OverlayToString(ImageOverlay)
Convert an ImageOverlay to a QString.
Definition: ProcessMosaic.cpp:889
QString path() const
Returns the path of the file name.
Definition: FileName.cpp:103
int GetInputStartBandInMosaic() const
This is the band where the image was placed into the output mosaic.
Definition: ProcessMosaic.cpp:880
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
static const int FLOAT_STORE_INT_PRECISELY_MIN_VALUE
Definition: ProcessMosaic.h:201