applications,core,wifi: Fix inconsistent formatting due to clang-format-19
This commit is contained in:
@@ -246,7 +246,7 @@ class SymmetricAdjacencyMatrix
|
||||
{
|
||||
m_rowOffsets.push_back(i * (i + 1) / 2);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Retrieve the value of matrix (row, column) node
|
||||
@@ -307,7 +307,7 @@ class SymmetricAdjacencyMatrix
|
||||
m_rowOffsets.push_back(m_matrix.size());
|
||||
m_rows++;
|
||||
m_matrix.resize(m_matrix.size() + m_rows);
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Retrieve number of rows in the adjacency matrix
|
||||
|
||||
@@ -50,17 +50,17 @@ UdpClient::GetTypeId()
|
||||
MakeTimeAccessor(&UdpClient::m_interval),
|
||||
MakeTimeChecker())
|
||||
// NS_DEPRECATED_3_44
|
||||
.AddAttribute("RemoteAddress",
|
||||
"The destination Address of the outbound packets",
|
||||
AddressValue(),
|
||||
MakeAddressAccessor(
|
||||
(void(UdpClient::*)(const Address&)) &
|
||||
UdpClient::SetRemote, // this is needed to indicate which version
|
||||
// of the function overload to use
|
||||
&UdpClient::GetRemote),
|
||||
MakeAddressChecker(),
|
||||
TypeId::SupportLevel::DEPRECATED,
|
||||
"Replaced by Remote in ns-3.44.")
|
||||
.AddAttribute(
|
||||
"RemoteAddress",
|
||||
"The destination Address of the outbound packets",
|
||||
AddressValue(),
|
||||
MakeAddressAccessor(
|
||||
// this is needed to indicate which version of the function overload to use
|
||||
static_cast<void (UdpClient::*)(const Address&)>(&UdpClient::SetRemote),
|
||||
&UdpClient::GetRemote),
|
||||
MakeAddressChecker(),
|
||||
TypeId::SupportLevel::DEPRECATED,
|
||||
"Replaced by Remote in ns-3.44.")
|
||||
// NS_DEPRECATED_3_44
|
||||
.AddAttribute("RemotePort",
|
||||
"The destination port of the outbound packets",
|
||||
|
||||
@@ -47,9 +47,8 @@ UdpEchoClient::GetTypeId()
|
||||
"The destination Address of the outbound packets",
|
||||
AddressValue(),
|
||||
MakeAddressAccessor(
|
||||
(void(UdpEchoClient::*)(const Address&)) &
|
||||
UdpEchoClient::SetRemote, // this is needed to indicate which version of the
|
||||
// function overload to use
|
||||
// this is needed to indicate which version of the function overload to use
|
||||
static_cast<void (UdpEchoClient::*)(const Address&)>(&UdpEchoClient::SetRemote),
|
||||
&UdpEchoClient::GetRemote),
|
||||
MakeAddressChecker(),
|
||||
TypeId::SupportLevel::DEPRECATED,
|
||||
|
||||
@@ -57,25 +57,26 @@ UdpTraceClient::GetTypeId()
|
||||
.SetGroupName("Applications")
|
||||
.AddConstructor<UdpTraceClient>()
|
||||
// NS_DEPRECATED_3_44
|
||||
.AddAttribute("RemoteAddress",
|
||||
"The destination Address of the outbound packets",
|
||||
AddressValue(),
|
||||
MakeAddressAccessor(
|
||||
(void(UdpTraceClient::*)(const Address&)) &
|
||||
UdpTraceClient::SetRemote), // this is needed to indicate which
|
||||
// version of the function overload to use
|
||||
MakeAddressChecker(),
|
||||
TypeId::SupportLevel::DEPRECATED,
|
||||
"Replaced by Remote in ns-3.44.")
|
||||
.AddAttribute(
|
||||
"RemoteAddress",
|
||||
"The destination Address of the outbound packets",
|
||||
AddressValue(),
|
||||
MakeAddressAccessor(
|
||||
// this is needed to indicate which version of the function overload to use
|
||||
static_cast<void (UdpTraceClient::*)(const Address&)>(
|
||||
&UdpTraceClient::SetRemote)),
|
||||
MakeAddressChecker(),
|
||||
TypeId::SupportLevel::DEPRECATED,
|
||||
"Replaced by Remote in ns-3.44.")
|
||||
// NS_DEPRECATED_3_44
|
||||
.AddAttribute(
|
||||
"RemotePort",
|
||||
"The destination port of the outbound packets",
|
||||
UintegerValue(UdpTraceClient::DEFAULT_PORT),
|
||||
MakeAddressAccessor(
|
||||
(void(UdpTraceClient::*)(const Address&)) &
|
||||
UdpTraceClient::SetRemote, // this is needed to indicate which version of
|
||||
// the function overload to use
|
||||
// this is needed to indicate which version of the function overload to use
|
||||
static_cast<void (UdpTraceClient::*)(const Address&)>(
|
||||
&UdpTraceClient::SetRemote),
|
||||
&UdpTraceClient::GetRemote),
|
||||
MakeUintegerChecker<uint16_t>(),
|
||||
TypeId::SupportLevel::DEPRECATED,
|
||||
|
||||
@@ -233,9 +233,12 @@ class AccessorHelper : public AttributeAccessor
|
||||
* @param [in] memberVariable The address of the data member.
|
||||
* @returns The AttributeAccessor.
|
||||
*/
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
template <typename V, typename T, typename U>
|
||||
inline Ptr<const AttributeAccessor>
|
||||
DoMakeAccessorHelperOne(U T::*memberVariable)
|
||||
DoMakeAccessorHelperOne(U T::* memberVariable)
|
||||
// clang-format on
|
||||
{
|
||||
/* AttributeAccessor implementation for a class member variable. */
|
||||
class MemberVariable : public AccessorHelper<T, V>
|
||||
@@ -245,7 +248,10 @@ DoMakeAccessorHelperOne(U T::*memberVariable)
|
||||
* Construct from a class data member address.
|
||||
* @param [in] memberVariable The class data member address.
|
||||
*/
|
||||
MemberVariable(U T::*memberVariable)
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
MemberVariable(U T::* memberVariable)
|
||||
// clang-format on
|
||||
: AccessorHelper<T, V>(),
|
||||
m_memberVariable(memberVariable)
|
||||
{
|
||||
@@ -280,7 +286,10 @@ DoMakeAccessorHelperOne(U T::*memberVariable)
|
||||
return true;
|
||||
}
|
||||
|
||||
U T::*m_memberVariable; // Address of the class data member.
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
U T::* m_memberVariable; // Address of the class data member.
|
||||
// clang-format on
|
||||
};
|
||||
|
||||
return Ptr<const AttributeAccessor>(new MemberVariable(memberVariable), false);
|
||||
|
||||
@@ -33,8 +33,11 @@ typedef ObjectPtrContainerValue ObjectMapValue;
|
||||
* MakeAccessorHelper implementation for ObjectVector.
|
||||
* @copydetails ns3::DoMakeAccessorHelperOne(U T::*)
|
||||
*/
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
template <typename T, typename U>
|
||||
Ptr<const AttributeAccessor> MakeObjectMapAccessor(U T::*memberVariable);
|
||||
Ptr<const AttributeAccessor> MakeObjectMapAccessor(U T::* memberVariable);
|
||||
// clang-format on
|
||||
|
||||
// Documentation generated by print-introspected-doxygen.cc
|
||||
template <typename T>
|
||||
@@ -60,9 +63,12 @@ Ptr<const AttributeAccessor> MakeObjectMapAccessor(INDEX (T::*getN)() const,
|
||||
* Implementation of the templates declared above.
|
||||
***************************************************************/
|
||||
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
template <typename T, typename U>
|
||||
Ptr<const AttributeAccessor>
|
||||
MakeObjectMapAccessor(U T::*memberVector)
|
||||
MakeObjectMapAccessor(U T::* memberVector)
|
||||
// clang-format on
|
||||
{
|
||||
struct MemberStdContainer : public ObjectPtrContainerAccessor
|
||||
{
|
||||
@@ -98,7 +104,10 @@ MakeObjectMapAccessor(U T::*memberVector)
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
U T::*m_memberVector;
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
U T::* m_memberVector;
|
||||
// clang-format on
|
||||
}* spec = new MemberStdContainer();
|
||||
|
||||
spec->m_memberVector = memberVector;
|
||||
|
||||
@@ -33,8 +33,11 @@ typedef ObjectPtrContainerValue ObjectVectorValue;
|
||||
* MakeAccessorHelper implementation for ObjectVector.
|
||||
* @copydetails ns3::DoMakeAccessorHelperOne(U T::*)
|
||||
*/
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
template <typename T, typename U>
|
||||
Ptr<const AttributeAccessor> MakeObjectVectorAccessor(U T::*memberVariable);
|
||||
Ptr<const AttributeAccessor> MakeObjectVectorAccessor(U T::* memberVariable);
|
||||
// clang-format on
|
||||
|
||||
// Documentation generated by print-introspected-doxygen.cc
|
||||
template <typename T>
|
||||
@@ -60,9 +63,12 @@ Ptr<const AttributeAccessor> MakeObjectVectorAccessor(INDEX (T::*getN)() const,
|
||||
* Implementation of the templates declared above.
|
||||
***************************************************************/
|
||||
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
template <typename T, typename U>
|
||||
Ptr<const AttributeAccessor>
|
||||
MakeObjectVectorAccessor(U T::*memberVector)
|
||||
MakeObjectVectorAccessor(U T::* memberVector)
|
||||
// clang-format on
|
||||
{
|
||||
struct MemberStdContainer : public ObjectPtrContainerAccessor
|
||||
{
|
||||
@@ -98,7 +104,10 @@ MakeObjectVectorAccessor(U T::*memberVector)
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
U T::*m_memberVector;
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
U T::* m_memberVector;
|
||||
// clang-format on
|
||||
}* spec = new MemberStdContainer();
|
||||
|
||||
spec->m_memberVector = memberVector;
|
||||
|
||||
@@ -136,9 +136,12 @@ namespace ns3
|
||||
* @param [in] a The underlying data value.
|
||||
* @returns The TraceSourceAccessor
|
||||
*/
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
template <typename T, typename SOURCE>
|
||||
Ptr<const TraceSourceAccessor>
|
||||
DoMakeTraceSourceAccessor(SOURCE T::*a)
|
||||
DoMakeTraceSourceAccessor(SOURCE T::* a)
|
||||
// clang-format on
|
||||
{
|
||||
struct Accessor : public TraceSourceAccessor
|
||||
{
|
||||
@@ -186,7 +189,10 @@ DoMakeTraceSourceAccessor(SOURCE T::*a)
|
||||
return true;
|
||||
}
|
||||
|
||||
SOURCE T::*m_source;
|
||||
// clang-format off
|
||||
// Clang-format guard needed for versions <= 18
|
||||
SOURCE T::* m_source;
|
||||
// clang-format on
|
||||
}* accessor = new Accessor();
|
||||
|
||||
accessor->m_source = a;
|
||||
|
||||
@@ -103,6 +103,7 @@ struct EhtPhyCapabilities
|
||||
uint8_t
|
||||
support20MhzOperatingStaReceivingNdpWithWiderBw : 1; //!< Support For 20 MHz Operating STA
|
||||
//!< Receiving NDP With Wider Bandwidth
|
||||
|
||||
uint8_t nonOfdmaUlMuMimoBwNotLargerThan80Mhz : 1; //!< Non-OFDMA UL MU-MIMO (BW ≤ 80 MHz)
|
||||
uint8_t nonOfdmaUlMuMimo160Mhz : 1; //!< Non-OFDMA UL MU-MIMO (BW = 160 MHz)
|
||||
uint8_t nonOfdmaUlMuMimo320Mhz : 1; //!< Non-OFDMA UL MU-MIMO (BW = 320 MHz)
|
||||
|
||||
@@ -724,13 +724,14 @@ HePpdu::GetHeSigBContentChannels(const WifiTxVector& txVector, uint8_t p20Index)
|
||||
ccIndex = ((prevRuIndex / numRus) % 2 == 0) ? 0 : 1;
|
||||
}
|
||||
const auto central26TonesRus = HeRu::GetCentral26TonesRus(channelWidth, *prevRuType);
|
||||
if (ruType < HeRu::RuType::RU_242_TONE && (prevCcIndex == ccIndex) &&
|
||||
((ruType != HeRu::RuType::RU_26_TONE) ||
|
||||
std::none_of(central26TonesRus.cbegin(),
|
||||
central26TonesRus.cend(),
|
||||
[ruIndex, channelWidth, p20Index](const auto& ruSpec) {
|
||||
return ruSpec.GetPhyIndex(channelWidth, p20Index) == ruIndex;
|
||||
})))
|
||||
const auto isCentral26ToneRu =
|
||||
std::none_of(central26TonesRus.cbegin(),
|
||||
central26TonesRus.cend(),
|
||||
[ruIndex, channelWidth, p20Index](const auto& ruSpec) {
|
||||
return ruSpec.GetPhyIndex(channelWidth, p20Index) == ruIndex;
|
||||
});
|
||||
if (ruType < HeRu::RuType::RU_242_TONE && prevCcIndex == ccIndex &&
|
||||
(ruType != HeRu::RuType::RU_26_TONE || isCentral26ToneRu))
|
||||
{
|
||||
contentChannels[ccIndex].push_back({NO_USER_STA_ID, 0, 0});
|
||||
}
|
||||
|
||||
@@ -189,7 +189,9 @@ class MultiUserScheduler : public Object
|
||||
*/
|
||||
virtual void UpdateTriggerFrameAfterProtection(uint8_t linkId,
|
||||
CtrlTriggerHeader& trigger,
|
||||
WifiTxParameters& txParams) const {};
|
||||
WifiTxParameters& txParams) const
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the given PSDU map after protection is completed on the given link.
|
||||
@@ -200,7 +202,9 @@ class MultiUserScheduler : public Object
|
||||
*/
|
||||
virtual void UpdateDlMuAfterProtection(uint8_t linkId,
|
||||
WifiPsduMap& psduMap,
|
||||
WifiTxParameters& txParams) const {};
|
||||
WifiTxParameters& txParams) const
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the User Info fields for which the given predicate is true from the given Trigger
|
||||
|
||||
@@ -66,16 +66,17 @@ Txop::GetTypeId()
|
||||
AC_UNDEF,
|
||||
"AC_UNDEF"))
|
||||
// NS_DEPRECATED_3_42
|
||||
.AddAttribute("MinCw",
|
||||
"The minimum value of the contention window (just for the first link, "
|
||||
"in case of 11be multi-link devices).",
|
||||
TypeId::ATTR_GET | TypeId::ATTR_SET, // do not set at construction time
|
||||
UintegerValue(15),
|
||||
MakeUintegerAccessor((void(Txop::*)(uint32_t)) & Txop::SetMinCw,
|
||||
(uint32_t(Txop::*)() const) & Txop::GetMinCw),
|
||||
MakeUintegerChecker<uint32_t>(),
|
||||
TypeId::SupportLevel::OBSOLETE,
|
||||
"Use MinCws attribute instead of MinCw")
|
||||
.AddAttribute(
|
||||
"MinCw",
|
||||
"The minimum value of the contention window (just for the first link, "
|
||||
"in case of 11be multi-link devices).",
|
||||
TypeId::ATTR_GET | TypeId::ATTR_SET, // do not set at construction time
|
||||
UintegerValue(15),
|
||||
MakeUintegerAccessor(static_cast<void (Txop::*)(uint32_t)>(&Txop::SetMinCw),
|
||||
static_cast<uint32_t (Txop::*)() const>(&Txop::GetMinCw)),
|
||||
MakeUintegerChecker<uint32_t>(),
|
||||
TypeId::SupportLevel::OBSOLETE,
|
||||
"Use MinCws attribute instead of MinCw")
|
||||
.AddAttribute(
|
||||
"MinCws",
|
||||
"The minimum values of the contention window for all the links (sorted in "
|
||||
@@ -87,16 +88,17 @@ Txop::GetTypeId()
|
||||
MakeAttributeContainerAccessor<UintegerValue>(&Txop::SetMinCws, &Txop::GetMinCws),
|
||||
MakeAttributeContainerChecker<UintegerValue>(MakeUintegerChecker<uint32_t>()))
|
||||
// NS_DEPRECATED_3_42
|
||||
.AddAttribute("MaxCw",
|
||||
"The maximum value of the contention window (just for the first link, "
|
||||
"in case of 11be multi-link devices).",
|
||||
TypeId::ATTR_GET | TypeId::ATTR_SET, // do not set at construction time
|
||||
UintegerValue(1023),
|
||||
MakeUintegerAccessor((void(Txop::*)(uint32_t)) & Txop::SetMaxCw,
|
||||
(uint32_t(Txop::*)() const) & Txop::GetMaxCw),
|
||||
MakeUintegerChecker<uint32_t>(),
|
||||
TypeId::SupportLevel::OBSOLETE,
|
||||
"Use MaxCws attribute instead of MaxCw")
|
||||
.AddAttribute(
|
||||
"MaxCw",
|
||||
"The maximum value of the contention window (just for the first link, "
|
||||
"in case of 11be multi-link devices).",
|
||||
TypeId::ATTR_GET | TypeId::ATTR_SET, // do not set at construction time
|
||||
UintegerValue(1023),
|
||||
MakeUintegerAccessor(static_cast<void (Txop::*)(uint32_t)>(&Txop::SetMaxCw),
|
||||
static_cast<uint32_t (Txop::*)() const>(&Txop::GetMaxCw)),
|
||||
MakeUintegerChecker<uint32_t>(),
|
||||
TypeId::SupportLevel::OBSOLETE,
|
||||
"Use MaxCws attribute instead of MaxCw")
|
||||
.AddAttribute(
|
||||
"MaxCws",
|
||||
"The maximum values of the contention window for all the links (sorted in "
|
||||
@@ -114,8 +116,8 @@ Txop::GetTypeId()
|
||||
"in case of 11be multi-link devices).",
|
||||
TypeId::ATTR_GET | TypeId::ATTR_SET, // do not set at construction time
|
||||
UintegerValue(2),
|
||||
MakeUintegerAccessor((void(Txop::*)(uint8_t)) & Txop::SetAifsn,
|
||||
(uint8_t(Txop::*)() const) & Txop::GetAifsn),
|
||||
MakeUintegerAccessor(static_cast<void (Txop::*)(uint8_t)>(&Txop::SetAifsn),
|
||||
static_cast<uint8_t (Txop::*)() const>(&Txop::GetAifsn)),
|
||||
MakeUintegerChecker<uint8_t>(),
|
||||
TypeId::SupportLevel::OBSOLETE,
|
||||
"Use Aifsns attribute instead of Aifsn")
|
||||
@@ -130,16 +132,17 @@ Txop::GetTypeId()
|
||||
MakeAttributeContainerAccessor<UintegerValue>(&Txop::SetAifsns, &Txop::GetAifsns),
|
||||
MakeAttributeContainerChecker<UintegerValue>(MakeUintegerChecker<uint8_t>()))
|
||||
// NS_DEPRECATED_3_42
|
||||
.AddAttribute("TxopLimit",
|
||||
"The TXOP limit: the default value conforms to non-QoS "
|
||||
"(just for the first link, in case of 11be multi-link devices).",
|
||||
TypeId::ATTR_GET | TypeId::ATTR_SET, // do not set at construction time
|
||||
TimeValue(MilliSeconds(0)),
|
||||
MakeTimeAccessor((void(Txop::*)(Time)) & Txop::SetTxopLimit,
|
||||
(Time(Txop::*)() const) & Txop::GetTxopLimit),
|
||||
MakeTimeChecker(),
|
||||
TypeId::SupportLevel::OBSOLETE,
|
||||
"Use TxopLimits attribute instead of TxopLimit")
|
||||
.AddAttribute(
|
||||
"TxopLimit",
|
||||
"The TXOP limit: the default value conforms to non-QoS "
|
||||
"(just for the first link, in case of 11be multi-link devices).",
|
||||
TypeId::ATTR_GET | TypeId::ATTR_SET, // do not set at construction time
|
||||
TimeValue(MilliSeconds(0)),
|
||||
MakeTimeAccessor(static_cast<void (Txop::*)(Time)>(&Txop::SetTxopLimit),
|
||||
static_cast<Time (Txop::*)() const>(&Txop::GetTxopLimit)),
|
||||
MakeTimeChecker(),
|
||||
TypeId::SupportLevel::OBSOLETE,
|
||||
"Use TxopLimits attribute instead of TxopLimit")
|
||||
.AddAttribute(
|
||||
"TxopLimits",
|
||||
"The values of TXOP limit for all the links (sorted in increasing order "
|
||||
|
||||
@@ -47,8 +47,8 @@ WifiNetDevice::GetTypeId()
|
||||
.AddAttribute("Phy",
|
||||
"The PHY layer attached to this device.",
|
||||
PointerValue(),
|
||||
MakePointerAccessor((Ptr<WifiPhy>(WifiNetDevice::*)() const) &
|
||||
WifiNetDevice::GetPhy,
|
||||
MakePointerAccessor(static_cast<Ptr<WifiPhy> (WifiNetDevice::*)() const>(
|
||||
&WifiNetDevice::GetPhy),
|
||||
&WifiNetDevice::SetPhy),
|
||||
MakePointerChecker<WifiPhy>())
|
||||
.AddAttribute(
|
||||
@@ -62,14 +62,14 @@ WifiNetDevice::GetTypeId()
|
||||
PointerValue(),
|
||||
MakePointerAccessor(&WifiNetDevice::GetMac, &WifiNetDevice::SetMac),
|
||||
MakePointerChecker<WifiMac>())
|
||||
.AddAttribute(
|
||||
"RemoteStationManager",
|
||||
"The station manager attached to this device.",
|
||||
PointerValue(),
|
||||
MakePointerAccessor(&WifiNetDevice::SetRemoteStationManager,
|
||||
(Ptr<WifiRemoteStationManager>(WifiNetDevice::*)() const) &
|
||||
WifiNetDevice::GetRemoteStationManager),
|
||||
MakePointerChecker<WifiRemoteStationManager>())
|
||||
.AddAttribute("RemoteStationManager",
|
||||
"The station manager attached to this device.",
|
||||
PointerValue(),
|
||||
MakePointerAccessor(
|
||||
&WifiNetDevice::SetRemoteStationManager,
|
||||
static_cast<Ptr<WifiRemoteStationManager> (WifiNetDevice::*)() const>(
|
||||
&WifiNetDevice::GetRemoteStationManager)),
|
||||
MakePointerChecker<WifiRemoteStationManager>())
|
||||
.AddAttribute("RemoteStationManagers",
|
||||
"The remote station managers attached to this device (11be multi-link "
|
||||
"devices only).",
|
||||
|
||||
@@ -90,7 +90,8 @@ WifiPhy::GetTypeId()
|
||||
StringValue("{0, 0, BAND_UNSPECIFIED, 0}"),
|
||||
MakeAttributeContainerAccessor<
|
||||
TupleValue<UintegerValue, UintegerValue, EnumValue<WifiPhyBand>, UintegerValue>,
|
||||
';'>((void(WifiPhy::*)(const ChannelSegments&)) & WifiPhy::SetOperatingChannel),
|
||||
';'>(static_cast<void (WifiPhy::*)(const ChannelSegments&)>(
|
||||
&WifiPhy::SetOperatingChannel)),
|
||||
MakeAttributeContainerChecker<
|
||||
TupleValue<UintegerValue, UintegerValue, EnumValue<WifiPhyBand>, UintegerValue>,
|
||||
';'>(MakeTupleChecker<UintegerValue,
|
||||
|
||||
@@ -1201,10 +1201,13 @@ EmlsrDlTxopTest::CheckResults()
|
||||
* after another on the link used to establish association.
|
||||
*/
|
||||
auto setupLinks = m_staMacs[i]->GetSetupLinkIds();
|
||||
if (i < m_nEmlsrStations &&
|
||||
|
||||
bool areAllSetupLinksEmlsr =
|
||||
std::none_of(setupLinks.begin(), setupLinks.end(), [&](auto&& linkId) {
|
||||
return linkId != m_mainPhyId && m_emlsrLinks.count(linkId) == 0;
|
||||
}))
|
||||
});
|
||||
|
||||
if (i < m_nEmlsrStations && areAllSetupLinksEmlsr)
|
||||
{
|
||||
NS_TEST_EXPECT_MSG_EQ(linkIds.size(),
|
||||
1,
|
||||
|
||||
Reference in New Issue
Block a user