Isis Developer Reference
Shade.h
Go to the documentation of this file.
1 #ifndef Shade_h
2 #define Shade_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 
10 #include "NormModel.h"
11 
12 namespace Isis {
13  class Pvl;
14 
29  class Shade : public NormModel {
30  public:
31  Shade(Pvl &pvl, PhotoModel &pmodel);
32  virtual ~Shade() {};
33 
35  void SetNormPharef(const double pharef);
36  void SetNormIncref(const double incref);
37  void SetNormEmaref(const double emaref);
38  void SetNormAlbedo(const double albedo);
39 
40  protected:
41  virtual void NormModelAlgorithm(double pha, double inc, double ema,
42  double dn, double &albedo, double &mult, double &base) {};
43  virtual void NormModelAlgorithm(double pha, double inc, double ema,
44  double deminc, double demema, double dn, double &albedo,
45  double &mult, double &base);
46 
47  private:
48  double p_normPharef;
49  double p_normIncref;
50  double p_normEmaref;
51  double p_normAlbedo;
52 
53  };
54 };
55 
56 #endif
ShadePlugin
Isis::NormModel * ShadePlugin(Isis::Pvl &pvl, Isis::PhotoModel &pmodel)
Definition: Shade.cpp:129
Isis::Shade
Definition: Shade.h:29
Isis::PhotoModel
Definition: PhotoModel.h:41
Isis::Shade::~Shade
virtual ~Shade()
Definition: Shade.h:32
Isis::IException::Unknown
@ Unknown
A type of error that cannot be classified as any of the other error types.
Definition: IException.h:118
Isis::PvlContainer::hasKeyword
bool hasKeyword(const QString &name) const
Check to see if a keyword exists.
Definition: PvlContainer.cpp:159
Isis::PhotoModel::CalcSurfAlbedo
double CalcSurfAlbedo(double pha, double inc, double ema)
Calculate the surface brightness using photometric angle information.
Definition: PhotoModel.cpp:177
Isis::Pvl
Container for cube-like labels.
Definition: Pvl.h:119
Isis::Shade::SetNormAlbedo
void SetNormAlbedo(const double albedo)
Set the normalization function parameter.
Definition: Shade.cpp:124
Isis::PvlObject::Traverse
@ Traverse
Search child objects.
Definition: PvlObject.h:158
Shade.h
Isis::Shade::SetNormIncref
void SetNormIncref(const double incref)
Set the normalization function parameter.
Definition: Shade.cpp:88
Isis::NormModel
Definition: NormModel.h:36
Isis::PvlGroup
Contains multiple PvlContainers.
Definition: PvlGroup.h:41
_FILEINFO_
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
Isis::PvlObject::findObject
PvlObjectIterator findObject(const QString &name, PvlObjectIterator beg, PvlObjectIterator end)
Find the index of object with a specified name, between two indexes.
Definition: PvlObject.h:274
NormModel.h
Isis::IException
Isis exception class.
Definition: IException.h:91
Isis::Shade::Shade
Shade(Pvl &pvl, PhotoModel &pmodel)
Definition: Shade.cpp:12
Isis::PhotoModel::SetStandardConditions
virtual void SetStandardConditions(bool standard)
Sets whether standard conditions will be used.
Definition: PhotoModel.cpp:50
IException.h
Isis::Shade::NormModelAlgorithm
virtual void NormModelAlgorithm(double pha, double inc, double ema, double dn, double &albedo, double &mult, double &base)
Definition: Shade.h:41
Isis::Shade::SetNormPharef
void SetNormPharef(const double pharef)
Set parameters needed for albedo normalization.
Definition: Shade.cpp:70
Isis::NormModel::GetPhotoModel
PhotoModel * GetPhotoModel()
Definition: NormModel.h:66
Isis::IString
Adds specific functionality to C++ strings.
Definition: IString.h:165
Isis::Shade::SetNormEmaref
void SetNormEmaref(const double emaref)
Set the normalization function parameter.
Definition: Shade.cpp:106
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::IException::User
@ User
A type of error that could only have occurred due to a mistake on the user's part (e....
Definition: IException.h:126