12#ifndef WSFACOUSTICSENSOR_HPP
13#define WSFACOUSTICSENSOR_HPP
15#include "wsf_mil_export.h"
19#include "UtAtmosphere.hpp"
52 void Update(
double aSimTime)
override;
82 void Deselect(
double aSimTime)
override;
83 void Select(
double aSimTime)
override;
88 const double aDoppler = 0.0);
UtStringId WsfStringId
WsfStringId – the same thing as UtStringId.
Definition WsfStringId.hpp:23
WsfEM_Antenna mAntenna
Definition WsfAcousticSensor.hpp:100
AcousticMode & operator=(const AcousticMode &)=delete
double ComputeProbabilityOfDetection(double aSignal, double aNoise, double aThreshold)
Definition WsfAcousticSensor.cpp:686
bool ProcessInput(UtInput &aInput) override
Definition WsfAcousticSensor.cpp:371
WsfStringId cDEFAULT_ID
Definition WsfAcousticSensor.hpp:119
double ApplyFilterWeighting(int aBand, WsfPlatform *aTargetPtr=nullptr, const int aFlag=0, const double aDoppler=0.0)
Definition WsfAcousticSensor.cpp:584
AcousticTypes mSensorType
Definition WsfAcousticSensor.hpp:111
WsfEM_Rcvr mRcvr
Definition WsfAcousticSensor.hpp:101
double AtmosphericAttenuation(const WsfSensorResult &aResult, double aFreq)
Definition WsfAcousticSensor.cpp:648
UtAtmosphere mAtmosphere
Atmosphere model.
Definition WsfAcousticSensor.hpp:109
double GroundEffectAttenuation(WsfSensorResult *aResult, const double aFreq, const int aBandIndex)
Definition WsfAcousticSensor.cpp:761
double ComputeDopplerTerm(const WsfSensorResult &aResult)
Definition WsfAcousticSensor.cpp:983
void Select(double aSimTime) override
Definition WsfAcousticSensor.cpp:638
void Deselect(double aSimTime) override
Definition WsfAcousticSensor.cpp:631
std::vector< double > mEffectiveFilterBandwidth
Array of effective filter bandwidths for each sensor.
Definition WsfAcousticSensor.hpp:114
WsfMode * Clone() const override
Create an exact duplicate of this mode.
Definition WsfAcousticSensor.cpp:302
void ComputeIncidenceAngle(WsfSensorResult *aResultPtr, double &aAngle, double &aRange, double *aLoc)
Definition WsfAcousticSensor.cpp:921
bool mVerbose
Definition WsfAcousticSensor.hpp:106
WsfStringId mBackgroundNoiseStateId
Pointer to the background noise state.
Definition WsfAcousticSensor.hpp:122
WsfAcousticSignature * mThresholdPtr
Pointer to the threshold table.
Definition WsfAcousticSensor.hpp:117
bool Initialize(double aSimTime) override
Definition WsfAcousticSensor.cpp:314
bool AttemptToDetect(double aSimTime, WsfPlatform *aTargetPtr, Settings &aSettings, WsfSensorResult &aResult) override
Definition WsfAcousticSensor.cpp:420
wsf::Terrain * mTerrainPtr
Pointer to terrain.
Definition WsfAcousticSensor.hpp:125
AcousticMode(WsfScenario &aScenario)
Definition WsfAcousticSensor.cpp:268
double mDetectionThreshold
Signal-To-Noise required for detection.
Definition WsfAcousticSensor.hpp:104
SharedData * mSharePtr
Definition WsfAcousticSensor.hpp:133
WsfAcousticSensor & operator=(const WsfAcousticSensor &)=delete
std::vector< AcousticMode * > mAcousticModeList
The sensor-specific list of modes (not valid until Initialize is called).
Definition WsfAcousticSensor.hpp:129
AcousticTypes
Definition WsfAcousticSensor.hpp:44
@ cACOUSTIC_NARROW
Definition WsfAcousticSensor.hpp:46
@ cACOUSTIC_HUMAN
Definition WsfAcousticSensor.hpp:45
@ cACOUSTIC_WIDE
Definition WsfAcousticSensor.hpp:47
static int GetCenterFreqSize()
Definition WsfAcousticSensor.hpp:57
static double GetCenterFreq(int aIndex)
Definition WsfAcousticSensor.hpp:59
static const double mCenterFrequency[24]
Definition WsfAcousticSensor.hpp:63
WsfAcousticSensor(WsfScenario &aScenario)
Definition WsfAcousticSensor.cpp:184
An object that represents the acoustic signature of a platform.
Definition WsfAcousticSignature.hpp:24
Definition WsfEM_Antenna.hpp:49
Definition WsfEM_Rcvr.hpp:68
WsfMode()
Definition WsfMode.cpp:15
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
WsfSensorMode()
Definition WsfSensorMode.cpp:47
Definition WsfSensorResult.hpp:27
Definition WsfSensor.hpp:133
Definition WsfSensor.hpp:92
void Update(double aSimTime) override
Definition WsfSensor.cpp:497
virtual WsfEM_Rcvr & GetEM_Rcvr(size_t aIndex) const
Definition WsfSensor.cpp:660
WsfSensor(const WsfScenario &aScenario)
Definition WsfSensor.cpp:52
virtual size_t GetEM_RcvrCount() const
Definition WsfSensor.cpp:646
WsfSensor * Clone() const override=0
bool Initialize(double aSimTime) override
Definition WsfSensor.cpp:255
Definition WsfTerrain.hpp:336
Function definitions for those who need run-time access to the version.
Definition WsfComm.cpp:32