1 #ifndef PhotometricFunction_h     2 #define PhotometricFunction_h    26   template<
typename T> 
inline T 
MIN( 
const T &A, 
const T &B ) {
    46   template<
typename T> 
inline T 
MAX( 
const T &A, 
const T &B ) {
    78       virtual double compute( 
const double &line, 
const double &sample, 
int band = 1, 
bool useDem = 
false);
    79       virtual double photometry( 
double i, 
double e, 
double g, 
int band = 1 ) 
const = 0;
   101       double m_minimumIncidenceAngle; 
   102       double m_maximumIncidenceAngle; 
   103       double m_minimumEmissionAngle;  
   104       double m_maximumEmissionAngle;  
   105       double m_minimumPhaseAngle;     
   106       double m_maximumPhaseAngle;     
   125       T 
ConfKey( 
const DbProfile &conf, 
const QString &keyname, 
const T &defval, 
int index = 0 )
 const {
   126         if (!conf.
exists(keyname)) {
   129         if (conf.
count(keyname) < index) {
   132          return conf.
value(keyname, index);
 T ConfKey(const DbProfile &conf, const QString &keyname, const T &defval, int index=0) const
Helper template to initialize parameters. 
 
Contains more than one keyword-value pair. 
 
virtual double maximumIncidenceAngle()
Accessor method to access maximum incidence angle. 
 
int count(const QString &key) const
Report number of values in keyword. 
 
virtual double minimumPhaseAngle()
Accessor method to access minimum phase angle. 
 
bool exists(const QString &key) const
Checks for the existance of a keyword. 
 
A DbProfile is a container for access parameters to a database. 
 
virtual ~PhotometricFunction()
Destructor. 
 
virtual double compute(const double &line, const double &sample, int band=1, bool useDem=false)
Computes Photometric function from cube attributes. 
 
virtual void setMinimumIncidenceAngle(double angle)
Mutator function to set minimum incidence angle. 
 
An abstract implementation of the photometric function. 
 
QString value(const QString &key, int nth=0) const
Returns the specified value for the given keyword. 
 
virtual void setMaximumIncidenceAngle(double angle)
Mutator function to set maximum incidence angle. 
 
virtual void setMaximumEmissionAngle(double angle)
Mutator function to set maximum emission angle. 
 
static QString algorithmName(const PvlObject &pvl)
Finds the name of the algorithm defined in a PVL object. 
 
virtual double minimumIncidenceAngle()
Accessor method to access minimum incidence angle. 
 
virtual void setMinimumEmissionAngle(double angle)
Mutator function to set minimum emission angle. 
 
virtual double maximumEmissionAngle()
Accessor method to access maximum emission angle. 
 
virtual double maximumPhaseAngle()
Accessor method to access maximum phase angle. 
 
Namespace for ISIS/Bullet specific routines. 
 
void setCamera(Camera *cam)
Set the camera used to compute photometric angles. 
 
virtual void setMinimumPhaseAngle(double angle)
Mutator function to set minimum phase angle. 
 
PhotometricFunction(PvlObject &pvl, Cube &cube, bool useCamera)
Construct Photometric function from Pvl and Cube file. 
 
virtual void setMaximumPhaseAngle(double angle)
Mutator function to set maximum phase angle. 
 
Contains Pvl Groups and Pvl Objects. 
 
virtual double minimumEmissionAngle()
Accessor method to access minimum emission angle. 
 
T MIN(const T &A, const T &B)
Implement templatized MIN fumnction. 
 
IO Handler for Isis Cubes. 
 
T MAX(const T &A, const T &B)
Implement templatized MAX fumnction.