USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::ProcessImportPds Class Reference
[High Level Cube I/O]

#include <ProcessImportPds.h>

Inheritance diagram for Isis::ProcessImportPds:

Inheritance graph
[legend]
Collaboration diagram for Isis::ProcessImportPds:

Collaboration graph
[legend]
List of all members.

Detailed Description

Convert PDS archive files to Isis format.

This class is used to import PDS archive files into Isis format. The class can handle PDS images, qubes and spectral cubes. It can also convert projection information if it exists.

Here is an example of how to use ProcessImportPds

   ImportPds p;
   Pvl plab;
   p.SetPdsFile("imagefile.img", "", plab);
   p.SetOutputCube("TO");
   p.StartProcess();
   Pvl proj;
   p.TranslatePdsProjection (proj);
   p.AddLabel (proj);
   p.EndProcess();

Author:
2002-08-06 Tracie Sucharski

For internal use only.

History:
2003-01-24 Tracie Sucharski - Fixed bug in processing 8bit data. In the Swap method needed to return unsigned char, not char.
History:
2003-02-13 Stuart Sides - Added a unit test.
History:
2003-05-16 Stuart Sides - Modified schema from astrogeology... isis.astrogeology...
History:
2003-05-30 Stuart Sides - Fixed compiler error after -O1 flag was added to g++
History:
2003-09-10 Tracie Sucharski - Complete redesign to handle different raw file formats.
History:
2003-10-09 Stuart Sides - Added capabilities for reading PDS files
History:
2003-10-10 Stuart Sides - Added capabilities to get the translation files from the user preferences BASE directory.
History:
2003-10-10 Stuart Sides - Fixed bug for PDS files. When the image name was explicitly given the open statement was attempting to open the label file.
History:
2003-10-16 Stuart Sides - Added a section for debuging all the parameters which can be set before processing starts.
History:
2003-10-16 Stuart Sides - Added a second parameter to the Pvl constructor in SetVicarFile. This allows the vicar label to be read into a Pvl without modifying the repeated "PROPERTY" keyword.
History:
2003-10-23 Stuart Sides - Added new member functions "AddImportLabel()"and"AddImportLabel(Pvl). AddImportLabel() uses the original label file to create a Pvl and write it to the output cube label. AddImportLabel(Pvl) uses the Pvl argument to write the import label to the output cube.
History:
2004-01-21 Jeff Anderson - Modified SetOutputCube method to propagate the input pixel type, base, and multipliers to the output cube. The old method always generated real pixel values in the output.
History:
2004-01-22 Jeff Anderson - Modified the SetVicarFile method to return the vicar labels internalized in a PVL object.
History:
2004-02-04 Jeff Anderson - Modified SetPdsFile method to allow for SPECTRAL_QUBE objects to handle Themis data.
History:
2004-02-10 Stuart Sides - Separated PDS capabilities from Import.
History:
2005-02-09 Elizabeth Ribelin - Modified file to support Doxygen documentation
History:
2006-06-13 Brendan George - Modified to add OriginalLabel blob automatically, and added a function to allow the user to prevent this.
History:
2006-07-12 Stuart Sides - Modified the translation of projection keywords such as CenterLongitude, so the would not throw and error if the keywods was not a number. This was necessary because map a planet creates PDS labels with "N/A" in several keywords.
History:
2006-10-26 Stuart Sides - Added unsigned 16 bit ability
History:
2006-11-16 Brendan George - Changed instances of "Foreign" to "Input" and "Native" to "Output"
History:
2007-01-24 Stuart Sides - Added ability to identify the difference between PDS and ISIS2 files, and process them differently.
History:
2007-02-08 Brendan George - Fixed TranslateIsis2Instrument to remove the appended z in the StartTime keyword, if present.
History:
2007-04-09 Tracie Sucharski - Added GetProjectionOffsetMults method which will find the correct multiplication factors for the projection offsets depending on the keyword and pattern in pdsProjectionLineSampToXY.def. Added IsIsis2 method. Made changes to projection translation tables for additional values for Longitude direction, latitude type and if the min or max longitude values is greater than 180, change longitude domain to 360.
History:
2007-05-31 Steven Koechle -Moddified to assume all signed bytes input pixels are actually unsigned.
History:
2007-06-04 Jeff Anderson - Modified to deal with projection conversion generically
History:
2007-08-07 Steven Lambright - Modified to support translating some PDS labels for pds2isis and default longitude domain is now 360.
History:
2007-08-29 Steven Koechle - Modified to use new SetSpecialValues method from ProcessImport
History:
2007-10-16 Steven Koechle - Modified TranslatePdsProjection() to not add the min & max lat long keywords if they have null values.
History:
2008-05-12 Steven Lambright - Removed references to CubeInfo
History:
2008-06-13 Steven Lambright - Updated algorithm to decide domain and calculate correct longitudes in ExtractPdsProjection
History:
2008-06-13 Noah Hild - Added support for the FILE object
History:
2008-06-13 Steven Lambright - Updated ExtractPdsProjection to change the latitude type to planetocentric if both the planet radii are the same
History:
2008-08-08 Steven Lambright - Fixed bug where the longitude keywords could be incorrecty interpretted (minumum longitude and maximum longitude are swapped).
History:
2009-07-16 Steven Lambright - Fixed bug where the longitude is misordered
Todo:
2005-02-09 Finish documentation-lots of holes with variable definitions in .h file and .cpp methods, and insert implementation example

Definition at line 168 of file ProcessImportPds.h.

