Index: src/devices/wifi/wifi-mac.h |
=================================================================== |
--- a/src/devices/wifi/wifi-mac.h |
+++ b/src/devices/wifi/wifi-mac.h |
@@ -163,10 +163,23 @@ |
* \param stationManager the station manager attached to this MAC. |
*/ |
virtual void SetWifiRemoteStationManager (Ptr<WifiRemoteStationManager> stationManager) = 0; |
+ |
/** |
- * \param upCallback the callback to invoke when a packet must be forwarded up the stack. |
+ * This type defines the callback of a higher layer that a |
+ * WifiMac(-derived) object invokes to pass a packet up the stack. |
+ * |
+ * \param packet the packet that has been received. |
+ * \param from the MAC address of the device that sent the packet. |
+ * \param to the MAC address ot the device that the packet is |
+ * destined for. |
*/ |
- virtual void SetForwardUpCallback (Callback<void,Ptr<Packet>, Mac48Address, Mac48Address> upCallback) = 0; |
+ typedef Callback<void, Ptr<Packet>, Mac48Address, Mac48Address> ForwardUpCallback; |
+ |
+ /** |
+ * \param upCallback the callback to invoke when a packet must be |
+ * forwarded up the stack. |
+ */ |
+ virtual void SetForwardUpCallback (ForwardUpCallback upCallback) = 0; |
/** |
* \param linkUp the callback to invoke when the link becomes up. |
*/ |
@@ -175,13 +188,6 @@ |
* \param linkDown the callback to invoke when the link becomes down. |
*/ |
virtual void SetLinkDownCallback (Callback<void> linkDown) = 0; |
- /* Next functions are not pure virtual so non Qos WifiMacs are not |
- * forced to implement them. |
- */ |
- virtual void SetBasicBlockAckTimeout (Time blockAckTimeout); |
- virtual Time GetBasicBlockAckTimeout (void) const; |
- virtual void SetCompressedBlockAckTimeout (Time blockAckTimeout); |
- virtual Time GetCompressedBlockAckTimeout (void) const; |
/** |
* Public method used to fire a MacTx trace. Implemented for encapsulation |
@@ -220,17 +226,15 @@ |
protected: |
void ConfigureDcf (Ptr<Dcf> dcf, uint32_t cwmin, uint32_t cwmax, enum AcIndex ac); |
void ConfigureCCHDcf (Ptr<Dcf> dcf, uint32_t cwmin, uint32_t cwmax, enum AcIndex ac); |
-private: |
+ |
static Time GetDefaultMaxPropagationDelay (void); |
static Time GetDefaultSlot (void); |
static Time GetDefaultSifs (void); |
static Time GetDefaultEifsNoDifs (void); |
static Time GetDefaultCtsAckDelay (void); |
static Time GetDefaultCtsAckTimeout (void); |
- static Time GetDefaultBasicBlockAckDelay (void); |
- static Time GetDefaultBasicBlockAckTimeout (void); |
- static Time GetDefaultCompressedBlockAckDelay (void); |
- static Time GetDefaultCompressedBlockAckTimeout (void); |
+ |
+private: |
/** |
* \param standard the phy standard to be used |
* |