the Adhoc state machine More...
#include <adhoc-wifi-mac.h>
Public Member Functions | |
virtual void | SetSlot (Time slotTime) |
virtual void | SetSifs (Time sifs) |
virtual void | SetEifsNoDifs (Time eifsNoDifs) |
virtual Time | GetSlot (void) const |
virtual Time | GetSifs (void) const |
virtual Time | GetEifsNoDifs (void) const |
virtual void | SetWifiPhy (Ptr< WifiPhy > phy) |
virtual void | SetWifiRemoteStationManager (Ptr< WifiRemoteStationManager > stationManager) |
virtual void | Enqueue (Ptr< const Packet > packet, Mac48Address to) |
virtual void | SetForwardUpCallback (Callback< void, Ptr< Packet >, const Mac48Address & > upCallback) |
virtual void | SetLinkUpCallback (Callback< void > linkUp) |
virtual void | SetLinkDownCallback (Callback< void > linkDown) |
virtual Mac48Address | GetAddress (void) const |
virtual Ssid | GetSsid (void) const |
virtual Mac48Address | GetBssid (void) const |
virtual void | SetAddress (Mac48Address address) |
virtual void | SetSsid (Ssid ssid) |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
This method returns the TypeId associated to ns3::AdhocWifiMac. | |
Private Member Functions | |
virtual void | DoDispose (void) |
the Adhoc state machine
For now, this class is really empty but it should contain the code for the distributed generation of beacons in an adhoc network.
virtual void ns3::AdhocWifiMac::DoDispose | ( | void | ) | [private, virtual] |
This method is called by Object::Dispose or by the object's destructor, whichever comes first.
Subclasses are expected to implement their real destruction code in an overriden version of this method and chain up to their parent's implementation once they are done. i.e., for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose method.
Reimplemented from ns3::Object.
virtual void ns3::AdhocWifiMac::Enqueue | ( | Ptr< const Packet > | packet, | |
Mac48Address | to | |||
) | [virtual] |
packet | the packet to send. | |
to | the address to which the packet should be sent. |
The packet should be enqueued in a tx queue, and should be dequeued as soon as the DCF function determines that access it granted to this MAC.
Implements ns3::WifiMac.
virtual Mac48Address ns3::AdhocWifiMac::GetAddress | ( | void | ) | const [virtual] |
Implements ns3::WifiMac.
virtual Mac48Address ns3::AdhocWifiMac::GetBssid | ( | void | ) | const [virtual] |
If we are an AP, this is the address of the AP itself. If are a STA, this is the address of the AP with which the STA is associated.
Implements ns3::WifiMac.
virtual Time ns3::AdhocWifiMac::GetEifsNoDifs | ( | void | ) | const [virtual] |
Implements ns3::WifiMac.
virtual Time ns3::AdhocWifiMac::GetSifs | ( | void | ) | const [virtual] |
Implements ns3::WifiMac.
virtual Time ns3::AdhocWifiMac::GetSlot | ( | void | ) | const [virtual] |
Implements ns3::WifiMac.
virtual Ssid ns3::AdhocWifiMac::GetSsid | ( | void | ) | const [virtual] |
Implements ns3::WifiMac.
static TypeId ns3::AdhocWifiMac::GetTypeId | ( | void | ) | [static] |
This method returns the TypeId associated to ns3::AdhocWifiMac.
This object is accessible through the following paths with Config::Set and Config::Connect:
No Attributes defined for this type.
Attributes defined in parent class ns3::WifiMac:
No TraceSources defined for this type.
Reimplemented from ns3::WifiMac.
virtual void ns3::AdhocWifiMac::SetAddress | ( | Mac48Address | address | ) | [virtual] |
address | the current address of this MAC layer. |
Implements ns3::WifiMac.
virtual void ns3::AdhocWifiMac::SetEifsNoDifs | ( | Time | eifsNoDifs | ) | [virtual] |
eifsNoDifs | the duration of an EIFS minus DIFS. |
This value is used to calculate the EIFS depending on AIFSN.
Implements ns3::WifiMac.
virtual void ns3::AdhocWifiMac::SetForwardUpCallback | ( | Callback< void, Ptr< Packet >, const Mac48Address & > | upCallback | ) | [virtual] |
upCallback | the callback to invoke when a packet must be forwarded up the stack. |
Implements ns3::WifiMac.
virtual void ns3::AdhocWifiMac::SetLinkDownCallback | ( | Callback< void > | linkDown | ) | [virtual] |
linkDown | the callback to invoke when the link becomes down. |
Implements ns3::WifiMac.
virtual void ns3::AdhocWifiMac::SetLinkUpCallback | ( | Callback< void > | linkUp | ) | [virtual] |
linkUp | the callback to invoke when the link becomes up. |
Implements ns3::WifiMac.
virtual void ns3::AdhocWifiMac::SetSifs | ( | Time | sifs | ) | [virtual] |
sifs | the sifs duration |
Implements ns3::WifiMac.
virtual void ns3::AdhocWifiMac::SetSlot | ( | Time | slotTime | ) | [virtual] |
slotTime | the slot duration |
Implements ns3::WifiMac.
virtual void ns3::AdhocWifiMac::SetSsid | ( | Ssid | ssid | ) | [virtual] |
ssid | the current ssid of this MAC layer. |
Implements ns3::WifiMac.
phy | the physical layer attached to this MAC. |
Implements ns3::WifiMac.
virtual void ns3::AdhocWifiMac::SetWifiRemoteStationManager | ( | Ptr< WifiRemoteStationManager > | stationManager | ) | [virtual] |
stationManager | the station manager attached to this MAC. |
Implements ns3::WifiMac.