|
WSF
|
#include <WsfEnvironment.hpp>
Classes | |
| class | WindAltitudeTable |
| A table to get wind direction and speed as a function of altitude above MSL. More... | |
Public Types | |
| enum | LandCover { cGENERAL = 0 , cURBAN = 1 , cAGRICULTURAL = 2 , cRANGELAND_HERBACEOUS = 3 , cRANGELAND_SHRUB = 4 , cFOREST_DECIDUOUS = 5 , cFOREST_CONIFEROUS = 6 , cFOREST_MIXED = 7 , cFOREST_CLEARCUT = 8 , cFOREST_BLOCKCUT = 9 , cWETLAND_FORESTED = 10 , cWETLAND_NONFORESTED = 11 , cBARREN = 12 , cWATER = 13 , cNUM_LAND_COVERS = 14 } |
| enum | LandFormation { cINVALID = 0 , cLEVEL = 1 , cINCLINED = 2 , cUNDULATING = 3 , cROLLING = 4 , cHUMMOCKY = 5 , cRIDGED = 6 , cMODERATELY_STEEP = 7 , cSTEEP = 8 , cBROKEN = 9 , cNUM_LAND_FORMS = 10 } |
| enum | SeaState { cCALM_GLASSY = 0 , cCALM_RIPPLED = 1 , cSMOOTH = 2 , cSLIGHT = 3 , cMODERATE = 4 , cROUGH = 5 , cVERY_ROUGH = 6 , cNUM_SEA_STATES = 7 } |
| typedef std::function< LandCover(double, double)> | GetLandCoverFunction |
Public Member Functions | |
| WsfEnvironment (WsfScenario &aScenario) | |
| ~WsfEnvironment () | |
| Destructor. | |
| WsfEnvironment (const WsfEnvironment &)=delete | |
| WsfEnvironment & | operator= (const WsfEnvironment &)=delete |
| bool | ProcessInput (UtInput &aInput) |
| LandCover | GetLandCover () const |
| Global Land Cover / Land Form methods. | |
| LandFormation | GetLandFormation () const |
| LandCover | GetLandCover (double aLat, double aLon) const |
| LandFormation | GetLandFormation (double aLat, double aLon) const |
| void | SetLandCoverStrategy (const GetLandCoverFunction &aFunction) |
| SeaState | GetSeaState () const |
| double | GetWindSpeed () const |
| void | SetWindSpeed (double aSpeed) |
| double | GetWindDirection () const |
| void | SetWindDirection (double aDirection) |
| void | GetWind (double aLat, double aLon, double aAlt, double &aWindHeading, double &aWindSpeed) |
| void | GetCloudLevel (double &aLowerAlt, double &aUpperAlt) const |
| bool | LOS_ClearOfClouds (const double aEmissionPointWCS[3], const double aTargetPointWCS[3]) const |
| bool | LOS_AdjustedClearOfClouds (const double aEmissionPointWCS[3], double aTargetPointWCS[3]) const |
| double | GetCloudWaterDensity () const |
| double | GetRainUpperLevel () const |
| double | GetRainRate () const |
| double | GetDustStormVisibility () const |
| void | CreateWindAltitudeTable () |
| WindAltitudeTable * | GetWindAltitudeTablePtr () |
| WsfNoiseCloudTypes & | GetNoiseCloudTypes () const |
| bool | UsingPolarOffsetAngles () const |
| const ut::CentralPoint & | GetCentralPoint () const |
| const ut::CentralBody & | GetCentralBody () const |
| const ut::CentralBodyEllipsoid & | GetEllipsoid () const |
| void | GetPolarOffsetAngles (double &aPolarOffsetAngleX, double &aPolarOffsetAngleY) const |
WsfEnvironment is a singleton that is responsible for maintaining the data that describes the overall environment. In the future, this singleton will be removed an objects created on a regional basis to describe the environment for that region
| typedef std::function<LandCover(double, double)> WsfEnvironment::GetLandCoverFunction |
Land Cover.
| WsfEnvironment::WsfEnvironment | ( | WsfScenario & | aScenario | ) |
References cCALM_GLASSY, cGENERAL, and cLEVEL.
Referenced by operator=(), and WsfEnvironment().
| WsfEnvironment::~WsfEnvironment | ( | ) |
Destructor.
|
delete |
References WsfEnvironment().
| void WsfEnvironment::CreateWindAltitudeTable | ( | ) |
|
inline |
|
inline |
Referenced by WsfPlatform::Initialize().
|
inline |
Get the lower and upper altitudes of the clouds.
| aLowerAlt | The altitude at which the clouds begin (m). |
| aUpperAlt | The altitude at which the clouds end (m). |
|
inline |
Get the density of water in the clouds.
|
inline |
| const ut::CentralBodyEllipsoid & WsfEnvironment::GetEllipsoid | ( | ) | const |
References GetCentralBody().
|
inline |
Global Land Cover / Land Form methods.
Referenced by WsfEM_ALARM_Clutter::ComputeClutterPower(), WsfEM_ALARM_Propagation::ComputePropagationFactor(), WsfEM_ALARM_Terrain::get_land_cover(), WsfRadarMTD_SignalProcessor::Initialize(), WsfRadarMTI_SignalProcessor::Initialize(), and WsfRadarPD_SignalProcessor::Initialize().
| WsfEnvironment::LandCover WsfEnvironment::GetLandCover | ( | double | aLat, |
| double | aLon ) const |
GeoSpecific land cover routine using WsfLandUse. This is currently just a stub that returns the static land cover.
|
inline |
| WsfEnvironment::LandFormation WsfEnvironment::GetLandFormation | ( | double | aLat, |
| double | aLon ) const |
GeoSpecific land formation routine using WsfLandUse. This is currently just a stub that returns the static land formation.
|
inline |
| void WsfEnvironment::GetPolarOffsetAngles | ( | double & | aPolarOffsetAngleX, |
| double & | aPolarOffsetAngleY ) const |
|
inline |
Get the rate of rain fall.
|
inline |
Get the altitude above which it is no longer raining.
|
inline |
| void WsfEnvironment::GetWind | ( | double | aLat, |
| double | aLon, | ||
| double | aAlt, | ||
| double & | aWindHeading, | ||
| double & | aWindSpeed ) |
Returns wind heading and speed in local NED relative to the lat/lon/alt provided. aLat and aLon are placeholders and are not used in the initial implementation. aWindHeading is direction wind air is going 'to'. (Not direction coming 'from'.) aWindHeading is radians, and Pi wind (180 deg) blows from north to south.
|
inline |
|
inline |
Referenced by WsfNoiseCloud::Initialize().
|
inline |
| bool WsfEnvironment::LOS_AdjustedClearOfClouds | ( | const double | aEmissionPointWCS[3], |
| double | aTargetPointWCS[3] ) const |
Check for clear line of sight (in the context of Environmental cloud layers only).
| aEmissionPointWCS | Point of emission |
| aTargetPointWCS | Desired point of termination of the emission. Will be adjusted to terminate upon the nearest cloud layer surface. (If currently in clouds, will be placed at 10m range.) |
| bool WsfEnvironment::LOS_ClearOfClouds | ( | const double | aEmissionPointWCS[3], |
| const double | aTargetPointWCS[3] ) const |
Check for clear line of sight (in the context of Environmental cloud layers only).
| aEmissionPointWCS | Point of emission |
| aTargetPointWCS | Desired point of termination of the emission. |
|
delete |
References ProcessInput(), and WsfEnvironment().
| bool WsfEnvironment::ProcessInput | ( | UtInput & | aInput | ) |
See if the supplied command is one of mine.
| aInput | The input stream. |
References cAGRICULTURAL, cBARREN, cBROKEN, cFOREST_BLOCKCUT, cFOREST_CLEARCUT, cFOREST_CONIFEROUS, cFOREST_DECIDUOUS, cFOREST_MIXED, cGENERAL, cHUMMOCKY, cINCLINED, cLEVEL, cMODERATELY_STEEP, cRANGELAND_HERBACEOUS, cRANGELAND_SHRUB, cRIDGED, cROLLING, cSTEEP, cUNDULATING, cURBAN, cWATER, cWETLAND_FORESTED, cWETLAND_NONFORESTED, GetCentralBody(), and UsingPolarOffsetAngles().
Referenced by operator=().
| void WsfEnvironment::SetLandCoverStrategy | ( | const GetLandCoverFunction & | aFunction | ) |
|
inline |
|
inline |
| bool WsfEnvironment::UsingPolarOffsetAngles | ( | ) | const |
Referenced by ProcessInput().