diff --git a/src/wifi/CMakeLists.txt b/src/wifi/CMakeLists.txt index 0c4fa85fa..03896c4e8 100644 --- a/src/wifi/CMakeLists.txt +++ b/src/wifi/CMakeLists.txt @@ -25,6 +25,7 @@ set(source_files model/channel-access-manager.cc model/ctrl-headers.cc model/edca-parameter-set.cc + model/eht/default-emlsr-manager.cc model/eht/eht-capabilities.cc model/eht/eht-configuration.cc model/eht/eht-frame-exchange-manager.cc @@ -174,6 +175,7 @@ set(header_files model/channel-access-manager.h model/ctrl-headers.h model/edca-parameter-set.h + model/eht/default-emlsr-manager.h model/eht/eht-capabilities.h model/eht/eht-configuration.h model/eht/eht-frame-exchange-manager.h diff --git a/src/wifi/helper/wifi-helper.cc b/src/wifi/helper/wifi-helper.cc index 583ae1cf1..71d8e5324 100644 --- a/src/wifi/helper/wifi-helper.cc +++ b/src/wifi/helper/wifi-helper.cc @@ -890,22 +890,21 @@ WifiHelper::EnableLogComponents() LogComponentEnable("AparfWifiManager", LOG_LEVEL_ALL); LogComponentEnable("ArfWifiManager", LOG_LEVEL_ALL); LogComponentEnable("BlockAckAgreement", LOG_LEVEL_ALL); - LogComponentEnable("RecipientBlockAckAgreement", LOG_LEVEL_ALL); LogComponentEnable("BlockAckManager", LOG_LEVEL_ALL); LogComponentEnable("CaraWifiManager", LOG_LEVEL_ALL); LogComponentEnable("ChannelAccessManager", LOG_LEVEL_ALL); LogComponentEnable("ConstantObssPdAlgorithm", LOG_LEVEL_ALL); LogComponentEnable("ConstantRateWifiManager", LOG_LEVEL_ALL); - LogComponentEnable("ChannelAccessManager", LOG_LEVEL_ALL); + LogComponentEnable("DefaultEmlsrManager", LOG_LEVEL_ALL); LogComponentEnable("DsssErrorRateModel", LOG_LEVEL_ALL); LogComponentEnable("DsssPhy", LOG_LEVEL_ALL); LogComponentEnable("DsssPpdu", LOG_LEVEL_ALL); - LogComponentEnable("EmlsrManager", LOG_LEVEL_ALL); LogComponentEnable("EhtFrameExchangeManager", LOG_LEVEL_ALL); - LogComponentEnable("ErpOfdmPhy", LOG_LEVEL_ALL); - LogComponentEnable("ErpOfdmPpdu", LOG_LEVEL_ALL); LogComponentEnable("EhtPhy", LOG_LEVEL_ALL); LogComponentEnable("EhtPpdu", LOG_LEVEL_ALL); + LogComponentEnable("EmlsrManager", LOG_LEVEL_ALL); + LogComponentEnable("ErpOfdmPhy", LOG_LEVEL_ALL); + LogComponentEnable("ErpOfdmPpdu", LOG_LEVEL_ALL); LogComponentEnable("FrameExchangeManager", LOG_LEVEL_ALL); LogComponentEnable("HeConfiguration", LOG_LEVEL_ALL); LogComponentEnable("HeFrameExchangeManager", LOG_LEVEL_ALL); @@ -927,15 +926,16 @@ WifiHelper::EnableLogComponents() LogComponentEnable("NistErrorRateModel", LOG_LEVEL_ALL); LogComponentEnable("ObssPdAlgorithm", LOG_LEVEL_ALL); LogComponentEnable("OfdmPhy", LOG_LEVEL_ALL); + LogComponentEnable("OfdmPpdu", LOG_LEVEL_ALL); LogComponentEnable("OnoeWifiManager", LOG_LEVEL_ALL); LogComponentEnable("OriginatorBlockAckAgreement", LOG_LEVEL_ALL); - LogComponentEnable("OfdmPpdu", LOG_LEVEL_ALL); LogComponentEnable("ParfWifiManager", LOG_LEVEL_ALL); LogComponentEnable("PhyEntity", LOG_LEVEL_ALL); LogComponentEnable("QosFrameExchangeManager", LOG_LEVEL_ALL); LogComponentEnable("QosTxop", LOG_LEVEL_ALL); - LogComponentEnable("RraaWifiManager", LOG_LEVEL_ALL); + LogComponentEnable("RecipientBlockAckAgreement", LOG_LEVEL_ALL); LogComponentEnable("RrMultiUserScheduler", LOG_LEVEL_ALL); + LogComponentEnable("RraaWifiManager", LOG_LEVEL_ALL); LogComponentEnable("RrpaaWifiManager", LOG_LEVEL_ALL); LogComponentEnable("SimpleFrameCaptureModel", LOG_LEVEL_ALL); LogComponentEnable("SpectrumWifiPhy", LOG_LEVEL_ALL); @@ -959,8 +959,8 @@ WifiHelper::EnableLogComponents() LogComponentEnable("WifiMpdu", LOG_LEVEL_ALL); LogComponentEnable("WifiNetDevice", LOG_LEVEL_ALL); LogComponentEnable("WifiPhyStateHelper", LOG_LEVEL_ALL); - LogComponentEnable("WifiPhy", LOG_LEVEL_ALL); LogComponentEnable("WifiPhyOperatingChannel", LOG_LEVEL_ALL); + LogComponentEnable("WifiPhy", LOG_LEVEL_ALL); LogComponentEnable("WifiPpdu", LOG_LEVEL_ALL); LogComponentEnable("WifiProtectionManager", LOG_LEVEL_ALL); LogComponentEnable("WifiPsdu", LOG_LEVEL_ALL); diff --git a/src/wifi/model/eht/default-emlsr-manager.cc b/src/wifi/model/eht/default-emlsr-manager.cc new file mode 100644 index 000000000..9251c031e --- /dev/null +++ b/src/wifi/model/eht/default-emlsr-manager.cc @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2023 Universita' degli Studi di Napoli Federico II + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation; + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * Author: Stefano Avallone + */ + +#include "default-emlsr-manager.h" + +#include "ns3/log.h" + +namespace ns3 +{ + +NS_LOG_COMPONENT_DEFINE("DefaultEmlsrManager"); + +NS_OBJECT_ENSURE_REGISTERED(DefaultEmlsrManager); + +TypeId +DefaultEmlsrManager::GetTypeId() +{ + static TypeId tid = TypeId("ns3::DefaultEmlsrManager") + .SetParent() + .SetGroupName("Wifi") + .AddConstructor(); + return tid; +} + +DefaultEmlsrManager::DefaultEmlsrManager() +{ + NS_LOG_FUNCTION(this); +} + +DefaultEmlsrManager::~DefaultEmlsrManager() +{ + NS_LOG_FUNCTION_NOARGS(); +} + +} // namespace ns3 diff --git a/src/wifi/model/eht/default-emlsr-manager.h b/src/wifi/model/eht/default-emlsr-manager.h new file mode 100644 index 000000000..2f95b3cff --- /dev/null +++ b/src/wifi/model/eht/default-emlsr-manager.h @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2023 Universita' degli Studi di Napoli Federico II + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation; + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * Author: Stefano Avallone + */ + +#ifndef DEFAULT_EMLSR_MANAGER_H +#define DEFAULT_EMLSR_MANAGER_H + +#include "emlsr-manager.h" + +namespace ns3 +{ + +/** + * \ingroup wifi + * + * DefaultEmlsrManager is the default EMLSR manager. + */ +class DefaultEmlsrManager : public EmlsrManager +{ + public: + /** + * \brief Get the type ID. + * \return the object TypeId + */ + static TypeId GetTypeId(); + + DefaultEmlsrManager(); + ~DefaultEmlsrManager() override; +}; + +} // namespace ns3 + +#endif /* DEFAULT_EMLSR_MANAGER_H */