21 #ifndef CARA_WIFI_MANAGER_H    22 #define CARA_WIFI_MANAGER_H    24 #include "ns3/traced-value.h"    25 #include "ns3/wifi-remote-station-manager.h"    60                      double rxSnr, 
WifiMode txMode) 
override;
    64                       double ctsSnr, 
WifiMode ctsMode, 
double rtsSnr) 
override;
    66                        double dataSnr, uint16_t dataChannelWidth, uint8_t dataNss) 
override;
    72                   uint32_t size, 
bool normally) 
override;
 WifiRemoteStation * DoCreateStation(void) const override
void DoReportRxOk(WifiRemoteStation *station, double rxSnr, WifiMode txMode) override
This method is a pure virtual method that must be implemented by the sub-class. 
This class mimics the TXVECTOR which is to be passed to the PHY in order to define the parameters whi...
void DoReportRtsOk(WifiRemoteStation *station, double ctsSnr, WifiMode ctsMode, double rtsSnr) override
This method is a pure virtual method that must be implemented by the sub-class. 
uint32_t m_timerTimeout
timer threshold 
virtual ~CaraWifiManager()
represent a single transmission modeA WifiMode is implemented by a single integer which is used to lo...
TracedValue< uint64_t > m_currentRate
Trace rate changes. 
void DoReportFinalRtsFailed(WifiRemoteStation *station) override
This method is a pure virtual method that must be implemented by the sub-class. 
uint32_t m_probeThreshold
probe threshold 
uint32_t m_failureThreshold
failure threshold 
static TypeId GetTypeId(void)
Get the type ID. 
void DoReportDataOk(WifiRemoteStation *station, double ackSnr, WifiMode ackMode, double dataSnr, uint16_t dataChannelWidth, uint8_t dataNss) override
This method is a pure virtual method that must be implemented by the sub-class. 
WifiTxVector DoGetDataTxVector(WifiRemoteStation *station) override
hold a list of per-remote-station state. 
void DoReportRtsFailed(WifiRemoteStation *station) override
This method is a pure virtual method that must be implemented by the sub-class. 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
void DoReportDataFailed(WifiRemoteStation *station) override
This method is a pure virtual method that must be implemented by the sub-class. 
bool DoNeedRts(WifiRemoteStation *station, uint32_t size, bool normally) override
WifiTxVector DoGetRtsTxVector(WifiRemoteStation *station) override
uint32_t m_successThreshold
success threshold 
implement the CARA rate control algorithmImplement the CARA algorithm from: J. 
a unique identifier for an interface. 
hold per-remote-station state. 
void DoReportFinalDataFailed(WifiRemoteStation *station) override
This method is a pure virtual method that must be implemented by the sub-class. 
void DoInitialize(void) override
Initialize() implementation.