src/devices/wifi/edca-txop-n.h
changeset 5819 514ec98954ab
parent 5192 fb3d57fd97e4
child 5903 395e17028faf
child 6065 0f012e7d9128
equal deleted inserted replaced
5818:57d0c9adbf8f 5819:514ec98954ab
    65 
    65 
    66 class EdcaTxopN : public Dcf
    66 class EdcaTxopN : public Dcf
    67 {
    67 {
    68 public:
    68 public:
    69 
    69 
    70   typedef Callback <void, WifiMacHeader const&> TxOk;
    70   typedef Callback <void, const WifiMacHeader&> TxOk;
    71   typedef Callback <void, WifiMacHeader const&> TxFailed;
    71   typedef Callback <void, const WifiMacHeader&> TxFailed;
    72   
    72   
    73   static TypeId GetTypeId (void);
    73   static TypeId GetTypeId (void);
    74   EdcaTxopN ();
    74   EdcaTxopN ();
    75   virtual ~EdcaTxopN ();
    75   virtual ~EdcaTxopN ();
    76   void DoDispose ();
    76   void DoDispose ();
   126   WifiRemoteStation *GetStation (Mac48Address to) const;
   126   WifiRemoteStation *GetStation (Mac48Address to) const;
   127   bool IsLastFragment (void) const;
   127   bool IsLastFragment (void) const;
   128   void NextFragment (void);
   128   void NextFragment (void);
   129   Ptr<Packet> GetFragmentPacket (WifiMacHeader *hdr);
   129   Ptr<Packet> GetFragmentPacket (WifiMacHeader *hdr);
   130   
   130   
   131   void Queue (Ptr<const Packet> packet, WifiMacHeader const &hdr);
   131   void Queue (Ptr<const Packet> packet, const WifiMacHeader &hdr);
   132   void SetMsduAggregator (Ptr<MsduAggregator> aggr);
   132   void SetMsduAggregator (Ptr<MsduAggregator> aggr);
   133 
   133 
   134 private:
   134 private:
   135   /**
   135   /**
   136    * This functions are used only to correctly set addresses in a-msdu subframe.
   136    * This functions are used only to correctly set addresses in a-msdu subframe.
   139    *   DA = Address3
   139    *   DA = Address3
   140    * If aggregating sta is an AP
   140    * If aggregating sta is an AP
   141    *   SA = Address3
   141    *   SA = Address3
   142    *   DA = Address1
   142    *   DA = Address1
   143    */
   143    */
   144   Mac48Address MapSrcAddressForAggregation (WifiMacHeader const &hdr);
   144   Mac48Address MapSrcAddressForAggregation (const WifiMacHeader &hdr);
   145   Mac48Address MapDestAddressForAggregation (WifiMacHeader const &hdr);
   145   Mac48Address MapDestAddressForAggregation (const WifiMacHeader &hdr);
   146   EdcaTxopN &operator = (const EdcaTxopN &);
   146   EdcaTxopN &operator = (const EdcaTxopN &);
   147   EdcaTxopN (const EdcaTxopN &);
   147   EdcaTxopN (const EdcaTxopN &);
   148   
   148   
   149   class Dcf;
   149   class Dcf;
   150   class TransmissionListener;
   150   class TransmissionListener;