src/wifi/model/amrr-wifi-manager.h
changeset 10483 e3a02ed14587
parent 10139 17a71cd49da3
child 11450 9f4ae69f12b7
equal deleted inserted replaced
10482:b470331449bc 10483:e3a02ed14587
    58   virtual void DoReportFinalDataFailed (WifiRemoteStation *station);
    58   virtual void DoReportFinalDataFailed (WifiRemoteStation *station);
    59   virtual WifiTxVector DoGetDataTxVector (WifiRemoteStation *station, uint32_t size);
    59   virtual WifiTxVector DoGetDataTxVector (WifiRemoteStation *station, uint32_t size);
    60   virtual WifiTxVector DoGetRtsTxVector (WifiRemoteStation *station);
    60   virtual WifiTxVector DoGetRtsTxVector (WifiRemoteStation *station);
    61   virtual bool IsLowLatency (void) const;
    61   virtual bool IsLowLatency (void) const;
    62 
    62 
    63   void UpdateRetry (AmrrWifiRemoteStation *station);
    63   //void UpdateRetry (AmrrWifiRemoteStation *station);
       
    64   /**
       
    65    * Update the mode used to send to the given station.
       
    66    *
       
    67    * \param station
       
    68    */
    64   void UpdateMode (AmrrWifiRemoteStation *station);
    69   void UpdateMode (AmrrWifiRemoteStation *station);
       
    70   /**
       
    71    * Reset transmission statistics of the given station.
       
    72    *
       
    73    * \param station
       
    74    */
    65   void ResetCnt (AmrrWifiRemoteStation *station);
    75   void ResetCnt (AmrrWifiRemoteStation *station);
       
    76   /**
       
    77    * Increase the transmission rate to the given station.
       
    78    *
       
    79    * \param station
       
    80    */
    66   void IncreaseRate (AmrrWifiRemoteStation *station);
    81   void IncreaseRate (AmrrWifiRemoteStation *station);
       
    82   /**
       
    83    * Decrease the transmission rate to the given station.
       
    84    *
       
    85    * \param station
       
    86    */
    67   void DecreaseRate (AmrrWifiRemoteStation *station);
    87   void DecreaseRate (AmrrWifiRemoteStation *station);
       
    88   /**
       
    89    * Check if the current rate for the given station is the
       
    90    * minimum rate.
       
    91    *
       
    92    * \param station
       
    93    * \return true if the current rate is the minimum rate,
       
    94    *         false otherwise
       
    95    */
    68   bool IsMinRate (AmrrWifiRemoteStation *station) const;
    96   bool IsMinRate (AmrrWifiRemoteStation *station) const;
       
    97   /**
       
    98    * Check if the current rate for the given station is the
       
    99    * maximum rate.
       
   100    *
       
   101    * \param station
       
   102    * \return true if the current rate is the maximum rate,
       
   103    *         false otherwise
       
   104    */
    69   bool IsMaxRate (AmrrWifiRemoteStation *station) const;
   105   bool IsMaxRate (AmrrWifiRemoteStation *station) const;
       
   106   /**
       
   107    * Check if the number of retransmission and transmission error
       
   108    * is less than the number of successful transmission (times ratio).
       
   109    *
       
   110    * \param station
       
   111    * \return true if the number of retransmission and transmission error
       
   112    *              is less than the number of successful transmission
       
   113    *              (times ratio), false otherwise
       
   114    */
    70   bool IsSuccess (AmrrWifiRemoteStation *station) const;
   115   bool IsSuccess (AmrrWifiRemoteStation *station) const;
       
   116   /**
       
   117    * Check if the number of retransmission and transmission error
       
   118    * is greater than the number of successful transmission (times ratio).
       
   119    *
       
   120    * \param station
       
   121    * \return true if the number of retransmission and transmission error
       
   122    *              is less than the number of successful transmission
       
   123    *              (times ratio), false otherwise
       
   124    */
    71   bool IsFailure (AmrrWifiRemoteStation *station) const;
   125   bool IsFailure (AmrrWifiRemoteStation *station) const;
       
   126   /**
       
   127    * Check if the number of retransmission, transmission error,
       
   128    * and successful transmission are greater than 10.
       
   129    *
       
   130    * \param station
       
   131    * \return true if the number of retransmission, transmission error,
       
   132    *         and successful transmission are greater than 10,
       
   133    *         false otherwise
       
   134    */
    72   bool IsEnough (AmrrWifiRemoteStation *station) const;
   135   bool IsEnough (AmrrWifiRemoteStation *station) const;
    73 
   136 
    74   Time m_updatePeriod;
   137   Time m_updatePeriod;
    75   double m_failureRatio;
   138   double m_failureRatio;
    76   double m_successRatio;
   139   double m_successRatio;