- wifi.SetRemoteStationManager("ns3::ConstantRateWifiManager",
- "ControlMode", ns3::StringValue("HtMcs0"),
- "DataMode", ns3::StringValue("HtMcs" + std::to_string(mcs_value)));
- wifiPhy.SetChannel(wifiChannel.Create());
- wifiPhy.Set("Antennas", ns3::UintegerValue(nss_value));
- wifiPhy.Set("MaxSupportedTxSpatialStreams", ns3::UintegerValue(nss_value));
- wifiPhy.Set("MaxSupportedRxSpatialStreams", ns3::UintegerValue(nss_value));
- wifiMac.SetType("ns3::ApWifiMac",
- "Ssid", ns3::SsidValue(ssid));
-
- mobility.SetMobilityModel("ns3::ConstantPositionMobilityModel");
- ns3::Ptr<ns3::ListPositionAllocator> positionAllocS = ns3::CreateObject<ns3::ListPositionAllocator>();
- positionAllocS->Add(ns3::Vector(0, 0, 255 * 100 * number_of_networks + 100 * number_of_links));
-
- ns3::NetDeviceContainer netDevices;
- NetPointNs3* access_point_netpoint_ns3 = wifizone->get_access_point()->extension<NetPointNs3>();
-
- ns3::Ptr<ns3::Node> access_point_ns3_node = access_point_netpoint_ns3->ns3_node_;
- ns3::NodeContainer nodes = {access_point_ns3_node};
- std::vector<NetPointNs3*> hosts_netpoints = {access_point_netpoint_ns3};
- netDevices.Add(wifi.Install(wifiPhy, wifiMac,access_point_ns3_node));
-
- wifiMac.SetType ("ns3::StaWifiMac",
- "Ssid", ns3::SsidValue(ssid),
- "ActiveProbing", ns3::BooleanValue(false));
-
- NetPointNs3* station_netpoint_ns3 = nullptr;
- ns3::Ptr<ns3::Node> station_ns3_node = nullptr;
- double distance;
- double angle = 0;
- int nb_stations = wifizone->get_all_hosts().size() - 1;
- double step = 2 * M_PI / nb_stations;
- for (auto station_host : wifizone->get_all_hosts()) {
- station_netpoint_ns3 = station_host->get_netpoint()->extension<NetPointNs3>();
- if (station_netpoint_ns3 == access_point_netpoint_ns3)
- continue;
- hosts_netpoints.push_back(station_netpoint_ns3);
- distance = station_host->get_property("wifi_distance") ? atof(station_host->get_property("wifi_distance")) : 10.0;
- positionAllocS->Add(ns3::Vector(distance * std::cos(angle), distance * std::sin(angle), 255 * 100 * number_of_networks + 100 * number_of_links));
- angle += step;
- station_ns3_node = station_netpoint_ns3->ns3_node_;
- nodes.Add(station_ns3_node);
- netDevices.Add(wifi.Install(wifiPhy, wifiMac, station_ns3_node));
- }
+ wifi.SetRemoteStationManager("ns3::ConstantRateWifiManager", "ControlMode", ns3::StringValue("HtMcs0"), "DataMode",
+ ns3::StringValue("HtMcs" + std::to_string(mcs_value)));
+ wifiPhy.SetChannel(wifiChannel.Create());
+ wifiPhy.Set("Antennas", ns3::UintegerValue(nss_value));
+ wifiPhy.Set("MaxSupportedTxSpatialStreams", ns3::UintegerValue(nss_value));
+ wifiPhy.Set("MaxSupportedRxSpatialStreams", ns3::UintegerValue(nss_value));
+ wifiMac.SetType("ns3::ApWifiMac", "Ssid", ns3::SsidValue(ssid));
+
+ mobility.SetMobilityModel("ns3::ConstantPositionMobilityModel");
+ ns3::Ptr<ns3::ListPositionAllocator> positionAllocS = ns3::CreateObject<ns3::ListPositionAllocator>();
+ positionAllocS->Add(ns3::Vector(0, 0, 255 * 100 * number_of_networks + 100 * number_of_links));
+
+ ns3::NetDeviceContainer netDevices;
+ NetPointNs3* access_point_netpoint_ns3 = wifizone->get_access_point()->extension<NetPointNs3>();
+
+ ns3::Ptr<ns3::Node> access_point_ns3_node = access_point_netpoint_ns3->ns3_node_;
+ ns3::NodeContainer nodes = {access_point_ns3_node};
+ std::vector<NetPointNs3*> hosts_netpoints = {access_point_netpoint_ns3};
+ netDevices.Add(wifi.Install(wifiPhy, wifiMac, access_point_ns3_node));
+
+ wifiMac.SetType("ns3::StaWifiMac", "Ssid", ns3::SsidValue(ssid), "ActiveProbing", ns3::BooleanValue(false));
+
+ NetPointNs3* station_netpoint_ns3 = nullptr;
+ ns3::Ptr<ns3::Node> station_ns3_node = nullptr;
+ double distance;
+ double angle = 0;
+ int nb_stations = wifizone->get_all_hosts().size() - 1;
+ double step = 2 * M_PI / nb_stations;
+ for (auto station_host : wifizone->get_all_hosts()) {
+ station_netpoint_ns3 = station_host->get_netpoint()->extension<NetPointNs3>();
+ if (station_netpoint_ns3 == access_point_netpoint_ns3)
+ continue;
+ hosts_netpoints.push_back(station_netpoint_ns3);
+ distance = station_host->get_property("wifi_distance") ? atof(station_host->get_property("wifi_distance")) : 10.0;
+ positionAllocS->Add(ns3::Vector(distance * std::cos(angle), distance * std::sin(angle),
+ 255 * 100 * number_of_networks + 100 * number_of_links));
+ angle += step;
+ station_ns3_node = station_netpoint_ns3->ns3_node_;
+ nodes.Add(station_ns3_node);
+ netDevices.Add(wifi.Install(wifiPhy, wifiMac, station_ns3_node));
+ }