USGS

Isis 3.0 Application Source Code Reference

Home

Isis Namespace Reference


Detailed Description

Sets up calibration parameters for Viking images.

This class sets up necessary calibration parameters for a given Viking input image. It is a helper class for the vikcal application.

If you would like to see CalParameters being used in implementation, see vikcal.cpp

Author:
2005-05-18 Elizabeth Ribelin


Classes

class  LineScanCameraRotation
 Obtain SPICE rotation information for a body. More...
class  PixelOffset
 Obtain rotation angles for a line scan camera pixel offsets. More...
struct  DeleteObject
 A very useful, typesafe way to delete pointers in STL container Courtesy Scott Meyers, "Effective STL", Item 7, pg 37-40. More...
class  BandGeometry
 Collect Band geometry. More...
class  Column
 Format ascii tables. More...
class  WriteTabular
 Format ascii tables. More...
class  FtpGet
class  HttpGet
struct  PointData
 Container for point collection. More...
class  ControlByRow
 Collector for Control points within the same row for analysis. More...
class  SlitherTransform
class  WarpTransform
class  DarkCurrent
 Compute Cassini ISS dark current subtraction. More...
class  DbMapVar
class  DbMapParameter
class  DbMapReference
class  DbMapConstant
class  DbMapKeySpec
class  DbMapFunction
class  DbPvlMap
class  DbPvlMapInsert
class  DbResource
struct  DbColumn
struct  DbStatus
class  DbResult
class  DbPvlTable
class  MapFunctor
class  Now
class  UtcToJd
class  JdToUtc
class  GeomFromText
class  ToFormalCase
class  IsEqual
class  Numeric
class  NullIf
class  ToMultiPolygon
struct  FunctionFactory
 Template function to add all defined functions. More...
struct  Resolver
class  DarkModelPixel
class  KernelSet
class  Kernels
 Determine SPICE kernels defined in an ISIS file. More...
class  MdisEdrKeys
 MDIS EDR keyword container class. More...
class  MdisGeometry
 Computes all MDIS Geometric keywords. More...
class  SpiceManager
 Load/Unload SPICE kernels defined in an ISIS file. More...
class  Component
 Component manages HiRISE calibration vectors from various sources. More...
class  DarkSubtractComp
 Computes a complex dark subtraction component. More...
class  DriftBuffer
 Loads and processes Buffer calibration data. More...
class  DriftCorrect
 Computes non-linear lsq fit of HiRISE Drift. More...
class  FlatFieldComp
 Za Module - Computes flat field correction for each sample (column). More...
class  GainVLineComp
 Computes a gain correction for each line. More...
class  HiBlob
 BLOB extraction class. More...
class  HiCalData
 Container for HiRISE calibration data. More...
class  HiHistory
class  HiLineTimeEqn
 Compute HiRISE line times. More...
class  LowPassFilterComp
 Compute a low pass filter from a Component class content. More...
class  NonLinearLSQ
 NonLinearLSQ Computes a fit using a Levenberg-Marquardt algorithm. More...
class  OffsetCorrect
 Loads and processes Reverse Clock calibration data. More...
class  SplineFillComp
 Compute a low pass filter from a Component class content. More...
class  TempGainCorrect
 Zt Module - Applies temperature-dependant gain correction (column). More...
class  HiJitCube
 HiRISE cube detailer for jitter characterization. More...
class  CalParameters

Namespaces

namespace  Mer

Typedefs

typedef CollectorMap< std::string,
std::string, NoCaseStringCompare > 
Variables
 Define the container for the variable key references.
typedef CollectorMap< std::string,
MapFunctor *, NoCaseStringCompare > 
FunctionList
 Define a function container for other classes to use.
typedef TNT::Array1D< double > HiVector
 1-D Buffer
typedef TNT::Array2D< double > HiMatrix
 2-D buffer
typedef TNT::Array1D< double > HiVector
 1-D Buffer
typedef TNT::Array2D< double > HiMatrix
 2-D buffer

Enumerations

enum  DbMapType {
  D_Undefined = 0, D_Constant, D_Integer, D_Real,
  D_String, D_DQString, D_SQString, D_Variable,
  D_Literal, D_Reference, D_Keyword, D_Index,
  D_KeySpec, D_Function, D_FuncName, D_FuncArg
}

