Namespace for implementation details. More...
Classes | |
| class | AttributeContainerChecker |
| struct | GetStoredIe |
| struct | GetStoredIe< std::optional< T > > |
| struct | GetStoredIe< std::vector< T > > |
| class | ObjectPtrContainerChecker |
| ObjectPtrContainerChecker implementation class. More... | |
| class | PairChecker |
| Internal checker class templated to each AttributeChecker for each entry in the pair. More... | |
| class | PointerChecker |
| PointerChecker implementation. More... | |
| class | TupleChecker |
| Internal checker class templated to each AttributeChecker for each entry in the tuple. More... | |
| struct | TupleHelper |
| Helper class defining static methods for MakeTupleChecker and MakeTupleAccessor that are called when user specifies the list of AttributeValue types included in a TupleValue type. More... | |
| struct | TupleHelper< std::tuple< Args... > > |
| Helper class defining static methods for MakeTupleValue, MakeTupleChecker and MakeTupleAccessor that are called when user provides a std::tuple of the AttributeValue types included in a TupleValue type. More... | |
Typedefs | |
| template<class T > | |
| using | GetStoredIeT = typename GetStoredIe< T >::type |
Functions | |
| template<typename T , typename Derived > | |
| void | DoCopyIeFromContainingFrame (std::optional< T > &elem, const Derived &frame) |
| template<typename T , typename Derived > | |
| void | DoCopyIeFromContainingFrame (std::vector< T > &elems, const Derived &frame) |
| template<typename T > | |
| uint16_t | DoGetSerializedSize (const std::optional< T > &elem) |
| template<typename T > | |
| uint16_t | DoGetSerializedSize (const std::vector< T > &elems) |
| template<typename T > | |
| void | DoPrint (const std::optional< T > &elem, std::ostream &os) |
| template<typename T > | |
| void | DoPrint (const std::vector< T > &elems, std::ostream &os) |
| template<typename T > | |
| Buffer::Iterator | DoSerialize (const std::optional< T > &elem, Buffer::Iterator start) |
| template<typename T > | |
| Buffer::Iterator | DoSerialize (const std::vector< T > &elems, Buffer::Iterator start) |
| Ptr< const AttributeChecker > | MakeDoubleChecker (double min, double max, std::string name) |
| Make a Double attribute checker with embedded numeric type name. | |
| Ptr< const AttributeChecker > | MakeIntegerChecker (int64_t min, int64_t max, std::string name) |
| Make an Integer attribute checker with embedded numeric type name. | |
| Ptr< const AttributeChecker > | MakeUintegerChecker (uint64_t min, uint64_t max, std::string name) |
| Make an Uinteger attribute checker with embedded numeric type name. | |
| template<typename T , typename Derived > | |
| std::optional< std::pair< uint8_t, uint8_t > > | MustBeListedInNonInheritance (const std::optional< T > &elem, const Derived &frame) |
| template<typename T , typename Derived > | |
| std::optional< std::pair< uint8_t, uint8_t > > | MustBeListedInNonInheritance (const std::vector< T > &elems, const Derived &frame) |
| template<typename T , typename Derived > | |
| bool | MustBeSerializedInPerStaProfile (const std::optional< T > &elem, const Derived &frame) |
| template<typename T , typename Derived > | |
| bool | MustBeSerializedInPerStaProfile (const std::vector< T > &elems, const Derived &frame) |
| template<typename T > | |
| void | RemoveIfNotInherited (std::optional< T > &elem, const NonInheritance &nonInheritance) |
| template<typename T > | |
| void | RemoveIfNotInherited (std::vector< T > &elem, const NonInheritance &nonInheritance) |
Namespace for implementation details.
| using ns3::internal::GetStoredIeT = typedef typename GetStoredIe<T>::type |
| T | [explicit] An Information Element type |
Provides the type used to store Information Elements in the tuple held by WifiMgtHeader:
Definition at line 77 of file wifi-mgt-header.h.
| void ns3::internal::DoCopyIeFromContainingFrame | ( | std::optional< T > & | elem, |
| const Derived & | frame | ||
| ) |
| T | [deduced] the type of the given Information Element |
| Derived | [deduced] the type of the containing management frame |
| elem | the given Information Element |
| frame | the containing management frame |
Copy the given Information Element from the containing frame to the Per-STA Profile subelement of the Multi-Link Element, if the Information Element has been inherited (i.e., it is present outside the Multi-Link Element and not present in the Per-STA Profile subelement)
Definition at line 839 of file wifi-mgt-header.h.
Referenced by ns3::MgtHeaderInPerStaProfile< Derived, std::tuple< Elems... > >::CopyIesFromContainingFrame().
Here is the caller graph for this function:| void ns3::internal::DoCopyIeFromContainingFrame | ( | std::vector< T > & | elems, |
| const Derived & | frame | ||
| ) |
| T | [deduced] the type of the given vector of Information Elements |
| Derived | [deduced] the type of the containing management frame |
| elems | the given vector of Information Elements |
| frame | the containing management frame |
Copy the given Information Element from the containing frame to the Per-STA Profile subelement of the Multi-Link Element, if the Information Element has been inherited (i.e., it is present outside the Multi-Link Element and not present in the Per-STA Profile subelement)
Definition at line 860 of file wifi-mgt-header.h.
| uint16_t ns3::internal::DoGetSerializedSize | ( | const std::optional< T > & | elem | ) |
| T | [deduced] the type of the Information Element |
| elem | the optional Information Element |
Definition at line 411 of file wifi-mgt-header.h.
Referenced by ns3::WifiMgtHeader< Derived, std::tuple< Elems... > >::GetSerializedSizeImpl(), and ns3::MgtHeaderInPerStaProfile< Derived, std::tuple< Elems... > >::GetSerializedSizeInPerStaProfileImpl().
Here is the caller graph for this function:| uint16_t ns3::internal::DoGetSerializedSize | ( | const std::vector< T > & | elems | ) |
| T | [deduced] the type of the Information Elements |
| elems | a vector of Information Elements |
Definition at line 423 of file wifi-mgt-header.h.
| void ns3::internal::DoPrint | ( | const std::optional< T > & | elem, |
| std::ostream & | os | ||
| ) |
| T | [deduced] the type of the Information Element |
| elem | the optional Information Element |
| os | the output stream |
Definition at line 582 of file wifi-mgt-header.h.
Referenced by ns3::WifiMgtHeader< Derived, std::tuple< Elems... > >::PrintImpl().
Here is the caller graph for this function:| void ns3::internal::DoPrint | ( | const std::vector< T > & | elems, |
| std::ostream & | os | ||
| ) |
| T | [deduced] the type of the Information Elements |
| elems | a vector of Information Elements |
| os | the output stream |
Definition at line 597 of file wifi-mgt-header.h.
| Buffer::Iterator ns3::internal::DoSerialize | ( | const std::optional< T > & | elem, |
| Buffer::Iterator | start | ||
| ) |
| T | [deduced] the type of the Information Element |
| elem | the optional Information Element |
| start | the buffer iterator pointing to where serialization starts |
Definition at line 458 of file wifi-mgt-header.h.
Referenced by ns3::WifiMgtHeader< Derived, std::tuple< Elems... > >::SerializeImpl(), and ns3::MgtHeaderInPerStaProfile< Derived, std::tuple< Elems... > >::SerializeInPerStaProfileImpl().
Here is the caller graph for this function:| Buffer::Iterator ns3::internal::DoSerialize | ( | const std::vector< T > & | elems, |
| Buffer::Iterator | start | ||
| ) |
| T | [deduced] the type of the Information Elements |
| elems | a vector of Information Elements |
| start | the buffer iterator pointing to where serialization starts |
Definition at line 471 of file wifi-mgt-header.h.
| std::optional< std::pair< uint8_t, uint8_t > > ns3::internal::MustBeListedInNonInheritance | ( | const std::optional< T > & | elem, |
| const Derived & | frame | ||
| ) |
| T | [deduced] the type of the given Information Element |
| Derived | [deduced] the type of the containing management frame |
| elem | the given Information Element |
| frame | the containing management frame |
Definition at line 702 of file wifi-mgt-header.h.
Referenced by ns3::MgtHeaderInPerStaProfile< Derived, std::tuple< Elems... > >::GetSerializedSizeInPerStaProfileImpl(), and ns3::MgtHeaderInPerStaProfile< Derived, std::tuple< Elems... > >::SerializeInPerStaProfileImpl().
Here is the caller graph for this function:| std::optional< std::pair< uint8_t, uint8_t > > ns3::internal::MustBeListedInNonInheritance | ( | const std::vector< T > & | elems, |
| const Derived & | frame | ||
| ) |
| T | [deduced] the type of the given vector of Information Elements |
| Derived | [deduced] the type of the containing management frame |
| elems | the given Information Elements |
| frame | the containing management frame |
Definition at line 723 of file wifi-mgt-header.h.
| bool ns3::internal::MustBeSerializedInPerStaProfile | ( | const std::optional< T > & | elem, |
| const Derived & | frame | ||
| ) |
| T | [deduced] the type of the given Information Element |
| Derived | [deduced] the type of the containing management frame |
| elem | the given Information Element |
| frame | the containing management frame |
Definition at line 631 of file wifi-mgt-header.h.
Referenced by ns3::MgtHeaderInPerStaProfile< Derived, std::tuple< Elems... > >::GetSerializedSizeInPerStaProfileImpl(), and ns3::MgtHeaderInPerStaProfile< Derived, std::tuple< Elems... > >::SerializeInPerStaProfileImpl().
Here is the caller graph for this function:| bool ns3::internal::MustBeSerializedInPerStaProfile | ( | const std::vector< T > & | elems, |
| const Derived & | frame | ||
| ) |
| T | [deduced] the type of the given vector of Information Elements |
| Derived | [deduced] the type of the containing management frame |
| elems | the given vector of Information Elements |
| frame | the containing management frame |
Definition at line 666 of file wifi-mgt-header.h.
| void ns3::internal::RemoveIfNotInherited | ( | std::optional< T > & | elem, |
| const NonInheritance & | nonInheritance | ||
| ) |
| T | [deduced] the type of the given Information Element |
| elem | the given Information Element |
| nonInheritance | the Non-Inheritance information element |
Remove the given Information Element from this header, if it is present and is listed in the given Non-Inheritance element.
Definition at line 929 of file wifi-mgt-header.h.
References ns3::NonInheritance::IsPresent().
Referenced by ns3::MgtHeaderInPerStaProfile< Derived, std::tuple< Elems... > >::CopyIesFromContainingFrame().
Here is the call graph for this function:
Here is the caller graph for this function:| void ns3::internal::RemoveIfNotInherited | ( | std::vector< T > & | elem, |
| const NonInheritance & | nonInheritance | ||
| ) |
| T | [deduced] the type of the given vector of Information Elements |
| elem | the given Information Elements |
| nonInheritance | the Non-Inheritance information element |
Remove the given Information Elements from this header, if they are present and are listed in the given Non-Inheritance element.
Definition at line 947 of file wifi-mgt-header.h.
References ns3::NonInheritance::IsPresent().
Here is the call graph for this function: