ns-3
ns3::AdhocWifiMac Class Reference
Inheritance diagram for ns3::AdhocWifiMac:
Collaboration diagram for ns3::AdhocWifiMac:

List of all members.

Public Member Functions

virtual void SetAddress (Mac48Address address)
virtual void SetLinkUpCallback (Callback< void > linkUp)
virtual void Enqueue (Ptr< const Packet > packet, Mac48Address to)

Static Public Member Functions

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

Member Function Documentation

void ns3::AdhocWifiMac::Enqueue ( Ptr< const Packet packet,
Mac48Address  to 
) [virtual]
Parameters:
packetthe packet to send.
tothe 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 channel access function determines that access is granted to this MAC.

Implements ns3::RegularWifiMac.

References ns3::WifiRemoteStationManager::AddSupportedMode(), ns3::RegularWifiMac::GetBssid(), ns3::WifiPhy::GetMode(), ns3::WifiPhy::GetNModes(), ns3::RegularWifiMac::m_dca, ns3::RegularWifiMac::m_edca, ns3::RegularWifiMac::m_qosSupported, NS_ASSERT, NS_LOG_FUNCTION, ns3::QosUtilsGetTidForPacket(), ns3::QosUtilsMapTidToAc(), and ns3::DcaTxop::Queue().

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:

  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::RegularWifiMac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::WifiMac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::WifiMac/$ns3::RegularWifiMac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::WifiNetDevice/Mac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::WifiNetDevice/Mac/$ns3::RegularWifiMac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::RegularWifiMac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::WifiMac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::WifiMac/$ns3::RegularWifiMac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::WifiNetDevice/Mac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::WifiNetDevice/Mac/$ns3::RegularWifiMac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::WifiNetDevice/Mac/$ns3::AdhocWifiMac
  • /NodeList/[i]/DeviceList/[i]/$ns3::WifiNetDevice/Mac/$ns3::RegularWifiMac/$ns3::AdhocWifiMac

No Attributes defined for this type.
Attributes defined in parent class ns3::RegularWifiMac:

Attributes defined in parent class ns3::WifiMac:

  • CtsTimeout: When this timeout expires, the RTS/CTS handshake has failed.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +75000.0ns
    • Flags: construct write read
  • AckTimeout: When this timeout expires, the DATA/ACK handshake has failed.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +75000.0ns
    • Flags: construct write read
  • BasicBlockAckTimeout: When this timeout expires, the BASIC_BLOCK_ACK_REQ/BASIC_BLOCK_ACK handshake has failed.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +281000.0ns
    • Flags: construct write read
  • CompressedBlockAckTimeout: When this timeout expires, the COMPRESSED_BLOCK_ACK_REQ/COMPRESSED_BLOCK_ACK handshake has failed.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +99000.0ns
    • Flags: construct write read
  • Sifs: The value of the SIFS constant.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +16000.0ns
    • Flags: construct write read
  • EifsNoDifs: The value of EIFS-DIFS
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +60000.0ns
    • Flags: construct write read
  • Slot: The duration of a Slot.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +9000.0ns
    • Flags: construct write read
  • Pifs: The value of the PIFS constant.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +25000.0ns
    • Flags: construct write read
  • MaxPropagationDelay: The maximum propagation delay. Unused for now.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +3333.0ns
    • Flags: construct write read
  • Ssid: The ssid we want to belong to.
    • Set with class: SsidValue
    • Underlying type: Ssid
    • Initial value: default
    • Flags: construct write read

No TraceSources defined for this type.
TraceSources defined in parent class ns3::RegularWifiMac:

  • TxOkHeader: The header of successfully transmitted packet
  • TxErrHeader: The header of unsuccessfully transmitted packet

TraceSources defined in parent class ns3::WifiMac:

  • MacTx: A packet has been received from higher layers and is being processed in preparation for queueing for transmission.
  • MacTxDrop: A packet has been dropped in the MAC layer before being queued for transmission.
  • MacPromiscRx: A packet has been received by this device, has been passed up from the physical layer and is being forwarded up the local protocol stack. This is a promiscuous trace,
  • MacRx: A packet has been received by this device, has been passed up from the physical layer and is being forwarded up the local protocol stack. This is a non-promiscuous trace,
  • MacRxDrop: A packet has been dropped in the MAC layer after it has been passed up from the physical layer.

Reimplemented from ns3::RegularWifiMac.

References ns3::TypeId::SetParent().

void ns3::AdhocWifiMac::SetAddress ( Mac48Address  address) [virtual]
Parameters:
addressthe current address of this MAC layer.

Reimplemented from ns3::RegularWifiMac.

References ns3::RegularWifiMac::SetBssid().

void ns3::AdhocWifiMac::SetLinkUpCallback ( Callback< void >  linkUp) [virtual]
Parameters:
linkUpthe callback to invoke when the link becomes up.

Reimplemented from ns3::RegularWifiMac.

References NS_LOG_FUNCTION.


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