22 #include "ns3/core-module.h"
23 #include "ns3/satellite-module.h"
37 NS_LOG_COMPONENT_DEFINE(
"sat-loo-example");
40 main(
int argc,
char* argv[])
43 LogComponentEnable(
"sat-loo-example", LOG_LEVEL_INFO);
44 LogComponentEnable(
"SatLooModel", LOG_LEVEL_INFO);
47 Config::SetDefault(
"ns3::SatEnvVariables::SimulationCampaignName", StringValue(
"example-loo"));
48 Config::SetDefault(
"ns3::SatEnvVariables::SimulationTag", StringValue(
""));
49 Config::SetDefault(
"ns3::SatEnvVariables::EnableSimulationOutputOverwrite", BooleanValue(
true));
52 Ptr<SatLooConf> looConf = CreateObject<SatLooConf>();
55 Ptr<SatLooModel> looFaderLineOfSight = CreateObject<SatLooModel>(looConf, 3, 0, 0);
56 Ptr<SatLooModel> looFaderLightShadowing = CreateObject<SatLooModel>(looConf, 3, 0, 1);
57 Ptr<SatLooModel> looFaderHeavyShadowing = CreateObject<SatLooModel>(looConf, 3, 0, 2);
60 for (uint32_t i = 0; i < 1000; i++)
62 Simulator::Schedule(Time(300000 + i * 500000),
65 Simulator::Schedule(Time(500000 + i * 500000),
67 looFaderLightShadowing);
68 Simulator::Schedule(Time(700000 + i * 500000),
70 looFaderHeavyShadowing);
double GetChannelGainDb()
Function for returning the channel gain in dB.
SatArqSequenceNumber is handling the sequence numbers for the ARQ process.