LEFT | RIGHT |
1 /* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */ | 1 /* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */ |
2 /* | 2 /* |
3 * Copyright (c) 2008 INRIA | 3 * Copyright (c) 2008 INRIA |
4 * | 4 * |
5 * This program is free software; you can redistribute it and/or modify | 5 * This program is free software; you can redistribute it and/or modify |
6 * it under the terms of the GNU General Public License version 2 as· | 6 * it under the terms of the GNU General Public License version 2 as· |
7 * published by the Free Software Foundation; | 7 * published by the Free Software Foundation; |
8 * | 8 * |
9 * This program is distributed in the hope that it will be useful, | 9 * This program is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
216 * purposes. | 216 * purposes. |
217 */ | 217 */ |
218 void NotifyRxDrop (Ptr<const Packet> packet); | 218 void NotifyRxDrop (Ptr<const Packet> packet); |
219 /** | 219 /** |
220 * \param standard the wifi standard to be configured | 220 * \param standard the wifi standard to be configured |
221 */ | 221 */ |
222 void ConfigureStandard (enum WifiPhyStandard standard); | 222 void ConfigureStandard (enum WifiPhyStandard standard); |
223 | 223 |
224 protected: | 224 protected: |
225 void ConfigureDcf (Ptr<Dcf> dcf, uint32_t cwmin, uint32_t cwmax, enum AccessCl
ass ac); | 225 void ConfigureDcf (Ptr<Dcf> dcf, uint32_t cwmin, uint32_t cwmax, enum AccessCl
ass ac); |
| 226 void ConfigureCCHDcf (Ptr<Dcf> dcf, uint32_t cwmin, uint32_t cwmax, enum Acces
sClass ac); |
226 private: | 227 private: |
227 static Time GetDefaultMaxPropagationDelay (void); | 228 static Time GetDefaultMaxPropagationDelay (void); |
228 static Time GetDefaultSlot (void); | 229 static Time GetDefaultSlot (void); |
229 static Time GetDefaultSifs (void); | 230 static Time GetDefaultSifs (void); |
230 static Time GetDefaultEifsNoDifs (void); | 231 static Time GetDefaultEifsNoDifs (void); |
231 static Time GetDefaultCtsAckDelay (void); | 232 static Time GetDefaultCtsAckDelay (void); |
232 static Time GetDefaultCtsAckTimeout (void); | 233 static Time GetDefaultCtsAckTimeout (void); |
233 static Time GetDefaultBasicBlockAckDelay (void); | 234 static Time GetDefaultBasicBlockAckDelay (void); |
234 static Time GetDefaultBasicBlockAckTimeout (void); | 235 static Time GetDefaultBasicBlockAckTimeout (void); |
235 static Time GetDefaultCompressedBlockAckDelay (void); | 236 static Time GetDefaultCompressedBlockAckDelay (void); |
236 static Time GetDefaultCompressedBlockAckTimeout (void); | 237 static Time GetDefaultCompressedBlockAckTimeout (void); |
237 /** | 238 /** |
238 * \param standard the phy standard to be used | 239 * \param standard the phy standard to be used |
239 * | 240 * |
240 * This method is called by ns3::WifiMac::ConfigureStandard to complete | 241 * This method is called by ns3::WifiMac::ConfigureStandard to complete |
241 * the configuration process for a requested phy standard. Subclasses should | 242 * the configuration process for a requested phy standard. Subclasses should |
242 * implement this method to configure their dcf queues according to the | 243 * implement this method to configure their dcf queues according to the |
243 * requested standard. | 244 * requested standard. |
244 */ | 245 */ |
245 virtual void FinishConfigureStandard (enum WifiPhyStandard standard) = 0; | 246 virtual void FinishConfigureStandard (enum WifiPhyStandard standard) = 0; |
246 | 247 |
247 Time m_maxPropagationDelay; | 248 Time m_maxPropagationDelay; |
248 uint32_t m_maxMsduSize; | 249 uint32_t m_maxMsduSize; |
249 | 250 |
250 void Configure80211a (void); | 251 void Configure80211a (void); |
251 void Configure80211b (void); | 252 void Configure80211b (void); |
252 void Configure80211_10Mhz (void); | 253 void Configure80211_10Mhz (void); |
253 void Configure80211_5Mhz (); | 254 void Configure80211_5Mhz (); |
| 255 void Configure80211p_CCH (void); |
| 256 void Configure80211p_SCH (void); |
254 | 257 |
255 /** | 258 /** |
256 * The trace source fired when packets come into the "top" of the device | 259 * The trace source fired when packets come into the "top" of the device |
257 * at the L3/L2 transition, before being queued for transmission. | 260 * at the L3/L2 transition, before being queued for transmission. |
258 * | 261 * |
259 * \see class CallBackTraceSource | 262 * \see class CallBackTraceSource |
260 */ | 263 */ |
261 TracedCallback<Ptr<const Packet> > m_macTxTrace; | 264 TracedCallback<Ptr<const Packet> > m_macTxTrace; |
262 | 265 |
263 /** | 266 /** |
(...skipping 28 matching lines...) Expand all Loading... |
292 * | 295 * |
293 * \see class CallBackTraceSource | 296 * \see class CallBackTraceSource |
294 */ | 297 */ |
295 TracedCallback<Ptr<const Packet> > m_macRxDropTrace; | 298 TracedCallback<Ptr<const Packet> > m_macRxDropTrace; |
296 | 299 |
297 }; | 300 }; |
298 | 301 |
299 } // namespace ns3 | 302 } // namespace ns3 |
300 | 303 |
301 #endif /* WIFI_MAC_H */ | 304 #endif /* WIFI_MAC_H */ |
LEFT | RIGHT |