Public Types

 InterleaveUndefined
 Undefined.
 BSQ
 Band Sequential Format (i.e.
 BIL
 Band Interleaved By Line Format (i.e.
 BIP
 Band Interleaved By Pixel Format (i.e.
enum  Interleave { InterleaveUndefined, BSQ, BIL, BIP }
 This enum includes how the document should be read: by BSQ, BIL, BIP or InterleaveUndefined. More...

Public Member Functions

 ProcessImportPds ()
 Constructor.
void SetPdsFile (const std::string &pdsLabelFile, const std::string &pdsDataFile, Isis::Pvl &pdsLabel)
 Set the input label file, data file and initialize a Pvl with the PDS labels.
void TranslatePdsProjection (Isis::Pvl &lab)
 Fills the passed in label with the projection information from the PDS label file.
void TranslateIsis2Labels (Isis::Pvl &lab)
 Translate as many of the ISIS2 labels as possible.
void TranslatePdsLabels (Isis::Pvl &lab)
 Translate as many of the PDS labels as possible.
bool IsIsis2 ()
 Return true if ISIS2 cube, else return false.
void OmitOriginalLabel ()
 Prevents the Original Label blob from being written out to the end of the cube.
void EndProcess ()
 End the processing sequence and cleans up by closing cubes, freeing memory, etc.
void StartProcess ()
 Process the input file and write it to the output.
void StartProcess (void funct(Isis::Buffer &out))
 Process the input file and send data to method.
void StartProcess (void funct())
 In the base class, this method will invoked a user-specified function exactly one time.
void SetInputFile (const std::string &file)
 Sets the name of the input file to be read in the import StartProcess method and verifies its existance.
Isis::CubeSetOutputCube (const std::string &parameter)
 Create the output file.
Isis::CubeSetOutputCube (const std::string &parameter, Isis::CubeAttributeOutput &att)
 Create the output file.
Isis::CubeSetOutputCube (const std::string &parameter, const int nsamps, const int nlines, const int nbands=1)
 Allocates a user specified output cube whose size is specified by the programmer.
Isis::CubeSetOutputCube (const std::string &fname, const Isis::CubeAttributeOutput &att, const int nsamps, const int nlines, const int nbands=1)
 Allocates a output cube whose name and size is specified by the programmer.
void SetPixelType (const Isis::PixelType type)
 Sets the pixel type of the input file.
Isis::PixelType PixelType ()
 Returns the pixel type.
void SetDimensions (const int ns, const int nl, const int nb)
 Sets the physical size of the input cube.
int Samples ()
 Returns the number of samples.
int Lines ()
 Returns the number of lines.
int Bands ()
 Returns the number of bands.
void SetByteOrder (const Isis::ByteOrder order)
 Sets the byte order of the input file.
Isis::ByteOrder ByteOrder ()
 Returns the byte order.
void SetFileHeaderBytes (const int bytes)
 This method sets the number of bytes in the header of a file.
void SetFileTrailerBytes (const int bytes)
 This method sets the number of bytes in the trailer of a file.
void SetDataHeaderBytes (const int bytes)
 This method sets the number of bytes in the header of each datablock of a file.
void SetDataTrailerBytes (const int bytes)
 This method sets the number of bytes in the trailer of each datablock of a file.
void SetDataPrefixBytes (const int bytes)
 This method sets the number of bytes at the beginning of each data record of a file.
void SetDataSuffixBytes (const int bytes)
 This method sets the number of bytes at the end of each data record of a file.
void SaveFileHeader ()
 This method marks the file header to be saved.
void SaveFileTrailer ()
 This method marks the file trailer to be saved.
void SaveDataHeader ()
 This method marks the data block headers to be saved.
void SaveDataTrailer ()
 This method marks the data block trailers to be saved.
void SaveDataPrefix ()
 This method marks the data prefix to be saved.
void SaveDataSuffix ()
 This method marks the data suffix to be saved.
char * FileHeader ()
 This method returns a pointer to the file header.
char * FileTrailer ()
 This method returns a pointer to the file trailer.
std::vector< char * > DataHeader ()
 This method returns a pointer to the data header.
std::vector< char * > DataTrailer ()
 This method returns a pointer to the data trailer.
std::vector< std::vector<
char * > > 
DataPrefix ()
 This method returns a pointer to the data prefix.
std::vector< std::vector<
char * > > 
DataSuffix ()
 This method returns a pointer to the data suffix.
void SetOrganization (const ProcessImport::Interleave org)
 Sets the organization of the input cube.
void SetBase (const double base)
 Sets the core base of the input cube.
void SetBase (const std::vector< double > base)
 Sets band dependent core base.
void SetMultiplier (const double mult)
 Sets the core multiplier of the input cube.
void SetMultiplier (const std::vector< double > mult)
 Sets band dependent core multiplier.
void SetSpecialValues (const double null, const double lrs, const double lis, const double hrs, const double his)
 Sets a mapping of input pixel values to output special pixel values.
void SetNull (const double null_min, const double null_max)
 Sets the range that will be considered Isis::Null.
void SetLRS (const double lrs_min, const double lrs_max)
 Sets the range that will be considered Isis::Null.
void SetLIS (const double lis_min, const double lis_max)
 Sets the range that will be considered Isis::Null.
void SetHRS (const double hrs_min, const double hrs_max)
 Sets the range that will be considered Isis::Null.
void SetHIS (const double his_min, const double his_max)
 Sets the range that will be considered Isis::Null.
double TestPixel (const double pixel)
 Tests the pixel.
Isis::CubeSetInputCube (const std::string &parameter, const int requirements=0)
 Opens an input cube specified by the user and verifies requirements are met.
Isis::CubeSetInputCube (const std::string &fname, const Isis::CubeAttributeInput &att, int requirements=0)
 Opens an input cube specified by the programmer and verifies requirements are met.
void ClearInputCubes ()
 This method clears the input cube list.
void PropagateLabels (const bool prop)
 This method allows the programmer to turn on/off the propagation of labels from the 1st input cube to any of the output cubes.
void PropagateLabels (const std::string &cube)
 This method allows the programmer to propagate labels from a specific secondary cube.
void PropagateTables (const bool prop)
 This method allows the programmer to propagate input tables to the output cube (default is true).
void PropagatePolygons (const bool prop)
 This method allows the programmer to propagate input blobs to the output cube (default is true).
void PropagateHistory (const bool prop)
 This method allows the programmer to propagate history to the output cube (default is true).
void PropagateOriginalLabel (const bool prop)
 This method allows the programmer to propagate original labels to the output cube (default is true).
Isis::ProgressProgress ()
 This method returns a pointer to a Progress object.
std::string MissionData (const std::string &mission, const std::string &file, bool highestVersion=false)
 This method reads the mission specific data directory from the user preference file, makes sure that mission is available in the Isis installation, and the attaches the provided input file to the directory in order to create a full file specification.
void WriteHistory (Cube &cube)
 Writes out the History blob to the cube.

Protected Attributes

Isis::Progressp_progress
 Pointer to a Progress object.
bool p_propagateLabels
 Flag indicating if labels are be propagated to output cubes.
bool p_propagateTables
 Flag indicating if tables are be propagated to output cubes.
bool p_propagatePolygons
 Flag indicating if blobs are be propagated to output cubes.
bool p_propagateHistory
 Flag indicating if history is to be propagated to output cubes.
bool p_propagateOriginalLabel
 Flag indicating if original lable is to be propagated to output cubes.
std::vector< Isis::Cube * > InputCubes
 A vector of pointers to opened Cube objects.
std::vector< Isis::Cube * > OutputCubes
 A vector of pointers to allocated Cube objects.

Private Types

 NOSOURCE
 PDS
 ISIS2
enum  Source { NOSOURCE, PDS, ISIS2 }

Private Member Functions

void ProcessPdsImageLabel (const std::string &pdsDataFile)
 Process the PDS label of type IMAGE.
void ProcessPdsQubeLabel (const std::string &pdsDataFile, const std::string &transFile)
 Process the PDS label of type QUBE or SPECTRALQUBE.
void ExtractPdsProjection (Isis::PvlTranslationManager &pdsXlater)
 Extract all possible PDS projection parameters from the PDS label.
void GetProjectionOffsetMults (double &xoff, double &yoff, double &xmult, double &ymult)
 Read mults and offsets from a def file in order to calculate the upper left x/y.
void IdentifySource (Isis::Pvl &lab)
 Identify the source of this file PDS or ISIS2.
void TranslateIsis2BandBin (Isis::Pvl &lab)
 Fill as many of the Isis3 BandBin labels as possible.
void TranslateIsis2Instrument (Isis::Pvl &lab)
 Fill as many of the Isis3 instrument labels as possible.
void TranslatePdsBandBin (Isis::Pvl &lab)
 Fill as many of the Isis3 BandBin labels as possible.
void TranslatePdsArchive (Isis::Pvl &lab)
 Fill as many of the Isis3 BandBin labels as possible.

Private Attributes

Isis::Pvl p_pdsLabel
 Internalized PDS label.
std::string p_labelFile
 The filename where the PDS label came from.
Isis::iString p_transDir
std::string p_projection
 Base data directory The name of the projection found in the PDS projection labels.
std::string p_targetName
double p_equatorialRadius
 Equatorial radius found in the PDS projection labels.
double p_polarRadius
 The polar radius found in the PDS projection labels.
std::string p_longitudeDirection
 Longitude direction found in the PDS projection labels.
int p_longitudeDomain
 Longitude domain found in the PDS projection labels.
std::string p_latitudeType
 The latitude type found in the PDS projection labels.
double p_minimumLatitude
 Minimum latitude found in the PDS projection labels.
double p_maximumLatitude
 Maximum latitude found in the PDS projection labels.
double p_minimumLongitude
 Minimum longitude found in the PDS projection labels.
double p_maximumLongitude
 Maximum longitude found in the PDS projection labels.
double p_pixelResolution
 Pixel resolution found in the PDS projection labels.
double p_scaleFactor
 The scale factor found in the PDS projection labels.
double p_rotation
 The rotation found in the PDS labels.
double p_sampleProjectionOffset
double p_lineProjectionOffset
double p_upperLeftX
double p_upperLeftY
bool p_keepOriginalLabel
 determines whether or not to keep the OriginalLabel blob.
Source p_source


Member Enumeration Documentation

enum Isis::ProcessImport::Interleave [inherited]

This enum includes how the document should be read: by BSQ, BIL, BIP or InterleaveUndefined.

Enumerator:
InterleaveUndefined  Undefined.
BSQ  Band Sequential Format (i.e.

Band Interleaved). The first line of data is followed immediately by the next line in the same spectral band.

BIL  Band Interleaved By Line Format (i.e.

Row Interleaved). The first line of data is followed immediately by the first line of data in the next band.

BIP  Band Interleaved By Pixel Format (i.e.

Pixel Interleaved). The first pixel for all bands is followed by the second pixel for all bands.

Definition at line 205 of file ProcessImport.h.


Constructor & Destructor Documentation

Isis::ProcessImportPds::ProcessImportPds (  ) 

Constructor.

Definition at line 48 of file ProcessImportPds.cpp.

References Isis::PvlObject::FindGroup(), p_keepOriginalLabel, p_transDir, and Isis::Preference::Preferences().


Member Function Documentation

int Isis::ProcessImport::Bands (  )  [inline, inherited]

Returns the number of bands.

Returns:
The number of bands

Definition at line 172 of file ProcessImport.h.

References Isis::ProcessImport::p_nb.

Isis::ByteOrder Isis::ProcessImport::ByteOrder (  )  [inline, inherited]

Returns the byte order.

Returns:
Byte order of the data

Definition at line 180 of file ProcessImport.h.

References Isis::ProcessImport::p_byteOrder.

void Isis::Process::ClearInputCubes (  )  [inherited]

This method clears the input cube list.

It is most commonly used in applications which need to generate an output cube without an input cube, however, propogation of input characteristics are known. For example, creating the initial cube for a mosaic.

Definition at line 579 of file Process.cpp.

References Isis::Process::InputCubes.

Referenced by Isis::ProcessMapMosaic::SetOutputCube(), Isis::ProcessGroundPolygons::SetOutputCube(), and Isis::ProcessMapMosaic::StartProcess().

std::vector< char * > Isis::ProcessImport::DataHeader (  )  [inherited]

This method returns a pointer to the data header.

A data header is a block of non-image data at the beginning of each data block (for BSQ data blocks are bands). This is not included in the file header and does not include any record headers, such as line prefixes. In order to retrieve this data, the data header bytes must be set and the data header must be saved via SetDataHeaderBytes() and SaveDataHeader(), respectively. This method must be called only after StartProcess() has returned and before EndProcess() is called.

Returns:
vector <char*> Vector of pointers to data headers for each block, if saved.
Exceptions:
Isis::iException::Message "Data header was not saved. Use SaveDataHeader()."
See also:
SetDataHeaderBytes()

SaveDataHeader()

Definition at line 568 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_dataHeader, and Isis::ProcessImport::p_saveDataHeader.

std::vector< std::vector< char * > > Isis::ProcessImport::DataPrefix (  )  [inherited]

This method returns a pointer to the data prefix.

A data prefix is a block of non-image data at the beginning of each data record (for BSQ data records are lines). This is not included in the file header or the data header. In order to retrieve this data, the data prefix bytes must be set and the data prefix must be saved via SetDataPrefixBytes() and SaveDataPrefix(), respectively. This method must be called only after StartProcess() has returned and before EndProcess() is called.

Returns:
vector <vector <char*> > Two-dimensional vector of pointers to data prefixes for each record, if saved.
Exceptions:
Isis::iException::Message "Data prefix was not saved. Use SaveDataPrefix()."
See also:
SetDataPrefixBytes()

SaveDataPrefix()

Definition at line 622 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_dataPre, and Isis::ProcessImport::p_saveDataPre.

std::vector< std::vector< char * > > Isis::ProcessImport::DataSuffix (  )  [inherited]

This method returns a pointer to the data suffix.

A data suffix is a block of non-image data at the end of each data record (for BSQ data records are lines). This is not included in the file trailer or the data trailer. In order to retrieve this data, the data suffix bytes must be set and the data suffix must be saved via SetDataSuffixBytes() and SaveDataSuffix(), respectively. This method must be called only after StartProcess() has returned and before EndProcess() is called.

Returns:
vector <vector <char*> > Two-dimensional vector of pointers to data suffixes for each record, if saved.
Exceptions:
Isis::iException::Message "Data suffix was not saved. Use SaveDataSuffix()."
See also:
SetDataSuffixBytes()

SaveDataSuffix()

Definition at line 649 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_dataPost, and Isis::ProcessImport::p_saveDataPost.

std::vector< char * > Isis::ProcessImport::DataTrailer (  )  [inherited]

This method returns a pointer to the data trailer.

A data trailer is a block of non-image data at the end each data block (for BSQ data blocks are bands). This is not included in the file trailer and does not include any record trailers, such as line suffixes. In order to retrieve this data, the data trailer bytes must be set and the data trailer must be saved via SetDataTrailerBytes() and SaveDataTrailer(), respectively. This method must be called only after StartProcess() has returned and before EndProcess() is called.

Returns:
vector <char*> Vector of pointers to data trailers for each block, if saved.
Exceptions:
Isis::iException::Message "Data trailer was not saved. Use SaveDataTrailer()."
See also:
SetDataTrailerBytes()

SaveDataTrailer()

Definition at line 595 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_dataTrailer, and Isis::ProcessImport::p_saveDataTrailer.

void Isis::ProcessImportPds::EndProcess (  )  [virtual]

End the processing sequence and cleans up by closing cubes, freeing memory, etc.

Adds the OriginalLabel data to the end of the cube file, unless OmitOriginalLabel() has been called.

Reimplemented from Isis::Process.

Definition at line 991 of file ProcessImportPds.cpp.

References Isis::Process::EndProcess(), Isis::Process::OutputCubes, p_keepOriginalLabel, p_pdsLabel, and Write().

void Isis::ProcessImportPds::ExtractPdsProjection ( Isis::PvlTranslationManager pdsXlater  )  [private]

Extract all possible PDS projection parameters from the PDS label.

Parameters:
pdsXlater 
Exceptions:
Isis::iException::Message 
History:
2007-04-12 Tracie Sucharski - Modified the projection translation tables to include additional versions of Longitude direction, latitude type and if the min or max longitude values is greater than 180, change longitude domain to 360. Read projection mults/offsets from def file so lat/lon values are correct.
History:
2007-07-12 Stuart Sides- Modified to handle units of meters on the pixel resolution
History:
2008-06-06 Tracie Sucharski, Added LineProjectionOffset2 for Magellan images.
History:
2008-06-09 Tracie Sucharski, Added MinimumLongitude2 and MaximumLongitude2 for Magellan images.

The input file does not have a longitude domain. We need to figure it out!

The current process is two-step. First, we use the longitude direction to swap into what should be the proper order of min,max longitude. Then, if the values are still misordered, we have a 180 domain projection. Try converting the minimum to 180 domain, which hopefully results in ordering the min,max properly. Only do this to the minimum because if they are out of order, then it must be something like 330-30 which needs to be -30-30.

pdsImageProjection.trn assumes EasternMost is the MINIMUM, which is PositiveWest. For a PositiveEast image this swap should occur. On a PositiveWest image this swap should not occur.

Definition at line 771 of file ProcessImportPds.cpp.

References _FILEINFO_, e, GetProjectionOffsetMults(), Isis::PvlTranslationManager::InputHasKeyword(), Isis::PvlTranslationManager::InputUnits(), Isis::iException::Message(), Isis::NULL8, p_equatorialRadius, p_latitudeType, p_lineProjectionOffset, p_longitudeDirection, p_longitudeDomain, p_maximumLatitude, p_maximumLongitude, p_minimumLatitude, p_minimumLongitude, p_pixelResolution, p_polarRadius, p_projection, p_rotation, p_sampleProjectionOffset, p_scaleFactor, p_targetName, p_upperLeftX, p_upperLeftY, str, Isis::Projection::To180Domain(), and Isis::PvlTranslationManager::Translate().

Referenced by TranslatePdsProjection().

char * Isis::ProcessImport::FileHeader (  )  [inherited]

This method returns a pointer to the file header.

A file header is a block of non-image data at the beginning of the entire file. This does not include any section headers, such as band headers or line prefixes. In order to retrieve this data, the file header bytes must be set and the file header must be saved via SetFileHeaderBytes() and SaveFileHeader(), respectively. This method must be called only after StartProcess() has returned and before EndProcess() is called.

Returns:
char* Pointer to file header, if saved.
Exceptions:
Isis::iException::Message "File header was not saved. Use SaveFileHeader()."
See also:
SetFileHeaderBytes()

SaveFileHeader()

Definition at line 515 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_fileHeader, and Isis::ProcessImport::p_saveFileHeader.

char * Isis::ProcessImport::FileTrailer (  )  [inherited]

This method returns a pointer to the file trailer.

A file trailer is a block of non-image data at the end of the entire file. This does not include any section trailers, such as band trailers or line suffixes. In order to retrieve this data, the file trailer bytes must be set and the file trailer must be saved via SetFileTrailerBytes() and SaveFileTrailer(), respectively. This method must be called only after StartProcess() has returned and before EndProcess() is called.

Returns:
char* Pointer to file trailer, if saved.
Exceptions:
Isis::iException::Message "File trailer was not saved. Use SaveFileTrailer()."
See also:
SetFileTrailerBytes()

SaveFileTrailer()

Definition at line 540 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_fileTrailer, and Isis::ProcessImport::p_saveFileTrailer.

void Isis::ProcessImportPds::GetProjectionOffsetMults ( double &  xoff,
double &  yoff,
double &  xmult,
double &  ymult 
) [private]

Read mults and offsets from a def file in order to calculate the upper left x/y.

Parameters:
[out] xoff (double &) x offset
[out] yoff (double &) y offset
[out] xmult (double &) x multiplicative factor
[out] ymult (double &) y multiplicative factor
History:
2007-04-12 Tracie Sucharski - New Method

Definition at line 1178 of file ProcessImportPds.cpp.

References Isis::PvlObject::FindObject(), g, Isis::PvlObject::Group(), Isis::PvlObject::Groups(), Isis::PvlObject::HasKeyword(), p_pdsLabel, p_transDir, Isis::PvlObject::Traverse, and value.

Referenced by ExtractPdsProjection().

void Isis::ProcessImportPds::IdentifySource ( Isis::Pvl inputLabel  )  [private]

Identify the source of this file PDS or ISIS2.

Parameters:
inputLabel The label from the input file.

Definition at line 1016 of file ProcessImportPds.cpp.

References Isis::PvlTranslationManager::InputHasKeyword(), and p_source.

Referenced by SetPdsFile().

bool Isis::ProcessImportPds::IsIsis2 (  ) 

Return true if ISIS2 cube, else return false.

Returns:
(bool) returns true if pds file is an Isis2 file
History:
2007-04-12 Tracie Sucharski - New method

Definition at line 1053 of file ProcessImportPds.cpp.

References p_source.

int Isis::ProcessImport::Lines (  )  [inline, inherited]

Returns the number of lines.

Returns:
The number of lines

Definition at line 166 of file ProcessImport.h.

References Isis::ProcessImport::p_nl.

string Isis::Process::MissionData ( const std::string &  mission,
const std::string &  file,
bool  highestVersion = false 
) [inherited]

This method reads the mission specific data directory from the user preference file, makes sure that mission is available in the Isis installation, and the attaches the provided input file to the directory in order to create a full file specification.

Parameters:
mission Name of the mission data directory
file Name of the file to attach to the end of the directory
highestVersion If set to true the method will return the highest version number of the given file. Therefore, file must contain question marks such as "file???.dat". See the Filename class for more information on versioned files. Defaults to false.

Definition at line 555 of file Process.cpp.

References _FILEINFO_, Isis::Filename::Exists(), Isis::Filename::Expanded(), Isis::PvlObject::FindGroup(), Isis::Filename::HighestVersion(), Isis::iException::Message(), and Isis::Preference::Preferences().

void Isis::ProcessImportPds::OmitOriginalLabel (  ) 

Prevents the Original Label blob from being written out to the end of the cube.

Definition at line 1005 of file ProcessImportPds.cpp.

References p_keepOriginalLabel.

Isis::PixelType Isis::ProcessImport::PixelType (  )  [inline, inherited]

Returns the pixel type.

Returns:
The pixel type of input data

Definition at line 153 of file ProcessImport.h.

References Isis::ProcessImport::p_pixelType.

void Isis::ProcessImportPds::ProcessPdsImageLabel ( const std::string &  pdsDataFile  )  [private]

Process the PDS label of type IMAGE.

Parameters:
pdsDataFile The name of the PDS data file where the actual image/cube data is stored. This parameter can be an empty string, in which case the label information will be searched to find the data file name or the data will be assumed to be after the label information.
Exceptions:
Isis::iException::Message 

Definition at line 133 of file ProcessImportPds.cpp.

References _FILEINFO_, Isis::ProcessImport::BIL, Isis::ProcessImport::BIP, Isis::ProcessImport::BSQ, Isis::ByteOrderEnumeration(), Isis::iString::DownCase(), e, Isis::Filename::Expanded(), Isis::His, Isis::Hrs, Isis::Lis, Isis::Lrs, Isis::iException::Message(), nb, nl, ns, Isis::NULL8, p_labelFile, p_pdsLabel, p_transDir, Isis::Filename::Path(), Isis::ProcessImport::SetBase(), Isis::ProcessImport::SetByteOrder(), Isis::ProcessImport::SetDataPrefixBytes(), Isis::ProcessImport::SetDataSuffixBytes(), Isis::ProcessImport::SetDimensions(), Isis::ProcessImport::SetFileHeaderBytes(), Isis::ProcessImport::SetInputFile(), Isis::ProcessImport::SetMultiplier(), Isis::ProcessImport::SetOrganization(), Isis::ProcessImport::SetPixelType(), Isis::ProcessImport::SetSpecialValues(), str, Isis::iString::ToInteger(), and Isis::iString::Trim().

Referenced by SetPdsFile().

void Isis::ProcessImportPds::ProcessPdsQubeLabel ( const std::string &  pdsDataFile,
const std::string &  transFile 
) [private]

Process the PDS label of type QUBE or SPECTRALQUBE.

Parameters:
pdsDataFile The name of the PDS data file where the actual image/cube data is stored. This parameter can be an empty string, in which case the label information will be searched to find the data file name or the data will be assumed to be after the label information.
transFile 
Exceptions:
Isis::iException::Message 

Definition at line 397 of file ProcessImportPds.cpp.

References _FILEINFO_, Isis::ProcessImport::BIL, Isis::ProcessImport::BIP, Isis::ProcessImport::BSQ, Isis::ByteOrderEnumeration(), Isis::iString::DownCase(), Isis::Filename::Expanded(), Isis::PvlObject::FindGroup(), Isis::Hrs, Isis::Lis, Isis::Lrs, Isis::iException::Message(), nb, nl, ns, Isis::NULL8, p_labelFile, p_pdsLabel, Isis::Filename::Path(), Isis::Preference::Preferences(), Isis::ProcessImport::SetBase(), Isis::ProcessImport::SetByteOrder(), Isis::ProcessImport::SetDataPrefixBytes(), Isis::ProcessImport::SetDataSuffixBytes(), Isis::ProcessImport::SetDataTrailerBytes(), Isis::ProcessImport::SetDimensions(), Isis::ProcessImport::SetFileHeaderBytes(), Isis::ProcessImport::SetInputFile(), Isis::ProcessImport::SetMultiplier(), Isis::ProcessImport::SetOrganization(), Isis::ProcessImport::SetPixelType(), Isis::ProcessImport::SetSpecialValues(), str, Isis::iString::ToInteger(), and Isis::iString::Trim().

Referenced by SetPdsFile().

Isis::Progress* Isis::Process::Progress (  )  [inline, inherited]

This method returns a pointer to a Progress object.

Returns:
Progress*

Definition at line 211 of file Process.h.

References Isis::Process::p_progress.

Referenced by Isis::ProcessMapMosaic::SetOutputCube(), and Isis::ProcessMapMosaic::StartProcess().

void Isis::Process::PropagateHistory ( const bool  prop  )  [inherited]

This method allows the programmer to propagate history to the output cube (default is true).

Parameters:
prop Flag indicating if history is to be propagated to output cubes.

Definition at line 524 of file Process.cpp.

References Isis::Process::p_propagateHistory.

Referenced by Isis::ProcessMapMosaic::SetOutputCube().

void Isis::Process::PropagateLabels ( const std::string &  cube  )  [inherited]

This method allows the programmer to propagate labels from a specific secondary cube.

Parameters:
cube iString containing the name of the cube containing the labels to propagate.

Definition at line 482 of file Process.cpp.

References Isis::PvlObject::AddGroup(), g, incube, Isis::Process::OutputCubes, and pvl().

void Isis::Process::PropagateLabels ( const bool  prop  )  [inherited]

This method allows the programmer to turn on/off the propagation of labels from the 1st input cube to any of the output cubes.

By default, propagation occurs automatically in the Process class when a call to either of the SetOutputCube methods is invoked. If the program * requires no propagation then utilize this method. This method can be invoked between successive calls of SetOutputCube so that some cube will have labels propagated while others will not.

Parameters:
prop Flag indicating if labels are be propagated to output cubes.

Definition at line 471 of file Process.cpp.

References Isis::Process::p_propagateLabels.

Referenced by Isis::ProcessMapMosaic::SetOutputCube().

void Isis::Process::PropagateOriginalLabel ( const bool  prop  )  [inherited]

This method allows the programmer to propagate original labels to the output cube (default is true).

Parameters:
prop Flag indicating if original labels is to be propagated to output cubes.

Definition at line 535 of file Process.cpp.

References Isis::Process::p_propagateOriginalLabel.

Referenced by Isis::ProcessMapMosaic::SetOutputCube().

void Isis::Process::PropagatePolygons ( const bool  prop  )  [inherited]

This method allows the programmer to propagate input blobs to the output cube (default is true).

Parameters:
prop Flag indicating if input blobs are to be propagated to output cubes.

Definition at line 514 of file Process.cpp.

References Isis::Process::p_propagatePolygons.

Referenced by Isis::ProcessMapMosaic::SetOutputCube().

void Isis::Process::PropagateTables ( const bool  prop  )  [inherited]

This method allows the programmer to propagate input tables to the output cube (default is true).

Parameters:
prop Flag indicating if input tables are to be propagated to output cubes.

Definition at line 503 of file Process.cpp.

References Isis::Process::p_propagateTables.

Referenced by Isis::ProcessMapMosaic::SetOutputCube().

int Isis::ProcessImport::Samples (  )  [inline, inherited]

Returns the number of samples.

Returns:
The number of samples

Definition at line 160 of file ProcessImport.h.

References Isis::ProcessImport::p_ns.

void Isis::ProcessImport::SaveDataHeader (  )  [inherited]

This method marks the data block headers to be saved.

A data header is a block of non-image data at the beginning of each data block (for BSQ data blocks are bands). This is not included in the file header and does not include any record headers, such as line prefixes. Each of the header blocks will be saved inside StartProcess(). It must be called after setting the size with SetDataHeaderBytes() and before StartProcess() is called. This data will only be available via DataHeader() after StartProcess() has returned and before EndProcess() is called.

Exceptions:
Isis::iException::Message "Data header bytes equals 0. There is nothing to save. Use SetDataHeaderBytes() first."
See also:
SetDataHeaderBytes()

DataHeader()

Definition at line 412 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_dataHeaderBytes, and Isis::ProcessImport::p_saveDataHeader.

void Isis::ProcessImport::SaveDataPrefix (  )  [inherited]

This method marks the data prefix to be saved.

A data prefix is a block of non-image data at the beginning of each data record (for BSQ data records are lines). This is not included in the file header or the data header. Each of the data prefixes will be saved inside StartProcess(). It must be called after setting the size with SetDataPrefixBytes() and before StartProcess() is called. This data will only be available via DataPrefix() after StartProcess() has returned and before EndProcess() is called.

Exceptions:
Isis::iException::Message "Data prefix bytes equals 0. There is nothing to save. Use SetDataPrefixBytes() first."
See also:
SetDataPrefixBytes()

DataPrefix()

Definition at line 463 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_dataPreBytes, and Isis::ProcessImport::p_saveDataPre.

void Isis::ProcessImport::SaveDataSuffix (  )  [inherited]

This method marks the data suffix to be saved.

A data suffix is a block of non-image data at the end of each data record (for BSQ data records are lines). This is not included in the file trailer or the data trailer. Each of the data suffixes will be saved inside StartProcess(). It must be called after setting the size with SetDataPrefixBytes() and before StartProcess() is called. This data will only be available via DataPrefix() after StartProcess() has returned and before EndProcess() is called.

Exceptions:
Isis::iException::Message "Data suffix bytes equals 0. There is nothing to save. Use SetDataSuffixBytes() first."
See also:
SetDataSuffixBytes()

DataSuffix()

Definition at line 489 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_dataPostBytes, and Isis::ProcessImport::p_saveDataPost.

void Isis::ProcessImport::SaveDataTrailer (  )  [inherited]

This method marks the data block trailers to be saved.

A data trailer is a block of non-image data at the end of each data block (for BSQ data blocks are bands). This is not included in the file trailer and does not include any record trailers, such as line suffixes. Each of the trailer blocks will be saved inside StartProcess(). It must be called after setting the size with SetDataTrailerBytes() and before StartProcess() is called. This data will only be available via DataTrailer() after StartProcess() has returned and before EndProcess() is called.

Exceptions:
Isis::iException::Message "Data trailer bytes equals 0. There is nothing to save. Use SetDataTrailerBytes() first."
See also:
SetDataTrailerBytes()

DataTrailer()

Definition at line 438 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_dataTrailerBytes, and Isis::ProcessImport::p_saveDataTrailer.

void Isis::ProcessImport::SaveFileHeader (  )  [inherited]

This method marks the file header to be saved.

A file header is a block of non-image data at the beginning of the entire file. This does not include any section headers, such as band headers or line prefixes. The file header will be saved inside StartProcess(). It must be called after setting the size with SetFileHeaderBytes() and before StartProcess() is called. This data will only be available via FileHeader() after StartProcess() has returned and before EndProcess() is called.

Exceptions:
Isis::iException::Message "File header bytes equals 0. There is nothing to save. Use SetFileHeaderBytes() first."
See also:
SetFileHeaderBytes()

FileHeader()

Definition at line 361 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_fileHeaderBytes, and Isis::ProcessImport::p_saveFileHeader.

void Isis::ProcessImport::SaveFileTrailer (  )  [inherited]

This method marks the file trailer to be saved.

A file trailer is a block of non-image data at the end of the entire file. This does not include any section trailers, such as band trailers or line suffixes. The file trailer will be saved inside StartProcess(). It must be called after setting the size with SetFileTrailerBytes() and before StartProcess() is called. This data will only be available via FileTrailer() after StartProcess() has returned and before EndProcess() is called.

Exceptions:
Isis::iException::Message "File trailer bytes equals 0. There is nothing to save. Use SetFileTrailerBytes() first."
See also:
SetFileTrailerBytes()

FileTrailer()

Definition at line 386 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_fileTrailerBytes, and Isis::ProcessImport::p_saveFileTrailer.

void Isis::ProcessImport::SetBase ( const std::vector< double >  base  )  [inherited]

Sets band dependent core base.

Parameters:
base A vector containing the base for each band.

Definition at line 683 of file ProcessImport.cpp.

References Isis::ProcessImport::p_base.

void Isis::ProcessImport::SetBase ( const double  base  )  [inherited]

Sets the core base of the input cube.

Defaults to zero if not invoked.

Parameters:
base Core base

Definition at line 673 of file ProcessImport.cpp.

References Isis::ProcessImport::p_base.

Referenced by ProcessPdsImageLabel(), and ProcessPdsQubeLabel().

void Isis::ProcessImport::SetByteOrder ( const Isis::ByteOrder  order  )  [inherited]

Sets the byte order of the input file.

This must be invoked prior to SetOutputCube.

Parameters:
order The enumerated byte order Isis::Lsb or Isis::Msb

Definition at line 165 of file ProcessImport.cpp.

References Isis::ProcessImport::p_byteOrder.

Referenced by ProcessPdsImageLabel(), ProcessPdsQubeLabel(), and Isis::ProcessImportVicar::SetVicarFile().

void Isis::ProcessImport::SetDataHeaderBytes ( const int  bytes  )  [inherited]

This method sets the number of bytes in the header of each datablock of a file.

A data header is a block of non-image data at the beginning of each data block (for BSQ data blocks are bands). This is not included in the file header and does not include any record headers, such as line prefixes. It must be called before StartProcess(). This data will only be available if saved via SaveDataHeader() and may be accessed via DataHeader() after StartProcess() has returned and before EndProcess() is called. If not invoked the default is 0.

Parameters:
bytes Number of bytes
Exceptions:
Isis::iException::Message "Illegal data header size." (when bytes < 0)
See also:
SaveDataHeader()

DataHeader()

Definition at line 246 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), and Isis::ProcessImport::p_dataHeaderBytes.

Referenced by Isis::ProcessImportVicar::SetVicarFile().

void Isis::ProcessImport::SetDataPrefixBytes ( const int  bytes  )  [inherited]

This method sets the number of bytes at the beginning of each data record of a file.

A data prefix is a block of non-image data at the beginning of each data record (for BSQ data records are lines). This is not included in the file header or the data header. It must be called before StartProcess(). This data will only be available if saved via SaveDataPrefix() and may be accessed via DataPrefix() after StartProcess() has returned and before EndProcess() is called. If not invoked the default is 0.

Parameters:
bytes Number of bytes
Exceptions:
Isis::iException::Message "Illegal data prefix size." (when bytes < 0)
See also:
SaveDataPrefix()

DataPrefix()

Definition at line 304 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), and Isis::ProcessImport::p_dataPreBytes.

Referenced by ProcessPdsImageLabel(), ProcessPdsQubeLabel(), and Isis::ProcessImportVicar::SetVicarFile().

void Isis::ProcessImport::SetDataSuffixBytes ( const int  bytes  )  [inherited]

This method sets the number of bytes at the end of each data record of a file.

A data suffix is a block of non-image data at the end of each data record (for BSQ data records are lines). This is not included in the file trailer or the data trailer. It must be called before StartProcess(). This data will only be available if saved via SaveDataSuffix() and may be accessed via DataSuffix() after StartProcess() has returned and before EndProcess() is called. If not invoked the default is 0.

Parameters:
bytes Number of bytes
Exceptions:
Isis::iException::Message "Illegal data suffix size." (when bytes < 0)
See also:
SaveDataSuffix()

DataSuffix()

Definition at line 333 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), and Isis::ProcessImport::p_dataPostBytes.