Functions

double SetRound (double value, const int precision)
 Round values to specified precision.
template<typename T>
double ToDouble (const T &value)
 Helper function to convert values to doubles.
template<typename T>
std::string ToString (const T &value)
 Helper function to convert values to strings.
PvlKeyword ValidateKey (const std::string keyname, const double &value, const std::string &unit="")
 Checks value of key, produces appropriate value.
PvlKeyword ValidateKey (const std::string keyname, PvlKeyword &key, const std::string &unit="")
 Checks proper value of a NULLed keyword.
double DegToRad (const double ang)
 Returns degree to radian conversion factor.
double RadToDeg (const double ang)
 Returns radians to degrees conversion factor.
bool PointLess (const PointData &p1, const PointData &p2)
 Less than test for Control point group.
bool PointEqual (const PointData &p1, const PointData &p2)
 Equality test for Control point group.
bool loadNaifTiming ()
 Load required NAIF kernels required for timing needs.
FunctionList getFunctionList ()
 Function to create a list of all available functions.
void clearFunctions (FunctionList &funcs)
template<typename T>
int ToInteger (const T &value)
 Helper function to convert values to Integers.
template<typename T>
MIN (const T &A, const T &B)
template<typename T>
MAX (const T &A, const T &B)
std::string Quote (const std::string &value)
std::vector< double > loadWACCSV (const std::string &fname, int filter, int nvalues, bool header=true, int skip=0)
std::vector< double > loadNACCSV (const std::string &fname, int nvalues, bool header=true, int skip=0)
std::vector< double > loadResponsivity (bool isNAC, bool binned, int filter, std::string &fname)
std::vector< double > loadSolarIrr (bool isNAC, bool binned, int filter, std::string &fname)
double loadSmearComponent (bool isNAC, int filter, std::string &fname)
int ValidCount (const HiVector &v)
 Counts number of valid pixels in vector.
int InValidCount (const HiVector &v)
 Counts number of invalid pixels in vector.
int CpmmToCcd (int cpmm)
 Convert HiRISE Cpmm number to Ccd number.
std::string CcdToFilter (int ccd)
 Convert HiRISE Ccd number to string filter name.
HiMatrix cropLines (const HiMatrix &m, int sline, int eline)
 Crop specified lines from a buffer.
HiMatrix cropSamples (const HiMatrix &m, int ssamp, int esamp)
 Crop specified samples from a buffer.
HiVector averageLines (const HiMatrix &m, int sline=0, int eline=-1)
 Reduces by averaging specified lines from a buffer.
HiVector averageSamples (const HiMatrix &m, int ssamp=0, int esamp=-1)
 Reduces by averaging specified samples from a buffer.
template<typename T>
ConfKey (const DbProfile &conf, const std::string &keyname, const T &defval, int index=0)
 Find a keyword in a profile using default for non-existant keywords.
bool IsEqual (const std::string &v1, const std::string &v2="TRUE")
 Shortened string equality test.
bool IsTrueValue (const DbProfile &prof, const std::string &key, const std::string &value="TRUE")
 Determines if the keyword value is the expected value.
bool SkipModule (const DbProfile &prof)
 Checks profile flag to skip the current Module.
HiMatrix appendLines (const HiMatrix &top, const HiMatrix &bottom)
HiMatrix appendSamples (const HiMatrix &left, const HiMatrix &right)
double HiTempEqn (const double temperature, const double napcm2=2.0, const double px=12.0)
 Implements (classic) HiRISE temperature equation.
HiVector rebin (const HiVector &v, int n)
 Rebins a vector to a different size.
void RemoveHiBlobs (Pvl &label)
 Deletes HiRISE specific BLOBS from cube file.

Variables

int npSamp0 [] = {0,1971,3964,5963,7970,7971,7971,9975,9976,9976,11981,13986,15984,17982}
int npSamps [] = {2021,2043,2048,2052,2055,2053,2053,2053,2054,2055,2051,2049,2043,2018}
bool sampinit = false
bool originst


Typedef Documentation

typedef CollectorMap<std::string, std::string, NoCaseStringCompare> Variables

Define the container for the variable key references.

