ns-3
ns3::UanMac Class Reference

Virtual base class for all UAN MAC protocols. More...

#include <uan-mac.h>

Inheritance diagram for ns3::UanMac:
Collaboration diagram for ns3::UanMac:

List of all members.

Public Member Functions

virtual Address GetAddress (void)=0
virtual void SetAddress (UanAddress addr)=0
virtual bool Enqueue (Ptr< Packet > pkt, const Address &dest, uint16_t protocolNumber)=0
virtual void SetForwardUpCb (Callback< void, Ptr< Packet >, const UanAddress & > cb)=0
virtual void AttachPhy (Ptr< UanPhy > phy)=0
virtual Address GetBroadcast (void) const =0
virtual void Clear (void)=0
- Public Member Functions inherited from ns3::Object
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Dispose (void)
void AggregateObject (Ptr< Object > other)
AggregateIterator GetAggregateIterator (void) const
void Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount (const SimpleRefCount &o)
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
uint32_t GetReferenceCount (void) const
- Public Member Functions inherited from ns3::ObjectBase
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)

Static Public Member Functions

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

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
virtual void NotifyNewAggregate (void)
virtual void DoStart (void)
virtual void DoDispose (void)
 Object (const Object &o)

Detailed Description

Virtual base class for all UAN MAC protocols.


Member Function Documentation

virtual void ns3::UanMac::AttachPhy ( Ptr< UanPhy phy)
pure 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:
phyPhy layer to attach to this MAC

Implemented in ns3::UanMacRc, ns3::UanMacCw, ns3::UanMacRcGw, and ns3::UanMacAloha.

Referenced by ns3::UanNetDevice::SetMac(), and ns3::UanNetDevice::SetPhy().

virtual void ns3::UanMac::Clear ( void  )
pure virtual

Clears all pointer references

Implemented in ns3::UanMacRc, ns3::UanMacCw, ns3::UanMacRcGw, and ns3::UanMacAloha.

Referenced by ns3::UanNetDevice::Clear(), and ns3::UanPhyGen::Clear().

virtual bool ns3::UanMac::Enqueue ( Ptr< Packet pkt,
const Address dest,
uint16_t  protocolNumber 
)
pure virtual

Enqueue packet to be transmitted

Parameters:
pktPacket to be transmitted
destDestination address
protocolNumberProtocol #. Usage varies by MAC

Implemented in ns3::UanMacRc, ns3::UanMacCw, ns3::UanMacRcGw, and ns3::UanMacAloha.

Referenced by ns3::UanNetDevice::Send().

virtual Address ns3::UanMac::GetAddress ( void  )
pure virtual
virtual Address ns3::UanMac::GetBroadcast ( void  ) const
pure virtual
TypeId ns3::UanMac::GetTypeId ( void  )
static

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

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

  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Mac

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

Reimplemented from ns3::Object.

Reimplemented in ns3::UanMacRc, ns3::UanMacRcGw, ns3::UanMacCw, and ns3::UanMacAloha.

References ns3::TypeId::SetParent().

virtual void ns3::UanMac::SetAddress ( UanAddress  addr)
pure virtual
Parameters:
addrUanAddress for this MAC

Implemented in ns3::UanMacRc, ns3::UanMacCw, ns3::UanMacRcGw, and ns3::UanMacAloha.

Referenced by ns3::UanNetDevice::SetAddress().

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

Implemented in ns3::UanMacRc, ns3::UanMacCw, ns3::UanMacRcGw, and ns3::UanMacAloha.

Referenced by ns3::UanNetDevice::SetMac().


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