Referenced by ProcessPdsImageLabel(), ProcessPdsQubeLabel(), and Isis::ProcessImportVicar::SetVicarFile().

void Isis::ProcessImport::SetDataTrailerBytes ( const int  bytes  )  [inherited]

This method sets the number of bytes in the trailer of each datablock of a file.

A data trailer is a block of non-image data at the end of each data block (for BSQ data blocks are bands). This is not included in the file trailer and does not include any record trailers, such as line suffixes. It must be called before StartProcess(). This data will only be available if saved via SaveDataTrailer() and may be accessed via DataTrailer() after StartProcess() has returned and before EndProcess() is called. If not invoked the default is 0.

Parameters:
bytes Number of bytes
Exceptions:
Isis::iException::Message "Illegal data trailer size." (when bytes < 0)
See also:
SaveDataTrailer()

DataTrailer()

Definition at line 275 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), and Isis::ProcessImport::p_dataTrailerBytes.

Referenced by ProcessPdsQubeLabel().

void Isis::ProcessImport::SetDimensions ( const int  ns,
const int  nl,
const int  nb 
) [inherited]

Sets the physical size of the input cube.

This must be invoked prior to setOutputCube.

Parameters:
ns Number of samples
nl Number of lines
nb Number of bands
Exceptions:
Isis::iException::Message "Illegal dimension."

