Public Member Functions | Static Public Member Functions | Protected Member Functions

ns3::UanMacAloha Class Reference

ALOHA MAC Protocol. More...

#include <uan-mac-aloha.h>

Inheritance diagram for ns3::UanMacAloha:
Inheritance graph
[legend]
Collaboration diagram for ns3::UanMacAloha:
Collaboration graph
[legend]

List of all members.

Public Member Functions

Address GetAddress (void)
virtual void SetAddress (UanAddress addr)
virtual bool Enqueue (Ptr< Packet > pkt, const Address &dest, uint16_t protocolNumber)
virtual void SetForwardUpCb (Callback< void, Ptr< Packet >, const UanAddress & > cb)
virtual void AttachPhy (Ptr< UanPhy > phy)
virtual Address GetBroadcast (void) const
virtual void Clear (void)

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::UanMacAloha.

Protected Member Functions

virtual void DoDispose ()

Detailed Description

ALOHA MAC Protocol.

The simplest MAC protocol for wireless networks. Packets enqueued are immediately transmitted. This MAC attaches a UanHeaderCommon to outgoing packets for address information. (The type field is not used)


Member Function Documentation

virtual void ns3::UanMacAloha::AttachPhy ( Ptr< UanPhy phy  )  [virtual]

Attach PHY layer to this MAC. Some MACs may be designed to work with multiple PHY layers. Others may only work with one.

Parameters:
phy Phy layer to attach to this MAC

Implements ns3::UanMac.

virtual void ns3::UanMacAloha::Clear ( void   )  [virtual]

Clears all pointer references

Implements ns3::UanMac.

virtual void ns3::UanMacAloha::DoDispose (  )  [protected, 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.

It is safe to call GetObject from within this method.

Reimplemented from ns3::Object.

virtual bool ns3::UanMacAloha::Enqueue ( Ptr< Packet pkt,
const Address dest,
uint16_t  protocolNumber 
) [virtual]

Enqueue packet to be transmitted

Parameters:
pkt Packet to be transmitted
dest Destination address
protocolNumber Protocol #. Usage varies by MAC

Implements ns3::UanMac.

Address ns3::UanMacAloha::GetAddress ( void   )  [virtual]
Returns:
MAC Address

Implements ns3::UanMac.

virtual Address ns3::UanMacAloha::GetBroadcast ( void   )  const [virtual]
Returns:
Broadcast address

Implements ns3::UanMac.

static TypeId ns3::UanMacAloha::GetTypeId ( void   )  [static]

This method returns the TypeId associated to ns3::UanMacAloha.

This object is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/LinkManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/SSManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/Classifier/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/NoiseModel/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/PropagationModel/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Mac/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Phy/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Transducer/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/LinkManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/SSManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/Classifier/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BandwidthManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BurstProfileManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/NoiseModel/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/PropagationModel/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/ConnectionManager/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/NoiseModel/$ns3::UanMacAloha
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/PropagationModel/$ns3::UanMacAloha

No Attributes defined for this type.
No TraceSources defined for this type.

Reimplemented from ns3::Object.

virtual void ns3::UanMacAloha::SetAddress ( UanAddress  addr  )  [virtual]
Parameters:
addr UanAddress for this MAC

Implements ns3::UanMac.

virtual void ns3::UanMacAloha::SetForwardUpCb ( Callback< void, Ptr< Packet >, const UanAddress & >  cb  )  [virtual]
Parameters:
cb Callback to be called when a packet is forwarded up to higher layer

Implements ns3::UanMac.


The documentation for this class was generated from the following files: