12#ifndef SOSM_SENSORTARGET_HPP
13#define SOSM_SENSORTARGET_HPP
15#include "sosm_export.h"
57 bool Initialize(
const std::string& aSensorType,
const std::string& aTargetType);
Definition SOSM_Interaction.hpp:46
A singleton class that manages SOSM data.
Definition SOSM_Manager.hpp:32
Definition SOSM_ScalarTable2D.hpp:25
Definition SOSM_ScalarTable3D.hpp:27
Definition SOSM_SensorTarget.hpp:73
SnrAtmPair(SOSM_Manager *aManagerPtr)
Definition SOSM_SensorTarget.cpp:559
SOSM_ScalarTable2D * mBackgroundRadiancePtr
Definition SOSM_SensorTarget.hpp:77
SOSM_ScalarTable3D * mForegroundRadiancePtr
Definition SOSM_SensorTarget.hpp:78
SOSM_ScalarTable3D * mTransmittancePtr
Definition SOSM_SensorTarget.hpp:79
Definition SOSM_SensorTarget.hpp:85
std::vector< SOSM_ScalarTable2D * > mProjectedAreaPtrs
Definition SOSM_SensorTarget.hpp:89
std::vector< SOSM_ScalarTable2D * > mRadiantIntensityPtrs
Definition SOSM_SensorTarget.hpp:90
SnrTgtPair(SOSM_Target *aTargetPtr)
Definition SOSM_SensorTarget.cpp:575
SnrTgtPair * CreateOrLoadSensorTargetTables()
Definition SOSM_SensorTarget.cpp:358
std::map< std::string, SnrTgtPair * > SnrTgtTableMap
The key is '<snr-type>_<tgt_type>_<tgt_state>'.
Definition SOSM_SensorTarget.hpp:116
SOSM_Sensor * mSensorPtr
Definition SOSM_SensorTarget.hpp:105
static SnrTgtTableMap sSnrTgtTables
Definition SOSM_SensorTarget.hpp:119
SnrAtmPair * CreateOrLoadSensorAtmosphereTables()
Definition SOSM_SensorTarget.cpp:202
SnrAtmPair * mSnrAtmPtr
Definition SOSM_SensorTarget.hpp:109
SOSM_SensorTarget(const SOSM_SensorTarget &aSrc)=delete
Copy constructor declared but not defined to prevent use.
SOSM_Target * mTargetPtr
Definition SOSM_SensorTarget.hpp:106
SOSM_Sensor * GetSensor() const
Definition SOSM_SensorTarget.hpp:63
bool mUsingTables
Definition SOSM_SensorTarget.hpp:107
SOSM_SensorTarget operator=(const SOSM_SensorTarget &aRhs)=delete
Assignment operator declared but not defined to prevent use.
SOSM_Manager * mManagerPtr
Definition SOSM_SensorTarget.hpp:104
SOSM_Target * GetTarget() const
Definition SOSM_SensorTarget.hpp:65
float ComputeTargetIrradiance(SOSM_Interaction &aInteraction) const
Definition SOSM_SensorTarget.cpp:103
SnrTgtPair * mSnrTgtPtr
Definition SOSM_SensorTarget.hpp:110
static SnrAtmTableMap sSnrAtmTables
Definition SOSM_SensorTarget.hpp:118
SOSM_SensorTarget(SOSM_Manager *aManagerPtr)
Definition SOSM_SensorTarget.cpp:35
std::map< std::string, SnrAtmPair * > SnrAtmTableMap
The key is '<snr-type>_<atm_type>'.
Definition SOSM_SensorTarget.hpp:113
float ComputeProbabilityOfDetection(float aTargetIrradiance, SOSM_Interaction &aInteraction) const
Definition SOSM_SensorTarget.cpp:196
bool Initialize(const std::string &aSensorType, const std::string &aTargetType)
Definition SOSM_SensorTarget.cpp:54
void LoadSensorTargetTables()
Load precomputed sensor-target specific tables if permitted.
Definition SOSM_SensorTarget.cpp:511
SOSM_Manager * GetManager() const
Definition SOSM_SensorTarget.hpp:67
A class that represents an optical sensor (IR or visible).
Definition SOSM_Sensor.hpp:30
Abstract base class that represents a target.
Definition SOSM_Target.hpp:31