Definition at line 146 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_nb, Isis::ProcessImport::p_nl, and Isis::ProcessImport::p_ns.

Referenced by ProcessPdsImageLabel(), ProcessPdsQubeLabel(), and Isis::ProcessImportVicar::SetVicarFile().

void Isis::ProcessImport::SetFileHeaderBytes ( const int  bytes  )  [inherited]

This method sets the number of bytes in the header of a file.

The file header is a block of non-image data at the beginning of the entire file. This does not include any section headers, such as band headers or line prefixes. Typically it is used to delineate the boundary of the binary or ascii labels. It must be called before StartProcess(). This data will only be available if saved via SaveFileHeader() and may be accessed via FileHeader() after StartProcess() has returned and before EndProcess() is called. If not invoked the default is 0.

Parameters:
bytes Number of bytes
Exceptions:
Isis::iException::Message "Illegal file header size." (when bytes < 0)
See also:
SaveFileHeader()

FileHeader()

Definition at line 189 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), and Isis::ProcessImport::p_fileHeaderBytes.

Referenced by ProcessPdsImageLabel(), ProcessPdsQubeLabel(), and Isis::ProcessImportVicar::SetVicarFile().

void Isis::ProcessImport::SetFileTrailerBytes ( const int  bytes  )  [inherited]