Definition at line 34 of file DbPvlMapUtil.h.

typedef CollectorMap<std::string,MapFunctor *,NoCaseStringCompare> FunctionList

Define a function container for other classes to use.

Definition at line 340 of file MapFunctor.h.

typedef TNT::Array1D<double> HiVector

1-D Buffer

Definition at line 38 of file HiCalTypes.h.

typedef TNT::Array2D<double> HiMatrix

2-D buffer

Definition at line 39 of file HiCalTypes.h.

typedef TNT::Array1D<double> HiVector

1-D Buffer

Definition at line 38 of file HiCalTypes.h.

typedef TNT::Array2D<double> HiMatrix

2-D buffer

Definition at line 39 of file HiCalTypes.h.


Enumeration Type Documentation

enum DbMapType

Enumerator:
D_Undefined 
D_Constant 
D_Integer 
D_Real 
D_String 
D_DQString 
D_SQString 
D_Variable 
D_Literal 
D_Reference 
D_Keyword 
D_Index 
D_KeySpec 
D_Function 
D_FuncName 
D_FuncArg 

Definition at line 36 of file DbMapParameter.h.


Function Documentation

double Isis::SetRound ( double  value,
const int  precision 
) [inline]

Round values to specified precision.

Parameters:
value Value to round
precision Precision to round value to
Returns:
double Rounded value

Definition at line 63 of file CamTools.cpp.

double ToDouble ( const T &  value  ) 

Helper function to convert values to doubles.

Parameters:
T Type of value to convert
value Value to convert
Returns:
double Converted value

Definition at line 77 of file CamTools.cpp.

std::string ToString ( const T &  value  ) 

Helper function to convert values to strings.

Parameters:
T Type of value to convert
value Value to convert
Returns:
string Converted value

Definition at line 89 of file CamTools.cpp.

PvlKeyword Isis::ValidateKey ( const std::string  keyname,
const double &  value,
const std::string &  unit = "" 
) [inline]

Checks value of key, produces appropriate value.

This function checks the value of the keyword for specialness and will create the appropriate keyword if it is special.

Parameters:
keyname Name of keyword to create
value Keyword value
unit Optional unit qualifer with value
Returns:
PvlKeyword Returns newly created keyword/value

Definition at line 52 of file CamTools.h.

PvlKeyword Isis::ValidateKey ( const std::string  keyname,
PvlKeyword &  key,
const std::string &  unit = "" 
) [inline]

Checks proper value of a NULLed keyword.

If the keyword is a NULL keyword, ensure it has proper value.

Parameters:
keyname Name of keyword to create
key Keyword/value set
unit Optional unit qualifer with value
Returns:
PvlKeyword Returns newly created keyword/value

Definition at line 75 of file CamTools.h.

double Isis::DegToRad ( const double  ang  )  [inline]

Returns degree to radian conversion factor.

Definition at line 87 of file CamTools.h.

double Isis::RadToDeg ( const double  ang  )  [inline]

Returns radians to degrees conversion factor.

Definition at line 89 of file CamTools.h.

bool Isis::PointLess ( const PointData &  p1,
const PointData &  p2 
) [inline]

Less than test for Control point group.

This function tests the reference line numbers and returns true if the first point reference line is less than the second.

Parameters:
p1 First PointData set to compare
p2 Second PointData set to compare
Returns:
bool If first point reference line is less than the second

Definition at line 54 of file ControlByRow.h.

bool Isis::PointEqual ( const PointData &  p1,
const PointData &  p2 
) [inline]

Equality test for Control point group.

This function tests the reference line numbers for equality and returns true if the line references are equivalent, according to an approximation using an epsilon of 1.0e-6.

Parameters:
p1 First PointData set to compare
p2 Second PointData set to compare
Returns:
bool If the reference point lines are (approximately) equivalent

Definition at line 70 of file ControlByRow.h.

static void loadNaifTiming (  )  [inline]

Load required NAIF kernels required for timing needs.

This method maintains the loading of kernels for MESSENGER timing and planetary body ephemerides to support time and relative positions of planet bodies.

Definition at line 85 of file MapFunctor.h.

FunctionList Isis::getFunctionList (  )  [inline]

Function to create a list of all available functions.

