20 #include "ns3/dot11s-installer.h" 21 #include "ns3/peer-management-protocol.h" 22 #include "ns3/hwmp-protocol.h" 23 #include "ns3/wifi-net-device.h" 24 #include "ns3/mesh-wifi-interface-mac.h" 27 using namespace dot11s;
35 .SetGroupName (
"Mesh")
37 .AddAttribute (
"Root",
38 "The MAC address of root mesh point.",
60 pmp->SetMeshId (
"mesh");
61 bool install_ok = pmp->Install (mp);
68 install_ok = hwmp->Install (mp);
73 if (mp->GetAddress () ==
m_root)
88 std::vector<Ptr<NetDevice> > ifaces = mp->GetInterfaces ();
89 for (std::vector<
Ptr<NetDevice> >::const_iterator i = ifaces.begin (); i != ifaces.end (); ++i)
110 std::vector<Ptr<NetDevice> > ifaces = mp->GetInterfaces ();
111 for (std::vector<
Ptr<NetDevice> >::const_iterator i = ifaces.begin (); i != ifaces.end (); ++i)
Smart pointer class similar to boost::intrusive_ptr.
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
void DoDispose()
Break any reference cycles in the installer helper.
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file...
U * PeekPointer(const Ptr< U > &p)
Ptr< const AttributeChecker > MakeMac48AddressChecker(void)
Ptr< const AttributeAccessor > MakeMac48AddressAccessor(T1 a1)
Create an AttributeAccessor for a class data member, or a lone class get functor or set method...
Helper class to allow easy installation of 802.11s stack.
Prototype for class, which helps to install MAC-layer routing stack to ns3::MeshPointDevice.
~Dot11sStack()
Destroy a Dot11sStack() installer helper.
Hybrid wireless mesh protocol – a mesh routing protocol defined in IEEE 802.11-2012 standard...
void Report(const Ptr< MeshPointDevice > mp, std::ostream &)
Iterate through the referenced devices and protocols and print their statistics.
Hold together all Wifi-related objects.
Callback< R > MakeCallback(R(T::*memPtr)(void), OBJ objPtr)
std::vector< Mac48Address > GetPeers(uint32_t interface) const
Get list of active peers of my given interface.
Dot11sStack()
Create a Dot11sStack() installer helper.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
AttributeValue implementation for Mac48Address.
static TypeId GetTypeId()
Get the type ID.
void ResetStats(const Ptr< MeshPointDevice > mp)
Reset the statistics on the referenced devices and protocols.
bool InstallStack(Ptr< MeshPointDevice > mp)
Install an 802.11s stack.
void PeerLinkStatus(Mac48Address meshPontAddress, Mac48Address peerAddress, uint32_t interface, bool status)
Peer link status function.
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Set the parent TypeId.
Basic MAC of mesh point Wi-Fi interface.
802.11s Peer Management Protocol model