This method sets the number of bytes in the trailer of a file.

The trailer is a block of non-image data at the end of the entire file. This does not include any section trailers, such as band trailers or line suffixes. It must be called before StartProcess(). This data will only be available if saved via SaveFileTrailer() and may be accessed via FileTrailer() after StartProcess() has returned and before EndProcess() is called. If not invoked the default is 0.

Parameters:
bytes Number of bytes
Exceptions:
Isis::iException::Message "Illegal file trailer size." (when bytes < 0)
See also:
SaveFileTrailer()

FileTrailer()

History:
2008-08-12 Jeannie Walldren, Method created

Definition at line 218 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), and Isis::ProcessImport::p_fileTrailerBytes.

void Isis::ProcessImport::SetHIS ( const double  his_min,
const double  his_max 
) [inherited]

Sets the range that will be considered Isis::Null.

Parameters:
his_min The double precision value used to identify the min range of his pixels in the image being imported.
his_max The double precision value used to identify the max range of his pixels in the image being imported.

Definition at line 808 of file ProcessImport.cpp.

References Isis::ProcessImport::p_his_max, and Isis::ProcessImport::p_his_min.

Referenced by Isis::ProcessImport::ProcessImport(), and Isis::ProcessImport::SetSpecialValues().

void Isis::ProcessImport::SetHRS ( const double  hrs_min,
const double  hrs_max 
) [inherited]

Sets the range that will be considered Isis::Null.

Parameters:
hrs_min The double precision value used to identify the min range of hrs pixels in the image being imported.
hrs_max The double precision value used to identify the max range of hrs pixels in the image being imported.

Definition at line 792 of file ProcessImport.cpp.

References Isis::ProcessImport::p_hrs_max, and Isis::ProcessImport::p_hrs_min.

Referenced by Isis::ProcessImport::ProcessImport(), and Isis::ProcessImport::SetSpecialValues().

Isis::Cube * Isis::Process::SetInputCube ( const std::string &  fname,
const Isis::CubeAttributeInput att,
int  requirements = 0 
) [inherited]

Opens an input cube specified by the programmer and verifies requirements are met.

Parameters:
fname Programmer specified work file. For example, "myfile.cub".
att The cube attributes to use when opening the input cube.
requirements Same as requirements on SetInputCube. See that method for more details. Defaults to 0
Returns:
Cube*
Exceptions:
Isis::iException::Message 

Reimplemented in Isis::ProcessByBrick.

