handle RTS/CTS/DATA/ACK transactions.
More...
#include <mac-low.h>
List of all members.
Public Types |
typedef Callback< void, Ptr
< Packet >, const
WifiMacHeader * > | MacLowRxCallback |
Public Member Functions |
void | SetPhy (Ptr< WifiPhy > phy) |
void | SetWifiRemoteStationManager (Ptr< WifiRemoteStationManager > manager) |
void | SetAddress (Mac48Address ad) |
void | SetAckTimeout (Time ackTimeout) |
void | SetCtsTimeout (Time ctsTimeout) |
void | SetSifs (Time sifs) |
void | SetSlotTime (Time slotTime) |
void | SetPifs (Time pifs) |
void | SetBssid (Mac48Address ad) |
Mac48Address | GetAddress (void) const |
Time | GetAckTimeout (void) const |
Time | GetCtsTimeout (void) const |
Time | GetSifs (void) const |
Time | GetSlotTime (void) const |
Time | GetPifs (void) const |
Mac48Address | GetBssid (void) const |
void | SetRxCallback (Callback< void, Ptr< Packet >, const WifiMacHeader * > callback) |
void | RegisterDcfListener (MacLowDcfListener *listener) |
Time | CalculateTransmissionTime (Ptr< const Packet > packet, const WifiMacHeader *hdr, const MacLowTransmissionParameters ¶meters) const |
void | StartTransmission (Ptr< const Packet > packet, const WifiMacHeader *hdr, MacLowTransmissionParameters parameters, MacLowTransmissionListener *listener) |
void | ReceiveOk (Ptr< Packet > packet, double rxSnr, WifiMode txMode, WifiPreamble preamble) |
void | ReceiveError (Ptr< const Packet > packet, double rxSnr) |
void | NotifySwitchingStartNow (Time duration) |
Detailed Description
handle RTS/CTS/DATA/ACK transactions.
Member Function Documentation
- Parameters:
-
| packet | to send (does not include the 802.11 MAC header and checksum) |
| hdr | header associated to the packet to send. |
| parameters | transmission parameters of packet. |
This transmission time includes the time required for the next packet transmission if one was selected.
void ns3::MacLow::NotifySwitchingStartNow |
( |
Time |
duration |
) |
|
- Parameters:
-
| duration | switching delay duration. |
This method is typically invoked by the PhyMacLowListener to notify the MAC layer that a channel switching occured. When a channel switching occurs, pending MAC transmissions (RTS, CTS, DATA and ACK) are cancelled.
void ns3::MacLow::ReceiveError |
( |
Ptr< const Packet > |
packet, |
|
|
double |
rxSnr | |
|
) |
| | |
- Parameters:
-
| packet | packet received. |
| rxSnr | snr of packet received. |
This method is typically invoked by the lower PHY layer to notify the MAC layer that a packet was unsuccessfully received.
void ns3::MacLow::ReceiveOk |
( |
Ptr< Packet > |
packet, |
|
|
double |
rxSnr, |
|
|
WifiMode |
txMode, |
|
|
WifiPreamble |
preamble | |
|
) |
| | |
- Parameters:
-
| packet | packet received |
| rxSnr | snr of packet received |
| txMode | transmission mode of packet received |
| preamble | type of preamble used for the packet received |
This method is typically invoked by the lower PHY layer to notify the MAC layer that a packet was successfully received.
- Parameters:
-
| listener | listen to NAV events for every incoming and outgoing packet. |
- Parameters:
-
| callback | the callback which receives every incoming packet. |
This callback typically forwards incoming packets to an instance of ns3::MacRxMiddle.
- Parameters:
-
| packet | packet to send |
| hdr | 802.11 header for packet to send |
| parameters | the transmission parameters to use for this packet. |
| listener | listen to transmission events. |
Start the transmission of the input packet and notify the listener of transmission events.
The documentation for this class was generated from the following file:
- src/devices/wifi/mac-low.h