31 NS_OBJECT_ENSURE_REGISTERED(SatRayleighConf);
32 NS_LOG_COMPONENT_DEFINE(
"SatRayleighConf");
47 {{10, 10}, {10, 10}, {10, 10}}};
52 static TypeId tid = TypeId(
"ns3::SatRayleighConf")
54 .AddConstructor<SatRayleighConf>()
55 .AddAttribute(
"ElevationCount",
56 "Number of elevation sets in the Markov model.",
59 MakeUintegerChecker<uint32_t>())
60 .AddAttribute(
"StateCount",
61 "Number of states in the Markov model.",
64 MakeUintegerChecker<uint32_t>());
72 NS_LOG_FUNCTION(
this);
76 std::vector<std::vector<double>> states;
80 std::vector<double> parameters;
86 states.push_back(parameters);
94 NS_LOG_FUNCTION(
this);
99 std::vector<std::vector<double>>
102 NS_LOG_FUNCTION(
this << set);
106 NS_FATAL_ERROR(
"SatRayleighConf::GetParameters - Invalid set");
115 NS_LOG_FUNCTION(
this);
129 NS_LOG_FUNCTION(
this);
132 SatBaseFaderConf::DoDispose();
Base class for fader configuration classes.
A configuration class for three state Markov model.
static const uint32_t DEFAULT_ELEVATION_COUNT
Default elevation count.
static const uint32_t DEFAULT_STATE_COUNT
Default state count.
uint32_t m_stateCount
Number of states.
std::vector< std::vector< double > > GetParameters(uint32_t set)
Function for getting the Rayleigh parameters.
SatRayleighConf()
Constructor.
static const uint32_t DEFAULT_RAYLEIGH_PARAMETER_COUNT
Default Rayleigh parameter count.
void Reset()
Clear used variables.
std::vector< std::vector< std::vector< double > > > m_rayleighParameters
Rayleigh model parameters.
static TypeId GetTypeId(void)
NS-3 function for type id.
uint32_t m_elevationCount
Number of parameters sets.
void DoDispose()
Do needed dispose actions.
~SatRayleighConf()
Destructor.
SatArqSequenceNumber is handling the sequence numbers for the ARQ process.
static const double g_RayleighParameters[SatMarkovConf::DEFAULT_ELEVATION_COUNT][SatMarkovConf::DEFAULT_STATE_COUNT][SatRayleighConf::DEFAULT_RAYLEIGH_PARAMETER_COUNT]