USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::AtmosModelFactory Class Reference

This class is used to create AtmosModel objects. More...

#include <AtmosModelFactory.h>

Collaboration diagram for Isis::AtmosModelFactory:
Collaboration graph

Static Public Member Functions

static AtmosModelCreate (Pvl &pvl, PhotoModel &pmodel)
 Create an AtmosModel object using a PVL specification.
 

Private Member Functions

 AtmosModelFactory ()
 Constructor (its private so you can't use it).
 
 ~AtmosModelFactory ()
 Destroys the AtmosModelFactory.
 

Detailed Description

This class is used to create AtmosModel objects.

Typically, applications *which perform atmospheric corrections need to use different types of *atmospheric function such as Isotropic1, Anisotropic1, HapkeAtm1, etc. If this *factory is given a Pvl object which contains an AtmosModel definition, it will *create that specific instance of the class. For example,

Object = AtmosphericModel Group = Algorithm
AstName/Name = Isotropic1 ...
EndGroup ...
*EndObject End

Will create an Isotropic 1st order object (which is derived from AtmosModel). The simplest way to create an AtmosModel class is to use the static Create method

Pvl p("myatmosmodel.pvl");
AtmosModel *ar = AtmosModelFactory::Create(p);
Author
2006-01-23 Janet Barrett
History:

2008-06-18 Christopher Austin - Fixed documentation errors

2011-08-25 Sharmila Prasad - Use 'AstName' for Model name to be able to be used in combo Gui which requires unique parameter name. Maintaining 'Name' to support existing apps using this keyword.

Definition at line 65 of file AtmosModelFactory.h.

Constructor & Destructor Documentation

Isis::AtmosModelFactory::AtmosModelFactory ( )
inlineprivate

Constructor (its private so you can't use it).

Use the Create Method instead.

Definition at line 74 of file AtmosModelFactory.h.

Isis::AtmosModelFactory::~AtmosModelFactory ( )
inlineprivate

Destroys the AtmosModelFactory.

Definition at line 77 of file AtmosModelFactory.h.

Member Function Documentation

AtmosModel * Isis::AtmosModelFactory::Create ( Pvl pvl,
PhotoModel pmodel 
)
static

Create an AtmosModel object using a PVL specification.

An example of the PVL required for this is:

Object = AtmosphericModel
Group = Algorithm
# Use 'AtmName' instead of 'Name' if using the Gui combo box
# for unique Pvl keyword in DefFile
AtmName/Name = Isotropic1
Tau = 0.7
Tauref = 0.0
Wha = 0.5
Hnorm = 0.003
Nulneg = NO
EndGroup
EndObject

There are many other options that can be set via the pvl and are described in other documentation (see below).

Parameters
pvlThe pvl object containing the specification
pmodelThe PhotoModel objects contining the data
Returns
A pointer to the new AtmosModel
See Also
atmosphericModels.doc

Definition at line 60 of file AtmosModelFactory.cpp.

References _FILEINFO_, Isis::PvlObject::findObject(), Isis::Plugin::GetPlugin(), Isis::PvlContainer::hasKeyword(), Isis::Pvl::read(), Isis::PvlObject::Traverse, and Isis::IException::User.

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


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