Definition at line 72 of file Process.cpp.

References _FILEINFO_, Isis::AllMatchOrOne, Isis::BandMatchOrOne, Isis::Cube::Bands(), Isis::CubeAttributeInput::Bands(), cube, e, Isis::Process::InputCubes, Isis::Cube::Lines(), Isis::iException::Message(), Isis::OneBand, Isis::Cube::Open(), Isis::ReadWrite, Isis::Cube::Samples(), Isis::Cube::SetVirtualBands(), Isis::SizeMatch, and Isis::SpatialMatch.

Isis::Cube * Isis::Process::SetInputCube ( const std::string &  parameter,
const int  requirements = 0 
) [inherited]

Opens an input cube specified by the user and verifies requirements are met.

Returns:
Cube*
Parameters:
parameter User parameter to obtain file to open. Typically, the value is "FROM". For example, the user can specify on the command line FROM=myfile.cub and this method will attempt to open the cube "myfile.cub" if the parameter was set to "FROM".
requirements Use to specify requirements for the input file. The following are requirments are checked against 1) ic_base::SizeMatch checks to make sure the input cube has the same bands, samples, and lines as the first input cube open using this method, 2) ic_base::SpatialMatch checks to make sure the input cube has the same samples and lines as the first input cube, 3) ic_base::Georeferenced checks to make sure latitude/longitudes can be obtained from the input cube, 4) ic_base::FullyGeoreferenced checks to make sure latitude/longitude, phase/incidence/emission, and other geometric parameters can be obtained from the input cube, 5) ic_base::OneBand checks to make sure the input cube has exactly one band. Note, that these requirements can be logically or'ed. For example, ic_base::SpatialMatch | ic_base::georeferenced. Defaults to 0
Exceptions:
Isis::iException::Message 

Reimplemented in Isis::ProcessByBrick, Isis::ProcessByLine, Isis::ProcessBySample, and Isis::ProcessBySpectra.

Definition at line 214 of file Process.cpp.

References IsisAml::GetFilename(), IsisAml::GetInputAttribute(), and Isis::Application::GetUserInterface().

Referenced by Isis::ProcessMosaic::SetInputCube(), Isis::ProcessBySample::SetInputCube(), Isis::ProcessByLine::SetInputCube(), Isis::ProcessByBrick::SetInputCube(), and Isis::ProcessGroundPolygons::SetOutputCube().

void Isis::ProcessImport::SetInputFile ( const std::string &  file  )  [inherited]

Sets the name of the input file to be read in the import StartProcess method and verifies its existance.

Parameters:
file The name of the input file to import.
Exceptions:
Isis::iException::Message "File does not exist."

Definition at line 1772 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), and Isis::ProcessImport::p_inFile.

Referenced by ProcessPdsImageLabel(), ProcessPdsQubeLabel(), and Isis::ProcessImportVicar::SetVicarFile().

void Isis::ProcessImport::SetLIS ( const double  lis_min,
const double  lis_max 
) [inherited]

Sets the range that will be considered Isis::Null.

Parameters:
lis_min The double precision value used to identify the min range of lis pixels in the image being imported.
lis_max The double precision value used to identify the max range of lis pixels in the image being imported.

Definition at line 776 of file ProcessImport.cpp.

References Isis::ProcessImport::p_lis_max, and Isis::ProcessImport::p_lis_min.

Referenced by Isis::ProcessImport::ProcessImport(), and Isis::ProcessImport::SetSpecialValues().

void Isis::ProcessImport::SetLRS ( const double  lrs_min,
const double  lrs_max 
) [inherited]

Sets the range that will be considered Isis::Null.

Parameters:
lrs_min The double precision value used to identify the min range of lrs pixels in the image being imported.
lrs_max The double precision value used to identify the max range of lrs pixels in the image being imported.

Definition at line 760 of file ProcessImport.cpp.

References Isis::ProcessImport::p_lrs_max, and Isis::ProcessImport::p_lrs_min.

Referenced by Isis::ProcessImport::ProcessImport(), and Isis::ProcessImport::SetSpecialValues().

void Isis::ProcessImport::SetMultiplier ( const std::vector< double >  mult  )  [inherited]

Sets band dependent core multiplier.

Parameters:
mult A vector containing the multiplier for each band.

Definition at line 702 of file ProcessImport.cpp.

References Isis::ProcessImport::p_mult.

void Isis::ProcessImport::SetMultiplier ( const double  mult  )  [inherited]

Sets the core multiplier of the input cube.

Defaults to one if not invoked.

Parameters:
mult Core base

Definition at line 692 of file ProcessImport.cpp.

References Isis::ProcessImport::p_mult.

Referenced by ProcessPdsImageLabel(), and ProcessPdsQubeLabel().

void Isis::ProcessImport::SetNull ( const double  null_min,
const double  null_max 
) [inherited]

Sets the range that will be considered Isis::Null.

Parameters:
null_min The double precision value used to identify the min range of null pixels in the image being imported.
null_max The double precision value used to identify the max range of null pixels in the image being imported.

Definition at line 744 of file ProcessImport.cpp.

References Isis::ProcessImport::p_null_max, and Isis::ProcessImport::p_null_min.

Referenced by Isis::ProcessImport::ProcessImport(), and Isis::ProcessImport::SetSpecialValues().

void Isis::ProcessImport::SetOrganization ( const ProcessImport::Interleave  org  )  [inherited]

Sets the organization of the input cube.

If not invoked it is assumed Isis::Import::Bsq.

Parameters:
org The enumerated organizations either Isis::Import::Bsq Isis::Import::Bil or Isis::Import::Bip

Definition at line 664 of file ProcessImport.cpp.

References Isis::ProcessImport::p_organization.

Referenced by ProcessPdsImageLabel(), ProcessPdsQubeLabel(), and Isis::ProcessImportVicar::SetVicarFile().

Isis::Cube * Isis::Process::SetOutputCube ( const std::string &  fname,
const Isis::CubeAttributeOutput att,
const int  ns,
const int  nl,
const int  nb = 1 
) [inherited]

Allocates a output cube whose name and size is specified by the programmer.

Returns:
Cube*
Parameters:
fname Name of the output cube to allocate
att The cube attributes to use when creating the output cube.
ns Number of samples to allocate
nl Number of lines to allocate
nb Number of bands to allocate
Exceptions:
Isis::iException::Message 

Definition at line 305 of file Process.cpp.

References _FILEINFO_, Isis::PvlObject::AddGroup(), Isis::CubeAttributeOutput::AttachedLabel(), base, Isis::CubeAttributeOutput::ByteOrder(), cube, Isis::CubeAttributeOutput::DetachedLabel(), e, Isis::CubeAttributeOutput::FileFormat(), incube, Isis::Process::InputCubes, Isis::PvlContainer::IsNamed(), Isis::CubeAttributeOutput::Maximum(), Isis::iException::Message(), Isis::CubeAttributeOutput::Minimum(), mult, Isis::PvlContainer::Name(), Isis::PvlObject::Object(), Isis::PvlObject::Objects(), Isis::Process::OutputCubes, Isis::Process::p_propagateLabels, Isis::Process::p_propagateOriginalLabel, Isis::Process::p_propagatePolygons, Isis::Process::p_propagateTables, Isis::CubeAttributeOutput::PixelType(), Isis::CubeAttributeOutput::PropagateMinimumMaximum(), Isis::CubeAttributeOutput::PropagatePixelType(), Isis::Cube::SetDimensions(), and Isis::Process::WriteHistory().

Isis::Cube * Isis::Process::SetOutputCube ( const std::string &  parameter,
const int  ns,
const int  nl,
const int  nb = 1 
) [inherited]

Allocates a user specified output cube whose size is specified by the programmer.

Returns:
Cube*
Parameters:
parameter User specified output file. For example, "TO" is a popular user parameter. If the user specified TO=output.cub, then this routine would allocate the file output.cub with size specified by the first opened input cube. The output pixel type will be propagated from the first loaded input cube or will use the value in the application XML file for pixelType.
ns Number of samples to allocate
nl Number of lines to allocate
nb Number of bands to allocate
Exceptions:
Isis::iException::Message 

Reimplemented in Isis::ProcessPolygons.

Definition at line 273 of file Process.cpp.

References _FILEINFO_, IsisAml::GetFilename(), IsisAml::GetOutputAttribute(), Isis::Application::GetUserInterface(), Isis::iException::Message(), and Isis::Process::SetOutputCube().

Isis::Cube * Isis::ProcessImport::SetOutputCube ( const std::string &  parameter,
Isis::CubeAttributeOutput att 
) [inherited]

Create the output file.

Note that all the appropiate calls to at least SetDimensions should be invoked prior to calling this method.

Parameters:
parameter The parameter name that holds the output file name.
att An output cube attribute to define the characteristics of the output cube.
Exceptions:
Isis::iException::Message "File is not in a supported organization."

Definition at line 973 of file ProcessImport.cpp.

References Isis::ProcessImport::p_nb, Isis::ProcessImport::p_nl, Isis::ProcessImport::p_ns, and Isis::Process::SetOutputCube().

Isis::Cube * Isis::ProcessImport::SetOutputCube ( const std::string &  parameter  )  [inherited]

Create the output file.

Note that all the appropiate calls to at least SetDimensions and SetPixelType should be made prior to calling this method.

Parameters:
parameter The parameter name that holds the output file name.
Exceptions:
Isis::iException::Message "Unsupported pixel type."

Reimplemented from Isis::Process.

Definition at line 914 of file ProcessImport.cpp.

