diff --git a/src/devices/wifi/adhoc-wifi-mac.cc b/src/devices/wifi/adhoc-wifi-mac.cc index 35176fdf8..0df865dfd 100644 --- a/src/devices/wifi/adhoc-wifi-mac.cc +++ b/src/devices/wifi/adhoc-wifi-mac.cc @@ -80,19 +80,34 @@ void AdhocWifiMac::SetSlot (Time slotTime) { m_dcfManager->SetSlot (slotTime); - WifiMac::SetSlot (slotTime); + m_slot = slotTime; } void AdhocWifiMac::SetSifs (Time sifs) { m_dcfManager->SetSifs (sifs); - WifiMac::SetSifs (sifs); + m_sifs = sifs; } void AdhocWifiMac::SetEifsNoDifs (Time eifsNoDifs) { m_dcfManager->SetEifsNoDifs (eifsNoDifs); - WifiMac::SetEifsNoDifs (eifsNoDifs); + m_eifsNoDifs = eifsNoDifs; +} +Time +AdhocWifiMac::GetSlot (void) const +{ + return m_slot; +} +Time +AdhocWifiMac::GetSifs (void) const +{ + return m_sifs; +} +Time +AdhocWifiMac::GetEifsNoDifs (void) const +{ + return m_eifsNoDifs; } void diff --git a/src/devices/wifi/adhoc-wifi-mac.h b/src/devices/wifi/adhoc-wifi-mac.h index c9324ef15..b8072b6ce 100644 --- a/src/devices/wifi/adhoc-wifi-mac.h +++ b/src/devices/wifi/adhoc-wifi-mac.h @@ -56,6 +56,9 @@ public: virtual void SetSlot (Time slotTime); virtual void SetSifs (Time sifs); virtual void SetEifsNoDifs (Time eifsNoDifs); + virtual Time GetSlot (void) const; + virtual Time GetSifs (void) const; + virtual Time GetEifsNoDifs (void) const; virtual void SetWifiPhy (Ptr phy); virtual void SetWifiRemoteStationManager (Ptr stationManager); virtual void Enqueue (Ptr packet, Mac48Address to); @@ -84,6 +87,9 @@ private: Ptr m_low; Mac48Address m_address; Ssid m_ssid; + Time m_slot; + Time m_sifs; + Time m_eifsNoDifs; }; } // namespace ns3 diff --git a/src/devices/wifi/nqap-wifi-mac.cc b/src/devices/wifi/nqap-wifi-mac.cc index e8b0f6e86..afa725c19 100644 --- a/src/devices/wifi/nqap-wifi-mac.cc +++ b/src/devices/wifi/nqap-wifi-mac.cc @@ -122,20 +122,36 @@ void NqapWifiMac::SetSlot (Time slotTime) { m_dcfManager->SetSlot (slotTime); - WifiMac::SetSlot (slotTime); + m_slot = slotTime; } void NqapWifiMac::SetSifs (Time sifs) { m_dcfManager->SetSifs (sifs); - WifiMac::SetSifs (sifs); + m_sifs = sifs; } void NqapWifiMac::SetEifsNoDifs (Time eifsNoDifs) { m_dcfManager->SetEifsNoDifs (eifsNoDifs); - WifiMac::SetEifsNoDifs (eifsNoDifs); + m_eifsNoDifs = eifsNoDifs; } +Time +NqapWifiMac::GetSlot (void) const +{ + return m_slot; +} +Time +NqapWifiMac::GetSifs (void) const +{ + return m_sifs; +} +Time +NqapWifiMac::GetEifsNoDifs (void) const +{ + return m_eifsNoDifs; +} + void NqapWifiMac::SetWifiPhy (Ptr phy) diff --git a/src/devices/wifi/nqap-wifi-mac.h b/src/devices/wifi/nqap-wifi-mac.h index 212d555fa..52cd76705 100644 --- a/src/devices/wifi/nqap-wifi-mac.h +++ b/src/devices/wifi/nqap-wifi-mac.h @@ -62,6 +62,9 @@ public: virtual void SetSlot (Time slotTime); virtual void SetSifs (Time sifs); virtual void SetEifsNoDifs (Time eifsNoDifs); + virtual Time GetSlot (void) const; + virtual Time GetSifs (void) const; + virtual Time GetEifsNoDifs (void) const; virtual void SetWifiPhy (Ptr phy); virtual void SetWifiRemoteStationManager (Ptr stationManager); virtual void Enqueue (Ptr packet, Mac48Address to); @@ -115,6 +118,9 @@ private: Mac48Address m_address; Ssid m_ssid; EventId m_beaconEvent; + Time m_slot; + Time m_sifs; + Time m_eifsNoDifs; }; } // namespace ns3 diff --git a/src/devices/wifi/nqsta-wifi-mac.cc b/src/devices/wifi/nqsta-wifi-mac.cc index 71f4fb12a..872993150 100644 --- a/src/devices/wifi/nqsta-wifi-mac.cc +++ b/src/devices/wifi/nqsta-wifi-mac.cc @@ -129,19 +129,34 @@ void NqstaWifiMac::SetSlot (Time slotTime) { m_dcfManager->SetSlot (slotTime); - WifiMac::SetSlot (slotTime); + m_slot = slotTime; } void NqstaWifiMac::SetSifs (Time sifs) { m_dcfManager->SetSifs (sifs); - WifiMac::SetSifs (sifs); + m_sifs = sifs; } void NqstaWifiMac::SetEifsNoDifs (Time eifsNoDifs) { m_dcfManager->SetEifsNoDifs (eifsNoDifs); - WifiMac::SetEifsNoDifs (eifsNoDifs); + m_eifsNoDifs = eifsNoDifs; +} +Time +NqstaWifiMac::GetSlot (void) const +{ + return m_slot; +} +Time +NqstaWifiMac::GetSifs (void) const +{ + return m_sifs; +} +Time +NqstaWifiMac::GetEifsNoDifs (void) const +{ + return m_eifsNoDifs; } void diff --git a/src/devices/wifi/nqsta-wifi-mac.h b/src/devices/wifi/nqsta-wifi-mac.h index ea1a29378..a0aaf0fe7 100644 --- a/src/devices/wifi/nqsta-wifi-mac.h +++ b/src/devices/wifi/nqsta-wifi-mac.h @@ -62,6 +62,9 @@ public: virtual void SetSlot (Time slotTime); virtual void SetSifs (Time sifs); virtual void SetEifsNoDifs (Time eifsNoDifs); + virtual Time GetSlot (void) const; + virtual Time GetSifs (void) const; + virtual Time GetEifsNoDifs (void) const; virtual void SetWifiPhy (Ptr phy); virtual void SetWifiRemoteStationManager (Ptr stationManager); virtual void Enqueue (Ptr packet, Mac48Address to); @@ -145,6 +148,9 @@ private: Ptr m_low; Mac48Address m_address; Ssid m_ssid; + Time m_slot; + Time m_sifs; + Time m_eifsNoDifs; }; } // namespace ns3 diff --git a/src/devices/wifi/wifi-mac.cc b/src/devices/wifi/wifi-mac.cc index 54d9df970..837e96222 100644 --- a/src/devices/wifi/wifi-mac.cc +++ b/src/devices/wifi/wifi-mac.cc @@ -117,21 +117,6 @@ WifiMac::GetTypeId (void) return tid; } -void -WifiMac::SetSlot (Time slotTime) -{ - m_slot = slotTime; -} -void -WifiMac::SetEifsNoDifs (Time eifsNoDifs) -{ - m_eifsNoDifs = eifsNoDifs; -} -void -WifiMac::SetSifs (Time sifs) -{ - m_sifs = sifs; -} void WifiMac::SetPifs (Time pifs) { @@ -158,21 +143,6 @@ WifiMac::GetPifs (void) const return m_pifs; } Time -WifiMac::GetSifs (void) const -{ - return m_sifs; -} -Time -WifiMac::GetSlot (void) const -{ - return m_slot; -} -Time -WifiMac::GetEifsNoDifs (void) const -{ - return m_eifsNoDifs; -} -Time WifiMac::GetCtsTimeout (void) const { return m_ctsTimeout; diff --git a/src/devices/wifi/wifi-mac.h b/src/devices/wifi/wifi-mac.h index a40f48119..34fc03867 100644 --- a/src/devices/wifi/wifi-mac.h +++ b/src/devices/wifi/wifi-mac.h @@ -45,18 +45,18 @@ public: /** * \param slotTime the slot duration */ - virtual void SetSlot (Time slotTime); + virtual void SetSlot (Time slotTime) = 0; /** * \param sifs the sifs duration */ - virtual void SetSifs (Time sifs); + virtual void SetSifs (Time sifs) = 0; /** * \param eifsNoDifs the duration of an EIFS minus DIFS. * * This value is used to calculate the EIFS depending * on AIFSN. */ - virtual void SetEifsNoDifs (Time eifsNoDifs); + virtual void SetEifsNoDifs (Time eifsNoDifs) = 0; /** * \param pifs the pifs duration. */ @@ -87,15 +87,15 @@ public: /** * \returns the current SIFS duration. */ - Time GetSifs (void) const; + virtual Time GetSifs (void) const = 0; /** * \returns the current slot duration. */ - Time GetSlot (void) const; + virtual Time GetSlot (void) const = 0; /** * \returns the current EIFS minus DIFS duration */ - Time GetEifsNoDifs (void) const; + virtual Time GetEifsNoDifs (void) const = 0; /** * \returns the current CTS timeout duration. */