diff options
author | Jordan Augé <jordan.auge+fdio@email.com> | 2017-02-24 14:58:01 +0100 |
---|---|---|
committer | Jordan Augé <jordan.auge+fdio@cisco.com> | 2017-02-24 18:36:29 +0000 |
commit | 85a341d645b57b7cd88a26ed2ea0a314704240ea (patch) | |
tree | bdda2b35003aae20103a796f86daced160b8a730 /emu-radio/ns3-patch/wifi/model/ap-info-collection.cc | |
parent | 9b30fc10fb1cbebe651e5a107e8ca5b24de54675 (diff) |
Initial commit: vICN
Change-Id: I7ce66c4e84a6a1921c63442f858b49e083adc7a7
Signed-off-by: Jordan Augé <jordan.auge+fdio@cisco.com>
Diffstat (limited to 'emu-radio/ns3-patch/wifi/model/ap-info-collection.cc')
-rw-r--r-- | emu-radio/ns3-patch/wifi/model/ap-info-collection.cc | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/emu-radio/ns3-patch/wifi/model/ap-info-collection.cc b/emu-radio/ns3-patch/wifi/model/ap-info-collection.cc new file mode 100644 index 00000000..44d3c05b --- /dev/null +++ b/emu-radio/ns3-patch/wifi/model/ap-info-collection.cc @@ -0,0 +1,72 @@ +#include "ap-info-collection.h" + + +namespace ns3 { + +ApInfo::ApInfo (Mac48Address bssid, Time delayFromProbResp, double rssi, SupportedRates supportedRates) +:m_bssid(bssid) +,m_delayFromProbResp(delayFromProbResp) +,m_supportedRates(supportedRates) +{ + m_rssiSamples.push_back(rssi); +} + +ApInfo::ApInfo() +{ + +} + +void +ApInfo::addRssi (double rssi) +{ + m_rssiSamples.push_back(rssi); +} + +void +ApInfo::removeRssi (double rssi) +{ + std::vector<double>::iterator it; + for(it=m_rssiSamples.begin();it!=m_rssiSamples.end();it++) + { + if(*it == rssi) + break; + } + m_rssiSamples.erase(it); +} + + +Mac48Address +ApInfo::getBssid() const +{ + return m_bssid; +} + +Time +ApInfo::getDelayFromProbResp() const +{ + return m_delayFromProbResp; +} + +double +ApInfo::getAverageRssi () const +{ + if(m_rssiSamples.empty()) + return -1.0; + + double sum=0; + std::vector<double>::const_iterator it; + for(it=m_rssiSamples.begin();it!=m_rssiSamples.end();it++) + { + sum+=*it; + } + + return sum/m_rssiSamples.size(); +} + +SupportedRates +ApInfo::getSupportedRates() const +{ + return m_supportedRates; +} + +} //namespace ns3 |