References _FILEINFO_, IsisAml::GetOutputAttribute(), Isis::Application::GetUserInterface(), Isis::CubeAttributeOutput::Maximum(), Isis::iException::Message(), Isis::CubeAttributeOutput::Minimum(), Isis::ProcessImport::p_base, Isis::ProcessImport::p_mult, Isis::ProcessImport::p_nb, Isis::ProcessImport::p_nl, Isis::ProcessImport::p_ns, Isis::ProcessImport::p_pixelType, Isis::CubeAttributeOutput::PixelType(), Isis::PixelTypeName(), Isis::CubeAttributeOutput::PropagateMinimumMaximum(), Isis::CubeAttributeOutput::PropagatePixelType(), Isis::Process::SetOutputCube(), Isis::VALID_MAX1, Isis::VALID_MAX2, Isis::VALID_MAX4, Isis::VALID_MAXU2, Isis::VALID_MIN1, Isis::VALID_MIN2, Isis::VALID_MIN4, and Isis::VALID_MINU2.

void Isis::ProcessImportPds::SetPdsFile ( const std::string &  pdsLabelFile,
const std::string &  pdsDataFile,
Isis::Pvl pdsLabel 
)

Set the input label file, data file and initialize a Pvl with the PDS labels.

Parameters:
pdsLabelFile The name of the PDS label file.This must be the file where the label is. It can be an attached or detached label.
pdsDataFile The name of the PDS data file where the actual image/cube data is stored. This parameter can be an empty string, in which case the label information will be searched to find the data file name or the data will be assumed to be after the label information.
pdsLabel The label from the input PDS/Isis2 file
Exceptions:
Isis::iException::Message 

Definition at line 73 of file ProcessImportPds.cpp.

References _FILEINFO_, IdentifySource(), Isis::PvlTranslationManager::InputHasKeyword(), Isis::iException::Message(), p_labelFile, p_pdsLabel, ProcessPdsImageLabel(), ProcessPdsQubeLabel(), and Isis::Pvl::Read().

void Isis::ProcessImport::SetPixelType ( const Isis::PixelType  type  )  [inherited]

Sets the pixel type of the input file.

Parameters:
type The enumerated pixel type Isis::Real, Isis::SignedWord, or Isis::UnsignedByte. This must be invoked prior to setOutputCube
Exceptions:
Isis::iException::Message "Unsupported pixel type."

Definition at line 120 of file ProcessImport.cpp.

References _FILEINFO_, Isis::iException::Message(), Isis::ProcessImport::p_pixelType, and Isis::PixelTypeName().

Referenced by ProcessPdsImageLabel(), ProcessPdsQubeLabel(), and Isis::ProcessImportVicar::SetVicarFile().

void Isis::ProcessImport::SetSpecialValues ( const double  null,
const double  lrs,
const double  lis,
const double  hrs,
const double  his 
) [inherited]

Sets a mapping of input pixel values to output special pixel values.

Parameters:
null The double precision value used to identify null pixels in the image being imported.
lrs The double precisiion value used to identify low representation saturation LRS pixels in the image being imported.
lis The double precision value used to identify low instrument saturation LIS pixels in the image being imported.
hrs The double precision value used to identify high representation saturation HRS pixels in the image being imported.
his The double precision value used to identify high instrument saturation HIS pixels in the image being imported.

Definition at line 724 of file ProcessImport.cpp.

References Isis::ProcessImport::SetHIS(), Isis::ProcessImport::SetHRS(), Isis::ProcessImport::SetLIS(), Isis::ProcessImport::SetLRS(), and Isis::ProcessImport::SetNull().

Referenced by ProcessPdsImageLabel(), and ProcessPdsQubeLabel().

void Isis::Process::StartProcess ( void   funct()  )  [inline, inherited]

In the base class, this method will invoked a user-specified function exactly one time.

In derived classes such as ProcessByLine, the StartProcess will invoke a user-specified function for every line in a cube.

Parameters:
funct() Name of your processing function

Definition at line 180 of file Process.h.

void Isis::ProcessImport::StartProcess ( void   funct(Isis::Buffer &out)  )  [inherited]

Process the input file and send data to method.

Parameters:
funct Method that accepts Isis::Buffer as an input parameter, processes the image, and has no return value.
Exceptions:
Isis::iException::Message "File is not a supported organization."

Definition at line 1006 of file ProcessImport.cpp.

References _FILEINFO_, Isis::ProcessImport::BIL, Isis::ProcessImport::BIP, Isis::ProcessImport::BSQ, Isis::iException::Message(), Isis::ProcessImport::p_inFile, Isis::ProcessImport::p_organization, Isis::ProcessImport::ProcessBil(), Isis::ProcessImport::ProcessBip(), and Isis::ProcessImport::ProcessBsq().

void Isis::ProcessImport::StartProcess (  )  [inherited]

Process the input file and write it to the output.

Definition at line 980 of file ProcessImport.cpp.

References _FILEINFO_, Isis::ProcessImport::BIL, Isis::ProcessImport::BIP, Isis::ProcessImport::BSQ, Isis::iException::Message(), Isis::ProcessImport::p_inFile, Isis::ProcessImport::p_organization, Isis::ProcessImport::ProcessBil(), Isis::ProcessImport::ProcessBip(), and Isis::ProcessImport::ProcessBsq().

double Isis::ProcessImport::TestPixel ( const double  pixel  )  [inherited]

Tests the pixel.

If it is valid it will return the dn value, otherwise it will return the Isis special pixel value that corresponds to it

Parameters:
pixel The double precision value that represents a pixel.
Returns:
double The double precision value representing the pixel will return as a valid dn or changed to an isis special pixel.

Definition at line 890 of file ProcessImport.cpp.

References Isis::HIGH_INSTR_SAT8, Isis::HIGH_REPR_SAT8, Isis::LOW_INSTR_SAT8, Isis::LOW_REPR_SAT8, Isis::NULL8, Isis::ProcessImport::p_his_min, Isis::ProcessImport::p_hrs_min, Isis::ProcessImport::p_lis_min, Isis::ProcessImport::p_lrs_min, and Isis::ProcessImport::p_null_min.

Referenced by Isis::ProcessImport::ProcessBil(), Isis::ProcessImport::ProcessBip(), and Isis::ProcessImport::ProcessBsq().

void Isis::ProcessImportPds::TranslateIsis2BandBin ( Isis::Pvl lab  )  [private]

Fill as many of the Isis3 BandBin labels as possible.

Parameters:
lab The lable where the translated Isis2 keywords will be placed

Definition at line 1097 of file ProcessImportPds.cpp.

References Isis::Filename::Expanded(), Isis::PvlObject::FindGroup(), p_pdsLabel, and Isis::Preference::Preferences().

Referenced by TranslateIsis2Labels().

void Isis::ProcessImportPds::TranslateIsis2Instrument ( Isis::Pvl lab  )  [private]

Fill as many of the Isis3 instrument labels as possible.

Parameters:
lab The label where the tramslated Isis2 keywords will be placed

Definition at line 1115 of file ProcessImportPds.cpp.

References Isis::Filename::Expanded(), Isis::PvlObject::FindGroup(), Isis::PvlContainer::HasKeyword(), p_pdsLabel, Isis::Preference::Preferences(), and Isis::iString::Trim().

Referenced by TranslateIsis2Labels().

void Isis::ProcessImportPds::TranslateIsis2Labels ( Isis::Pvl lab  ) 

Translate as many of the ISIS2 labels as possible.

Parameters:
lab The label where the translated Isis2 keywords will be placed

Definition at line 1072 of file ProcessImportPds.cpp.

References TranslateIsis2BandBin(), and TranslateIsis2Instrument().

void Isis::ProcessImportPds::TranslatePdsArchive ( Isis::Pvl lab  )  [private]

Fill as many of the Isis3 BandBin labels as possible.

Parameters:
lab The lable where the translated PDS keywords will be placed

Definition at line 1157 of file ProcessImportPds.cpp.

References Isis::Filename::Expanded(), p_pdsLabel, and p_transDir.

Referenced by TranslatePdsLabels().

void Isis::ProcessImportPds::TranslatePdsBandBin ( Isis::Pvl lab  )  [private]

Fill as many of the Isis3 BandBin labels as possible.

Parameters:
lab The lable where the translated PDS keywords will be placed

Definition at line 1142 of file ProcessImportPds.cpp.

References Isis::Filename::Expanded(), p_pdsLabel, and p_transDir.

Referenced by TranslatePdsLabels().

void Isis::ProcessImportPds::TranslatePdsLabels ( Isis::Pvl lab  ) 

Translate as many of the PDS labels as possible.

Parameters:
lab The label where the translated Isis2 keywords will be placed

Definition at line 1086 of file ProcessImportPds.cpp.

References TranslatePdsArchive(), and TranslatePdsBandBin().

void Isis::ProcessImportPds::TranslatePdsProjection ( Isis::Pvl lab  ) 

Fills the passed in label with the projection information from the PDS label file.

The application must write add the projection parameters to the output cube if desired.

Parameters:
lab The label where the projection parameters will be placed.
History:
2008-06-06 Tracie Sucharski - Added new InputGroup for PdsProjectionTypeImage to handle Magellan.

Definition at line 645 of file ProcessImportPds.cpp.

References Isis::PvlObject::AddGroup(), Isis::PvlTranslationManager::Auto(), Isis::Filename::Expanded(), ExtractPdsProjection(), Isis::PvlObject::FindGroup(), Isis::PvlTranslationManager::InputHasKeyword(), Isis::NULL8, Isis::Process::OutputCubes, p_equatorialRadius, p_latitudeType, p_longitudeDirection, p_longitudeDomain, p_maximumLatitude, p_maximumLongitude, p_minimumLatitude, p_minimumLongitude, p_pdsLabel, p_pixelResolution, p_polarRadius, p_projection, p_rotation, p_scaleFactor, p_targetName, p_upperLeftX, p_upperLeftY, and Isis::Preference::Preferences().

