WSF
SOSM_SimpleAtmosphere Class Reference

#include <SOSM_SimpleAtmosphere.hpp>

Inheritance diagram for SOSM_SimpleAtmosphere:
Collaboration diagram for SOSM_SimpleAtmosphere:

Public Member Functions

 SOSM_SimpleAtmosphere (const UtAtmosphere &aAtmosphere)
SOSM_AtmosphereClone () const override
 A virtual copy constructor.
bool ProcessInput (UtInput &aInput) override
void ComputeAtmosphereData (const SOSM_Selector &aSelector, SOSM_Interaction &aInteraction, std::vector< float > &aBackgroundRadiance, std::vector< float > &aForegroundRadiance, std::vector< float > &aForegroundTransmittance) override
void GetSamplePoints (std::vector< float > &aAltValues, std::vector< float > &aElValues, std::vector< float > &aRangeValues) override
 Get the sample points to be used for fast detection mode table generation.
double ComputeSimpleTransmittance (double aAttenuationPerMeter, double aHeightMSL_1, double aHeightMSL_2, double aGroundRange)
double GetAttenuation () const
UtAtmosphere & GetAtmosphere ()
Public Member Functions inherited from SOSM_Atmosphere
 SOSM_Atmosphere ()
 Constructor.
 SOSM_Atmosphere (const SOSM_Atmosphere &aSrc)
 Copy constructor.
Public Member Functions inherited from SOSM_CoreBase
 SOSM_CoreBase ()
 SOSM_CoreBase (const SOSM_CoreBase &aSrc)
 ~SOSM_CoreBase () override
SOSM_CoreBaseoperator= (const SOSM_CoreBase &)=delete
std::string GetTypeName () const
 Return the user-specified type name of the object.
void SetTypeName (const std::string &aTypeName)
 Set the user-specified type name of the object.
double GetModificationTime () const
 Return when the source file from which the object was recreated was last modified.
void SetModificationTime (double aModificationTime)
 Set the last modification time of the object.
void UpdateModificationTime (double aModificationTime)
std::string GetCachePrefix () const
 Return the name of the cache prefix for this object.
void SetCachePrefix (const std::string &aCachePrefix)
 Set the cache prefix (subdirectory) to be used for creating cache files of this object.
virtual bool Initialize ()
virtual void InputComplete ()
Public Member Functions inherited from SOSM_SpectralObject
 SOSM_SpectralObject ()
 SOSM_SpectralObject (float aOrigin, float aIncrement, int aCount)
virtual ~SOSM_SpectralObject ()
float Origin () const
 Return the origin (wavenumber, cm-1) of the first sample point.
float Increment () const
int Count () const
void DefineSpectralLimits (float aOrigin, float aIncrement, int aCount)
void DefineSpectralLimits (const SOSM_SpectralObject &aSource)
bool Equals (const SOSM_SpectralObject &aRhs) const
 Do this object and another object have the same spectral limits?
Status Union (const SOSM_SpectralObject &aObject)
Status Union (const SOSM_SpectralObject &aObject1, const SOSM_SpectralObject &aObject2)
float LowerWavelength () const
float UpperWavelength () const
void SetWavelengthLimits (float aLowerWavelength, float aUpperWavelength)

Additional Inherited Members

Public Types inherited from SOSM_SpectralObject
enum  Status { cOK = 0 , cINCOMPATIBLE_INCREMENTS , cINCOMPATIBLE_ORIGINS }
 Return value from 'UnionOf'. More...
Static Public Member Functions inherited from SOSM_SpectralObject
static std::string StatusString (Status aStatus)
Protected Attributes inherited from SOSM_CoreBase
double mModificationTime
 When the file was last modified.
std::string mTypeName
 The type name of the object.
std::string mCachePrefix

Constructor & Destructor Documentation

◆ SOSM_SimpleAtmosphere()

SOSM_SimpleAtmosphere::SOSM_SimpleAtmosphere ( const UtAtmosphere & aAtmosphere)

References SOSM_Atmosphere::SOSM_Atmosphere().

Referenced by Clone().

Member Function Documentation

◆ Clone()

SOSM_Atmosphere * SOSM_SimpleAtmosphere::Clone ( ) const
overridevirtual

A virtual copy constructor.

Implements SOSM_Atmosphere.

References SOSM_Atmosphere::SOSM_Atmosphere(), and SOSM_SimpleAtmosphere().

◆ ComputeAtmosphereData()

void SOSM_SimpleAtmosphere::ComputeAtmosphereData ( const SOSM_Selector & aSelector,
SOSM_Interaction & aInteraction,
std::vector< float > & aBackgroundRadiance,
std::vector< float > & aForegroundRadiance,
std::vector< float > & aForegroundTransmittance )
overridevirtual

Compute the atmospheric data

The background is considered space or ground. The foreground is considered the target.

Parameters
aSelector[input] The selector which defines the spectral overlap between this and the sensor.
aInteraction[input] The interaction object representing the sensor and target state.
aBackgroundRadiance[output] The background radiance (W/cm^2/sr/um)
aForegroundRadiance[output] The foreground radiance (W/cm^2/sr/um)
aForegroundTransmittance[output] The foreground transmittance (unitless - [0..1])

Implements SOSM_Atmosphere.

References SOSM_Selector::InitializeOutput().

◆ ComputeSimpleTransmittance()

double SOSM_SimpleAtmosphere::ComputeSimpleTransmittance ( double aAttenuationPerMeter,
double aHeightMSL_1,
double aHeightMSL_2,
double aGroundRange )

Determine the simplistic transmittance along a path.

Parameters
aAttenuationPerMeter[input] The attenuation per meter at sea level.
aHeightMSL_1[input] The height MSL of the first object (meters)
aHeightMSL_2[input] The height MSL of the second object (meters)
aGroundRange[input] The ground range between the objects (meters)
Returns
The transmittance in the range [0, 1]

◆ GetAtmosphere()

UtAtmosphere & SOSM_SimpleAtmosphere::GetAtmosphere ( )
inline

◆ GetAttenuation()

double SOSM_SimpleAtmosphere::GetAttenuation ( ) const
inline

◆ GetSamplePoints()

void SOSM_SimpleAtmosphere::GetSamplePoints ( std::vector< float > & aAltValues,
std::vector< float > & aElValues,
std::vector< float > & aRangeValues )
overridevirtual

Get the sample points to be used for fast detection mode table generation.

Implements SOSM_Atmosphere.

◆ ProcessInput()

bool SOSM_SimpleAtmosphere::ProcessInput ( UtInput & aInput)
overridevirtual

Reimplemented from SOSM_CoreBase.

References SOSM_CoreBase::ProcessInput().


The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved