Isis Developer Reference
Isis::NormModel Class Referenceabstract

#include <NormModel.h>

Inheritance diagram for Isis::NormModel:
Inheritance graph
Collaboration diagram for Isis::NormModel:
Collaboration graph

Public Member Functions

 NormModel (Pvl &pvl, PhotoModel &pmodel)
 Create a NormModel object. More...
 
 NormModel (Pvl &pvl, PhotoModel &pmodel, AtmosModel &amodel)
 Create a NormModel object. More...
 
virtual ~NormModel ()
 
std::string AlgorithmName () const
 Return normalization algorithm name. More...
 
void CalcNrmAlbedo (double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base)
 Calculate the albedo normalization. More...
 
void CalcNrmAlbedo (double pha, double inc, double ema, double deminc, double demema, double dn, double &albedo, double &mult, double &base)
 Calculate the normalization albedo using photometric angle information. More...
 
virtual void SetNormWavelength (double wavelength)
 Set the wavelength parameter. More...
 

Protected Member Functions

virtual void NormModelAlgorithm (double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base)=0
 
virtual void NormModelAlgorithm (double pha, double inc, double ema, double deminc, double demema, double dn, double &albedo, double &mult, double &base)=0
 
void SetAlgorithmName (std::string name)
 
PhotoModelGetPhotoModel ()
 
AtmosModelGetAtmosModel ()
 

Protected Attributes

double p_normWavelength
 

Detailed Description

Author
1998-12-21 Randy Kirk

Constructor & Destructor Documentation

◆ NormModel() [1/2]

Isis::NormModel::NormModel ( Pvl pvl,
PhotoModel pmodel 
)

Create a NormModel object.

Because this is a pure virtual class you can not create a NormModel class directly. Instead, see the NormModelFactory class.

Parameters
pvlA pvl object containing a valid NormModel specification
See also
normalizationModels.doc

References p_normWavelength.

◆ NormModel() [2/2]

Isis::NormModel::NormModel ( Pvl pvl,
PhotoModel pmodel,
AtmosModel amodel 
)

Create a NormModel object.

Because this is a pure virtual class you can not create a NormModel class directly. Instead, see the NormModelFactory class.

Parameters
pvlA pvl object containing a valid NormModel specification
See also
normalizationModels.doc

References p_normWavelength.

◆ ~NormModel()

virtual Isis::NormModel::~NormModel ( )
inlinevirtual

Member Function Documentation

◆ AlgorithmName()

std::string Isis::NormModel::AlgorithmName ( ) const
inline

Return normalization algorithm name.

◆ CalcNrmAlbedo() [1/2]

void Isis::NormModel::CalcNrmAlbedo ( double  pha,
double  inc,
double  ema,
double  deminc,
double  demema,
double  dn,
double &  albedo,
double &  mult,
double &  base 
)

Calculate the normalization albedo using photometric angle information.

Parameters
phainput phase angle
incinput incidence angle for ellipsoid
emainput emission angle for ellipsoid
demincinput incidence angle for dem
dememainput emission angle for dem
dninput albedo value

References NormModelAlgorithm().

◆ CalcNrmAlbedo() [2/2]

void Isis::NormModel::CalcNrmAlbedo ( double  pha,
double  inc,
double  ema,
double  dn,
double &  albedo,
double &  mult,
double &  base 
)

Calculate the albedo normalization.

Calculate the normalization albedo using photometric angle information.

Parameters
phainput phase angle
incinput incidence angle
emainput emission angle
dninput albedo value

References NormModelAlgorithm().

Referenced by Isis::Photometry::Compute().

◆ GetAtmosModel()

◆ GetPhotoModel()

◆ NormModelAlgorithm() [1/2]

virtual void Isis::NormModel::NormModelAlgorithm ( double  pha,
double  inc,
double  ema,
double  deminc,
double  demema,
double  dn,
double &  albedo,
double &  mult,
double &  base 
)
protectedpure virtual

◆ NormModelAlgorithm() [2/2]

virtual void Isis::NormModel::NormModelAlgorithm ( double  pha,
double  inc,
double  ema,
double  dn,
double &  albedo,
double &  mult,
double &  base 
)
protectedpure virtual

◆ SetAlgorithmName()

void Isis::NormModel::SetAlgorithmName ( std::string  name)
inlineprotected

◆ SetNormWavelength()

void Isis::NormModel::SetNormWavelength ( double  wavelength)
virtual

Set the wavelength parameter.

This value is obtained from the BandBin Center keyword of the image. This must be set by the application.

References p_normWavelength.

Referenced by Isis::Photometry::SetPhotomWl().

Member Data Documentation

◆ p_normWavelength

double Isis::NormModel::p_normWavelength
protected

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