Returns:
FunctionList New list that must be managed by caller

Definition at line 387 of file MapFunctor.h.

void Isis::clearFunctions ( FunctionList funcs  )  [inline]

Definition at line 392 of file MapFunctor.h.

int ToInteger ( const T &  value  ) 

Helper function to convert values to Integers.

Parameters:
T Type of value to convert
value Value to convert
Returns:
int Converted value

Definition at line 46 of file MdisCalUtils.h.

T MIN ( const T &  A,
const T &  B 
) [inline]

Definition at line 50 of file MdisCalUtils.h.

T MAX ( const T &  A,
const T &  B 
) [inline]

Definition at line 54 of file MdisCalUtils.h.

std::string Isis::Quote ( const std::string &  value  )  [inline]

Definition at line 58 of file MdisCalUtils.h.

std::vector<double> Isis::loadWACCSV ( const std::string &  fname,
int  filter,
int  nvalues,
bool  header = true,
int  skip = 0 
)

Definition at line 136 of file MdisCalUtils.h.

std::vector<double> Isis::loadNACCSV ( const std::string &  fname,
int  nvalues,
bool  header = true,
int  skip = 0 
)

Definition at line 167 of file MdisCalUtils.h.

std::vector<double> Isis::loadResponsivity ( bool  isNAC,
bool  binned,
int  filter,
std::string &  fname 
)

Definition at line 188 of file MdisCalUtils.h.

std::vector<double> Isis::loadSolarIrr ( bool  isNAC,
bool  binned,
int  filter,
std::string &  fname 
)

Definition at line 213 of file MdisCalUtils.h.

double Isis::loadSmearComponent ( bool  isNAC,
int  filter,
std::string &  fname 
)

Definition at line 233 of file MdisCalUtils.h.

int ValidCount ( const HiVector v  )  [inline]

Counts number of valid pixels in vector.

Parameters:
v Vector to inspect
Returns:
int Number valid pixels in vector

Definition at line 59 of file HiCalUtil.h.

int InValidCount ( const HiVector v  )  [inline]

Counts number of invalid pixels in vector.

Parameters:
v Vector to inspect
Returns:
int Number invalid (special) pixels in vector

Definition at line 72 of file HiCalUtil.h.

int CpmmToCcd ( int  cpmm  )  [inline]

Convert HiRISE Cpmm number to Ccd number.

Parameters:
cpmm Cpmm number

Definition at line 85 of file HiCalUtil.h.

std::string CcdToFilter ( int  ccd  )  [inline]

Convert HiRISE Ccd number to string filter name.

Parameters:
ccd Ccd number of device

Definition at line 100 of file HiCalUtil.h.

HiMatrix cropLines ( const HiMatrix m,
int  sline,
int  eline 
) [inline]

Crop specified lines from a buffer.

This function extracts lines from a buffer and returns a new buffer with the extracted lines.

Parameters:
m Buffer to extract lines from
sline Starting line number (first line is 0)
eline Last line to extract
Returns:
HiMatrix Buffer containing cropped lines

Definition at line 125 of file HiCalUtil.h.

HiMatrix cropSamples ( const HiMatrix m,
int  ssamp,
int  esamp 
) [inline]

Crop specified samples from a buffer.

This function extracts samples from a buffer and returns a new buffer with the extracted samples.

Parameters:
m Buffer to extract samples from
ssamp Startling sample (first sample 0)
esamp Ending sample to extract
Returns:
HiMatrix Buffer with cropped samples

Definition at line 148 of file HiCalUtil.h.

HiVector averageLines ( const HiMatrix m,
int  sline = 0,
int  eline = -1 
) [inline]

Reduces by averaging specified lines from a buffer.

This function produces a vector from a 2-D buffer of averaged lines at each vertical sample location

Parameters:
m Buffer to reduce
sline Starting line number (first line is 0)
eline Last line to average (-1 means use all lines)
Returns:
HiVector Buffer containing averaged lines

Definition at line 171 of file HiCalUtil.h.

HiVector averageSamples ( const HiMatrix m,
int  ssamp = 0,
int  esamp = -1 
) [inline]

Reduces by averaging specified samples from a buffer.

