WSF
WsfEM_RF_Type1Attenuation.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI//REL TO USA ONLY
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2003-2015 The Boeing Company. All rights reserved.
7//
8// The use, dissemination or disclosure of data in this file is subject to
9// limitation or restriction. See accompanying README and LICENSE for details.
10// ****************************************************************************
11
12#ifndef WSFEM_RF_TYPE1ATTENUATION_HPP
13#define WSFEM_RF_TYPE1ATTENUATION_HPP
14
15#include <string>
16
17#include "WsfEM_Attenuation.hpp"
18
27
29{
30public:
33 ~WsfEM_RF_Type1Attenuation() override = default;
35
36 static WsfEM_Attenuation* ObjectFactory(const std::string& aTypeName);
37
38 WsfEM_Attenuation* Clone() const override;
39
40 bool Initialize(WsfEM_XmtrRcvr* aXmtrRcvrPtr) override;
41
42protected:
43 double ComputeAttenuationFactorP(double aRange, double aElevation, double aAltitude, double aFrequency) override;
44
45private:
46 double ComputeAltitude(double aRange, double aElevation);
47
48 double ComputeAtmosphericAttenuation(double aRange, double aElevation, double aFrequency);
49
50 double ComputeCloudAttenuation(double aRange, double aElevation, double aFrequency);
51
52 double ComputeDustAttenuation(double aRange, double aElevation, double aFrequency);
53
54 double ComputeRainAttenuation(double aRange, double aElevation, double aFrequency);
55
56
57 const WsfScenario* mScenarioPtr;
58};
59
60#endif
WsfEM_Attenuation()
Definition WsfEM_Attenuation.cpp:25
WsfEM_RF_Type1Attenuation()
Definition WsfEM_RF_Type1Attenuation.cpp:125
~WsfEM_RF_Type1Attenuation() override=default
bool Initialize(WsfEM_XmtrRcvr *aXmtrRcvrPtr) override
Definition WsfEM_RF_Type1Attenuation.cpp:487
static WsfEM_Attenuation * ObjectFactory(const std::string &aTypeName)
Definition WsfEM_RF_Type1Attenuation.cpp:141
double ComputeAttenuationFactorP(double aRange, double aElevation, double aAltitude, double aFrequency) override
Definition WsfEM_RF_Type1Attenuation.cpp:159
WsfEM_Attenuation * Clone() const override
Definition WsfEM_RF_Type1Attenuation.cpp:152
WsfEM_RF_Type1Attenuation & operator=(const WsfEM_RF_Type1Attenuation &)=delete
Definition WsfEM_XmtrRcvr.hpp:42
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
Copyrights Multiple, All Rights Reserved