src/wifi/model/mgt-headers.h
changeset 10139 17a71cd49da3
parent 7385 10beb0e53130
child 10459 f2e90c12a44f
equal deleted inserted replaced
10138:2f8e35b43d11 10139:17a71cd49da3
    27 #include "ns3/header.h"
    27 #include "ns3/header.h"
    28 #include "status-code.h"
    28 #include "status-code.h"
    29 #include "capability-information.h"
    29 #include "capability-information.h"
    30 #include "supported-rates.h"
    30 #include "supported-rates.h"
    31 #include "ssid.h"
    31 #include "ssid.h"
       
    32 #include "ht-capabilities.h"
    32 
    33 
    33 namespace ns3 {
    34 namespace ns3 {
    34 
    35 
    35 /**
    36 /**
    36  * \ingroup wifi
    37  * \ingroup wifi
    43   ~MgtAssocRequestHeader ();
    44   ~MgtAssocRequestHeader ();
    44 
    45 
    45   void SetSsid (Ssid ssid);
    46   void SetSsid (Ssid ssid);
    46   void SetSupportedRates (SupportedRates rates);
    47   void SetSupportedRates (SupportedRates rates);
    47   void SetListenInterval (uint16_t interval);
    48   void SetListenInterval (uint16_t interval);
    48 
    49   void SetHtCapabilities(HtCapabilities htcapabilities);
       
    50   
       
    51   HtCapabilities GetHtCapabilities (void) const;
    49   Ssid GetSsid (void) const;
    52   Ssid GetSsid (void) const;
    50   SupportedRates GetSupportedRates (void) const;
    53   SupportedRates GetSupportedRates (void) const;
    51   uint16_t GetListenInterval (void) const;
    54   uint16_t GetListenInterval (void) const;
    52 
    55 
    53   static TypeId GetTypeId (void);
    56   static TypeId GetTypeId (void);
    59 
    62 
    60 private:
    63 private:
    61   Ssid m_ssid;
    64   Ssid m_ssid;
    62   SupportedRates m_rates;
    65   SupportedRates m_rates;
    63   CapabilityInformation m_capability;
    66   CapabilityInformation m_capability;
       
    67   HtCapabilities m_htCapability;
    64   uint16_t m_listenInterval;
    68   uint16_t m_listenInterval;
    65 };
    69 };
    66 
    70 
    67 
    71 
    68 /**
    72 /**
    75   MgtAssocResponseHeader ();
    79   MgtAssocResponseHeader ();
    76   ~MgtAssocResponseHeader ();
    80   ~MgtAssocResponseHeader ();
    77 
    81 
    78   StatusCode GetStatusCode (void);
    82   StatusCode GetStatusCode (void);
    79   SupportedRates GetSupportedRates (void);
    83   SupportedRates GetSupportedRates (void);
    80 
    84   HtCapabilities GetHtCapabilities (void) const;
       
    85 
       
    86   void SetHtCapabilities(HtCapabilities htcapabilities);
    81   void SetSupportedRates (SupportedRates rates);
    87   void SetSupportedRates (SupportedRates rates);
    82   void SetStatusCode (StatusCode code);
    88   void SetStatusCode (StatusCode code);
    83 
    89 
    84   static TypeId GetTypeId (void);
    90   static TypeId GetTypeId (void);
    85   virtual TypeId GetInstanceTypeId (void) const;
    91   virtual TypeId GetInstanceTypeId (void) const;
    91 private:
    97 private:
    92   SupportedRates m_rates;
    98   SupportedRates m_rates;
    93   CapabilityInformation m_capability;
    99   CapabilityInformation m_capability;
    94   StatusCode m_code;
   100   StatusCode m_code;
    95   uint16_t m_aid;
   101   uint16_t m_aid;
       
   102   HtCapabilities m_htCapability;
    96 };
   103 };
    97 
   104 
    98 
   105 
    99 /**
   106 /**
   100  * \ingroup wifi
   107  * \ingroup wifi
   107 
   114 
   108   void SetSsid (Ssid ssid);
   115   void SetSsid (Ssid ssid);
   109   void SetSupportedRates (SupportedRates rates);
   116   void SetSupportedRates (SupportedRates rates);
   110   Ssid GetSsid (void) const;
   117   Ssid GetSsid (void) const;
   111   SupportedRates GetSupportedRates (void) const;
   118   SupportedRates GetSupportedRates (void) const;
   112 
   119  HtCapabilities GetHtCapabilities (void) const;
       
   120 
       
   121   void SetHtCapabilities(HtCapabilities htcapabilities);
   113   static TypeId GetTypeId (void);
   122   static TypeId GetTypeId (void);
   114   virtual TypeId GetInstanceTypeId (void) const;
   123   virtual TypeId GetInstanceTypeId (void) const;
   115   virtual void Print (std::ostream &os) const;
   124   virtual void Print (std::ostream &os) const;
   116   virtual uint32_t GetSerializedSize (void) const;
   125   virtual uint32_t GetSerializedSize (void) const;
   117   virtual void Serialize (Buffer::Iterator start) const;
   126   virtual void Serialize (Buffer::Iterator start) const;
   118   virtual uint32_t Deserialize (Buffer::Iterator start);
   127   virtual uint32_t Deserialize (Buffer::Iterator start);
   119 private:
   128 private:
   120   Ssid m_ssid;
   129   Ssid m_ssid;
   121   SupportedRates m_rates;
   130   SupportedRates m_rates;
       
   131   HtCapabilities m_htCapability;
   122 };
   132 };
   123 
   133 
   124 
   134 
   125 /**
   135 /**
   126  * \ingroup wifi
   136  * \ingroup wifi
   133   ~MgtProbeResponseHeader ();
   143   ~MgtProbeResponseHeader ();
   134 
   144 
   135   Ssid GetSsid (void) const;
   145   Ssid GetSsid (void) const;
   136   uint64_t GetBeaconIntervalUs (void) const;
   146   uint64_t GetBeaconIntervalUs (void) const;
   137   SupportedRates GetSupportedRates (void) const;
   147   SupportedRates GetSupportedRates (void) const;
   138 
   148  HtCapabilities GetHtCapabilities (void) const;
       
   149 
       
   150   void SetHtCapabilities(HtCapabilities htcapabilities);
   139   void SetSsid (Ssid ssid);
   151   void SetSsid (Ssid ssid);
   140   void SetBeaconIntervalUs (uint64_t us);
   152   void SetBeaconIntervalUs (uint64_t us);
   141   void SetSupportedRates (SupportedRates rates);
   153   void SetSupportedRates (SupportedRates rates);
   142   uint64_t GetTimestamp ();
   154   uint64_t GetTimestamp ();
   143   static TypeId GetTypeId (void);
   155   static TypeId GetTypeId (void);
   151   uint64_t m_timestamp;
   163   uint64_t m_timestamp;
   152   Ssid m_ssid;
   164   Ssid m_ssid;
   153   uint64_t m_beaconInterval;
   165   uint64_t m_beaconInterval;
   154   SupportedRates m_rates;
   166   SupportedRates m_rates;
   155   CapabilityInformation m_capability;
   167   CapabilityInformation m_capability;
       
   168   HtCapabilities m_htCapability;
   156 };
   169 };
   157 
   170 
   158 
   171 
   159 /**
   172 /**
   160  * \ingroup wifi
   173  * \ingroup wifi