This function produces a vector from a 2-D buffer of averaged samples at each horizontal line location

Parameters:
m Buffer to reduce
ssamp Starting sample number (first sample is 0)
esamp Last sample to average (-1 means use all samples)
Returns:
HiVector Buffer containing averaged samples

Definition at line 196 of file HiCalUtil.h.

T ConfKey ( const DbProfile &  conf,
const std::string &  keyname,
const T &  defval,
int  index = 0 
)

Find a keyword in a profile using default for non-existant keywords.

This template function will extract keyword values from a profile and provide the values at the indicated index. If the keyword does not exist or the indicated value at index, the provided default will be used instead.

Definition at line 219 of file HiCalUtil.h.

bool IsEqual ( const std::string &  v1,
const std::string &  v2 = "TRUE" 
) [inline]

Shortened string equality test.

Parameters:
v1 First value
v2 Second value
Returns:
bool True if they are equal w/o regard to case

Definition at line 272 of file HiCalUtil.h.

bool IsTrueValue ( const DbProfile &  prof,
const std::string &  key,
const std::string &  value = "TRUE" 
) [inline]

Determines if the keyword value is the expected value.

This function checks the existance of a keyword in a profile, extracts the first value and tests it for equivelance to the expected value. Note this test is case insensitive.

Parameters:
prof Profile to find the expected keyword in
key Name of keyword in profile to test
value Value to test for in keyword
Returns:
bool Returns true only if the keyword exists in the profile and it is the value expected.

Definition at line 290 of file HiCalUtil.h.

bool SkipModule ( const DbProfile &  prof  )  [inline]

Checks profile flag to skip the current Module.

This function looks for the keyword Debug::SkipModule and checks its value. True is returned if the value is TRUE (case insensentive).

Parameters:
prof Module profile from config file
Returns:
bool True if the value of the Debug::SkipModule keyword is TRUE, otherwise it returns false for all other values.

Definition at line 309 of file HiCalUtil.h.

HiMatrix appendLines ( const HiMatrix top,
const HiMatrix bottom 
) [inline]

Definition at line 314 of file HiCalUtil.h.

HiMatrix appendSamples ( const HiMatrix left,
const HiMatrix right 
) [inline]

Definition at line 341 of file HiCalUtil.h.

double HiTempEqn ( const double  temperature,
const double  napcm2 = 2.0,
const double  px = 12.0 
) [inline]

Implements (classic) HiRISE temperature equation.

This function computes the dark current temperature and returns the results in electrons/sec/pixel.

Parameters:
temperature Temperature (typically of the FPGA)
napcm2 Dark current for silicone diodes (nano-ampres/cm^2)
px Pixel size in microns
Returns:
double Dark current temperature (electrons/sec/pixel)

Definition at line 405 of file HiCalUtil.h.

HiVector rebin ( const HiVector v,
int  n 
) [inline]

Rebins a vector to a different size.

This function can rebin to both larger and smaller sizes. It fits the data to a cubic spline and then computes the value at the rebin pixel index. One advantage to this approach is that on input, special pixels are ignored - on output there will never be special pixels unless there are not enough points to conpute the cubic spline on which case this function throws an exception.

Parameters:
v Input vector to rebin
n Size of the new output vector
Returns:
HiVector
History:
2008-11-05 Jeannie Walldren Replaced references to DataInterp class with NumericalApproximation.

Definition at line 430 of file HiCalUtil.h.

void RemoveHiBlobs ( Pvl &  label  )  [inline]

Deletes HiRISE specific BLOBS from cube file.

Ths function removes only the HiRISE specific

Parameters:
label Input label associated with file from which to remove the HiRISE blobs

Definition at line 459 of file HiCalUtil.h.


Variable Documentation

int npSamp0[] = {0,1971,3964,5963,7970,7971,7971,9975,9976,9976,11981,13986,15984,17982}

Definition at line 46 of file HiJitCube.cpp.

int npSamps[] = {2021,2043,2048,2052,2055,2053,2053,2053,2054,2055,2051,2049,2043,2018}

Definition at line 47 of file HiJitCube.cpp.

bool sampinit = false

Definition at line 48 of file HiJitCube.cpp.

bool originst

Definition at line 49 of file HiJitCube.cpp.