|
WSF
|
A class that represents an optical sensor (IR or visible). More...
#include <SOSM_Sensor.hpp>


Public Member Functions | |
| SOSM_Sensor (SOSM_Manager *aManagerPtr) | |
| SOSM_Sensor (const SOSM_Sensor &aSrc) | |
| ~SOSM_Sensor () override | |
| SOSM_Sensor & | operator= (const SOSM_Sensor &)=delete |
| SOSM_Sensor * | Clone () const |
| bool | Initialize () override |
| void | InputComplete () override |
| bool | ProcessInput (UtInput &aInput) override |
| void | ComputeIntegratedAtmosphericData (SOSM_Interaction &aInteraction, float &aBackgroundRadiance_xR, float &aForegroundRadiance_xR, float &aTransmittance_xR) |
| void | ComputeIntegratedTargetData (SOSM_Target *aTargetPtr, SOSM_Interaction &aInteraction, float &aTargetIntensity_xR, float &aProjectedArea) |
| float | ComputeProbabilityOfDetection (float aTargetIrradiance, SOSM_Interaction &aInteraction) const |
| float | ComputeTargetIrradiance (SOSM_Target *aTargetPtr, SOSM_Interaction &aInteraction) |
| SOSM_Atmosphere * | GetAtmosphere () const |
| float | GetAverageResponse () const |
| Return the average response. | |
| float | GetDetectionThresholdAboveHorizon () const |
| float | GetDetectionThresholdBelowHorizon () const |
| std::vector< float > | GetIntegrationFactor () const |
| Get the integration factor (delta wavelength * response) used for spectral integration. | |
| float | GetNoiseEquivalentIrradiance () const |
| void | GetResponseCurve (std::vector< float > &aWavelength, std::vector< float > &aResponse) const |
| void | GetWavelengthLimits (float &aLowerWavelength, float &aUpperWavelength) const |
| Return the wavelength limits (in microns) of the sensor. | |
| SOSM_Manager * | GetManager () const |
| Public Member Functions inherited from SOSM_CoreBase | |
| SOSM_CoreBase () | |
| SOSM_CoreBase (const SOSM_CoreBase &aSrc) | |
| ~SOSM_CoreBase () override | |
| SOSM_CoreBase & | operator= (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. | |
| 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) |
Static Public Member Functions | |
| static double | ComputeProbabilityOfDetection (double aSignal, double aNoise, double aThreshold) |
| Static Public Member Functions inherited from SOSM_SpectralObject | |
| static std::string | StatusString (Status aStatus) |
Additional Inherited Members | |
| Public Types inherited from SOSM_SpectralObject | |
| enum | Status { cOK = 0 , cINCOMPATIBLE_INCREMENTS , cINCOMPATIBLE_ORIGINS } |
| Return value from 'UnionOf'. More... | |
| 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 |
A class that represents an optical sensor (IR or visible).
| SOSM_Sensor::SOSM_Sensor | ( | SOSM_Manager * | aManagerPtr | ) |
References SOSM_CoreBase::SOSM_CoreBase().
Referenced by Clone(), operator=(), and SOSM_Sensor().
| SOSM_Sensor::SOSM_Sensor | ( | const SOSM_Sensor & | aSrc | ) |
References SOSM_CoreBase::SOSM_CoreBase(), and SOSM_Sensor().
|
override |
| SOSM_Sensor * SOSM_Sensor::Clone | ( | ) | const |
References SOSM_Sensor().
Referenced by SOSM_Manager::AllocateSensor(), and operator=().
| void SOSM_Sensor::ComputeIntegratedAtmosphericData | ( | SOSM_Interaction & | aInteraction, |
| float & | aBackgroundRadiance_xR, | ||
| float & | aForegroundRadiance_xR, | ||
| float & | aTransmittance_xR ) |
Compute the integrated atmospheric data for the 'fast' detection model.
This method computes the response-biased transmittance and radiance for the specified interaction.
| aInteraction | [input] The interaction object representing the sensor and target state. |
| aBackgroundRadiance_xR | [output] The integrated background radiance. |
| aForegroundRadiance_xR | [output] The integrated foreground radiance. |
| aTransmittance_xR | [output] The integrated foreground transmittance. |
References SOSM_SpectralObject::Count().
Referenced by operator=().
| void SOSM_Sensor::ComputeIntegratedTargetData | ( | SOSM_Target * | aTargetPtr, |
| SOSM_Interaction & | aInteraction, | ||
| float & | aTargetIntensity_xR, | ||
| float & | aProjectedArea ) |
Compute the integrated target data for the 'fast' detection model.
| aTargetPtr | [input] The target under consideration. |
| aInteraction | [input] The interaction object representing the sensor and target state. |
| aTargetIntensity_xR | [output] The integrated, response-biased radiant intensity. (W/sr) |
| aProjectedArea | [output] The projected area (cm^2) |
References SOSM_Target::ComputeRadiantIntensity(), and SOSM_SpectralObject::Count().
Referenced by operator=().
|
static |
Compute the probability of detection.
| aSignal | [input] The effective target irradiance (CEI) (W/cm^2) |
| aNoise | [input] The noise equivalent irradiance (NEI) (W/cm^2) |
| aThreshold | [input] The signal-to-noise ratio required to generate a Pd = 0.5. |
| float SOSM_Sensor::ComputeProbabilityOfDetection | ( | float | aTargetIrradiance, |
| SOSM_Interaction & | aInteraction ) const |
Compute the probability of detection for a specified target irradiance.
| aTargetIrradiance | [input] The irradiance on the sensor while looking at the target of interest. (W/cm^2) |
| aInteraction | [input] The interaction object representing the sensor and target state. |
References ComputeProbabilityOfDetection(), SOSM_Interaction::GetAbsoluteTargetElevation(), SOSM_Interaction::GetSensorAltitude(), SOSM_Interaction::GetSensorToTargetAspect(), SOSM_Interaction::mDetectionThreshold, SOSM_Interaction::mInstallationAdjustment, and SOSM_Interaction::mNoiseEquivalentIrradiance.
Referenced by ComputeProbabilityOfDetection(), and operator=().
| float SOSM_Sensor::ComputeTargetIrradiance | ( | SOSM_Target * | aTargetPtr, |
| SOSM_Interaction & | aInteraction ) |
Compute the irradiance on the sensor when looking at the specified target.
| aTargetPtr | [input] The target under consideration. |
| aInteraction | [input] The interaction object representing the sensor and target state. |
References SOSM_Target::ComputeRadiantIntensity(), SOSM_SpectralObject::Count(), SOSM_Interaction::GetSlantRange(), SOSM_SpectralObject::Increment(), SOSM_Interaction::mBackgroundRadiance, SOSM_Interaction::mBackgroundScaleFactor, SOSM_Interaction::mBodyArea, SOSM_Interaction::mBodyIntensity, SOSM_Interaction::mContrastIntensity, SOSM_Interaction::mForegroundRadiance, SOSM_Interaction::mForegroundScaleFactor, SOSM_Interaction::mPlumeArea, SOSM_Interaction::mPlumeIntensity, SOSM_Interaction::mTransmittance, SOSM_Interaction::mTransmittanceScaleFactor, SOSM_SpectralObject::Origin(), SOSM_Interaction::Print(), SOSM_Utility::PrintSpectralVector(), and SOSM_Target::SelectState().
Referenced by operator=().
|
inline |
Return the pointer to the atmosphere object.
|
inline |
Return the average response.
|
inline |
Return the detection threshold for targets above the horizon.
Referenced by WsfSOSM_Sensor::SOSM_Mode::Initialize().
|
inline |
Return the detection threshold for targets below the horizon.
|
inline |
Get the integration factor (delta wavelength * response) used for spectral integration.
|
inline |
|
inline |
Return the 'Noise Equivalent Irradiance' (NEI).
Referenced by WsfSOSM_Sensor::SOSM_Mode::Initialize().
| void SOSM_Sensor::GetResponseCurve | ( | std::vector< float > & | aWavelength, |
| std::vector< float > & | aResponse ) const |
Return the response curve of the sensor.
| aWavelength | [output] The vector of wavelengths (in microns). |
| aResponse | [output] The vector of unitless response [0..1] for each wavelength |
|
inline |
Return the wavelength limits (in microns) of the sensor.
|
overridevirtual |
Reimplemented from SOSM_CoreBase.
References SOSM_Selector::cINTERSECTS, SOSM_SpectralObject::Count(), SOSM_SpectralObject::Increment(), ok, SOSM_SpectralObject::Origin(), and SOSM_Selector::StatusString().
Referenced by SOSM_Manager::AllocateSensor().
|
overridevirtual |
Reimplemented from SOSM_CoreBase.
References SOSM_SpectralObject::DefineSpectralLimits().
|
delete |
|
overridevirtual |
Reimplemented from SOSM_CoreBase.