30 NS_OBJECT_ENSURE_REGISTERED(SatRayleighConf);
31 NS_LOG_COMPONENT_DEFINE(
"SatRayleighConf");
46 {{10, 10}, {10, 10}, {10, 10}}};
51 static TypeId tid = TypeId(
"ns3::SatRayleighConf")
53 .AddConstructor<SatRayleighConf>()
54 .AddAttribute(
"ElevationCount",
55 "Number of elevation sets in the Markov model.",
58 MakeUintegerChecker<uint32_t>())
59 .AddAttribute(
"StateCount",
60 "Number of states in the Markov model.",
63 MakeUintegerChecker<uint32_t>());
71 NS_LOG_FUNCTION(
this);
75 std::vector<std::vector<double>> states;
79 std::vector<double> parameters;
85 states.push_back(parameters);
93 NS_LOG_FUNCTION(
this);
98 std::vector<std::vector<double>>
101 NS_LOG_FUNCTION(
this << set);
105 NS_FATAL_ERROR(
"SatRayleighConf::GetParameters - Invalid set");
114 NS_LOG_FUNCTION(
this);
128 NS_LOG_FUNCTION(
this);
131 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]