void Isis::Process::WriteHistory ( Cube cube  )  [inherited]

Writes out the History blob to the cube.

Definition at line 591 of file Process.cpp.

References Isis::History::AddEntry(), cube, Isis::Process::InputCubes, Isis::Process::p_propagateHistory, and Isis::Cube::Write().

Referenced by Isis::Process::SetOutputCube(), and Isis::ProcessMapMosaic::StartProcess().


Member Data Documentation

std::vector<Isis::Cube *> Isis::Process::InputCubes [protected, inherited]

A vector of pointers to opened Cube objects.

The pointers are established in the SetInputCube/SetInputWorkCube methods.

Definition at line 160 of file Process.h.

Referenced by Isis::Process::ClearInputCubes(), Isis::ProcessExport::CreateWorldFile(), Isis::Process::EndProcess(), Isis::ProcessExport::InitProcess(), Isis::ProcessExportPds::LineBytes(), Isis::ProcessExportPds::OutputLabel(), Isis::ProcessRubberSheet::QuadTree(), Isis::ProcessByBrick::SetBrickSize(), Isis::ProcessByBrick::SetInputBrickSize(), Isis::ProcessMosaic::SetInputCube(), Isis::Process::SetInputCube(), Isis::ProcessExport::SetInputRange(), Isis::ProcessGroundPolygons::SetOutputCube(), Isis::Process::SetOutputCube(), Isis::ProcessRubberSheet::SlowGeom(), Isis::ProcessRubberSheet::SlowQuad(), Isis::ProcessExportPds::StandardAllMapping(), Isis::ProcessExportPds::StandardImageImage(), Isis::ProcessRubberSheet::StartProcess(), Isis::ProcessMosaic::StartProcess(), Isis::ProcessMapMosaic::StartProcess(), Isis::ProcessExport::StartProcess(), Isis::ProcessByTile::StartProcess(), Isis::ProcessBySpectra::StartProcess(), Isis::ProcessBySample::StartProcess(), Isis::ProcessByQuickFilter::StartProcess(), Isis::ProcessByLine::StartProcess(), Isis::ProcessByBrick::StartProcess(), Isis::ProcessByBoxcar::StartProcess(), Isis::ProcessExport::StartProcessBIL(), Isis::ProcessExport::StartProcessBIP(), Isis::ProcessExport::StartProcessBSQ(), and Isis::Process::WriteHistory().

std::vector<Isis::Cube *> Isis::Process::OutputCubes [protected, inherited]

A vector of pointers to allocated Cube objects.

The pointers are established in the SetOutputCube method.

Definition at line 166 of file Process.h.

Referenced by Isis::ProcessPolygons::AppendOutputCube(), Isis::ProcessPolygons::DoWork(), EndProcess(), Isis::Process::EndProcess(), Isis::ProcessPolygons::FillPolygon(), Isis::ProcessImport::ProcessBil(), Isis::ProcessImport::ProcessBip(), Isis::ProcessImport::ProcessBsq(), Isis::Process::PropagateLabels(), Isis::ProcessByBrick::SetBrickSize(), Isis::ProcessByBrick::SetOutputBrickSize(), Isis::ProcessPolygons::SetOutputCube(), Isis::ProcessMosaic::SetOutputCube(), Isis::ProcessMapMosaic::SetOutputCube(), Isis::ProcessGroundPolygons::SetOutputCube(), Isis::Process::SetOutputCube(), Isis::ProcessRubberSheet::StartProcess(), Isis::ProcessMosaic::StartProcess(), Isis::ProcessMapMosaic::StartProcess(), Isis::ProcessByTile::StartProcess(), Isis::ProcessBySpectra::StartProcess(), Isis::ProcessBySample::StartProcess(), Isis::ProcessByQuickFilter::StartProcess(), Isis::ProcessByLine::StartProcess(), Isis::ProcessByBrick::StartProcess(), Isis::ProcessByBoxcar::StartProcess(), and TranslatePdsProjection().

double Isis::ProcessImportPds::p_equatorialRadius [private]

Equatorial radius found in the PDS projection labels.

Definition at line 198 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

bool Isis::ProcessImportPds::p_keepOriginalLabel [private]

determines whether or not to keep the OriginalLabel blob.

Definition at line 227 of file ProcessImportPds.h.

Referenced by EndProcess(), OmitOriginalLabel(), and ProcessImportPds().

std::string Isis::ProcessImportPds::p_labelFile [private]

The filename where the PDS label came from.

Definition at line 190 of file ProcessImportPds.h.

Referenced by ProcessPdsImageLabel(), ProcessPdsQubeLabel(), and SetPdsFile().

std::string Isis::ProcessImportPds::p_latitudeType [private]

The latitude type found in the PDS projection labels.

Definition at line 206 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

std::string Isis::ProcessImportPds::p_longitudeDirection [private]

Longitude direction found in the PDS projection labels.

Definition at line 202 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

int Isis::ProcessImportPds::p_longitudeDomain [private]

Longitude domain found in the PDS projection labels.

Definition at line 204 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

double Isis::ProcessImportPds::p_maximumLatitude [private]

Maximum latitude found in the PDS projection labels.

Definition at line 210 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

double Isis::ProcessImportPds::p_maximumLongitude [private]

Maximum longitude found in the PDS projection labels.

Definition at line 214 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

double Isis::ProcessImportPds::p_minimumLatitude [private]

Minimum latitude found in the PDS projection labels.

Definition at line 208 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

double Isis::ProcessImportPds::p_minimumLongitude [private]

Minimum longitude found in the PDS projection labels.

Definition at line 212 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

Isis::Pvl Isis::ProcessImportPds::p_pdsLabel [private]

Internalized PDS label.

Definition at line 189 of file ProcessImportPds.h.

Referenced by EndProcess(), GetProjectionOffsetMults(), ProcessPdsImageLabel(), ProcessPdsQubeLabel(), SetPdsFile(), TranslateIsis2BandBin(), TranslateIsis2Instrument(), TranslatePdsArchive(), TranslatePdsBandBin(), and TranslatePdsProjection().

double Isis::ProcessImportPds::p_pixelResolution [private]

Pixel resolution found in the PDS projection labels.

Definition at line 216 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

double Isis::ProcessImportPds::p_polarRadius [private]

The polar radius found in the PDS projection labels.

Definition at line 200 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

Isis::Progress* Isis::Process::p_progress [protected, inherited]

Pointer to a Progress object.

Definition at line 134 of file Process.h.

Referenced by Isis::ProcessExport::InitProcess(), Isis::Process::Process(), Isis::ProcessImport::ProcessBil(), Isis::ProcessImport::ProcessBip(), Isis::ProcessImport::ProcessBsq(), Isis::ProcessExport::ProcessExport(), Isis::ProcessImport::ProcessImport(), Isis::Process::Progress(), Isis::ProcessRubberSheet::StartProcess(), Isis::ProcessMosaic::StartProcess(), Isis::ProcessExport::StartProcess(), Isis::ProcessByQuickFilter::StartProcess(), Isis::ProcessByBrick::StartProcess(), Isis::ProcessByBoxcar::StartProcess(), Isis::ProcessExport::StartProcessBIL(), Isis::ProcessExport::StartProcessBIP(), Isis::ProcessExport::StartProcessBSQ(), and Isis::Process::~Process().

std::string Isis::ProcessImportPds::p_projection [private]

Base data directory The name of the projection found in the PDS projection labels.

Definition at line 195 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

bool Isis::Process::p_propagateHistory [protected, inherited]

Flag indicating if history is to be propagated to output cubes.

Definition at line 150 of file Process.h.

Referenced by Isis::Process::Process(), Isis::Process::PropagateHistory(), Isis::ProcessMapMosaic::StartProcess(), and Isis::Process::WriteHistory().

bool Isis::Process::p_propagateLabels [protected, inherited]

Flag indicating if labels are be propagated to output cubes.

Definition at line 138 of file Process.h.

Referenced by Isis::Process::Process(), Isis::Process::PropagateLabels(), and Isis::Process::SetOutputCube().

bool Isis::Process::p_propagateOriginalLabel [protected, inherited]

Flag indicating if original lable is to be propagated to output cubes.

Definition at line 154 of file Process.h.

Referenced by Isis::Process::Process(), Isis::Process::PropagateOriginalLabel(), and Isis::Process::SetOutputCube().

bool Isis::Process::p_propagatePolygons [protected, inherited]

Flag indicating if blobs are be propagated to output cubes.

Definition at line 146 of file Process.h.

Referenced by Isis::Process::Process(), Isis::Process::PropagatePolygons(), and Isis::Process::SetOutputCube().

bool Isis::Process::p_propagateTables [protected, inherited]

Flag indicating if tables are be propagated to output cubes.

Definition at line 142 of file Process.h.

Referenced by Isis::Process::Process(), Isis::Process::PropagateTables(), and Isis::Process::SetOutputCube().

double Isis::ProcessImportPds::p_rotation [private]

The rotation found in the PDS labels.

Definition at line 220 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().

double Isis::ProcessImportPds::p_scaleFactor [private]

The scale factor found in the PDS projection labels.

Definition at line 218 of file ProcessImportPds.h.

Referenced by ExtractPdsProjection(), and TranslatePdsProjection().


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