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) 2009 MIRKO BANCHI | 3 * Copyright (c) 2009 MIRKO BANCHI |
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 |
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
12 * GNU General Public License for more details. | 12 * GNU General Public License for more details. |
13 * | 13 * |
14 * You should have received a copy of the GNU General Public License | 14 * You should have received a copy of the GNU General Public License |
15 * along with this program; if not, write to the Free Software | 15 * along with this program; if not, write to the Free Software |
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
17 * | 17 * |
18 * Author: Mirko Banchi <mk.banchi@gmail.com> | 18 * Author: Mirko Banchi <mk.banchi@gmail.com> |
19 */ | 19 */ |
20 | 20 |
21 #ifndef CTRL_HEADERS_H | 21 #ifndef CTRL_HEADERS_H |
22 #define CTRL_HEADERS_H | 22 #define CTRL_HEADERS_H |
23 | 23 |
24 #include "ns3/header.h" | 24 #include "ns3/header.h" |
| 25 #include "block-ack-type.h" |
25 | 26 |
26 namespace ns3 { | 27 namespace ns3 { |
27 | |
28 /** | |
29 * Enumeration for different block ACK policies. | |
30 */ | |
31 enum BlockAckType | |
32 { | |
33 BASIC_BLOCK_ACK, | |
34 COMPRESSED_BLOCK_ACK, | |
35 MULTI_TID_BLOCK_ACK | |
36 }; | |
37 | 28 |
38 /** | 29 /** |
39 * \ingroup wifi | 30 * \ingroup wifi |
40 * \brief Headers for Block ack request. | 31 * \brief Headers for Block ack request. |
41 * | 32 * |
42 * 802.11n standard includes three types of block ack: | 33 * 802.11n standard includes three types of block ack: |
43 * - Basic block ack (unique type in 802.11e) | 34 * - Basic block ack (unique type in 802.11e) |
44 * - Compressed block ack | 35 * - Compressed block ack |
45 * - Multi-TID block ack | 36 * - Multi-TID block ack |
46 * For now only basic block ack and compressed block ack | 37 * For now only basic block ack and compressed block ack |
(...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
409 union | 400 union |
410 { | 401 { |
411 uint16_t m_bitmap[64]; ///< the block ack bitmap | 402 uint16_t m_bitmap[64]; ///< the block ack bitmap |
412 uint64_t m_compressedBitmap; ///< the compressed block ack bitmap | 403 uint64_t m_compressedBitmap; ///< the compressed block ack bitmap |
413 } bitmap; ///< bitmap union type | 404 } bitmap; ///< bitmap union type |
414 }; | 405 }; |
415 | 406 |
416 } //namespace ns3 | 407 } //namespace ns3 |
417 | 408 |
418 #endif /* CTRL_HEADERS_H */ | 409 #endif /* CTRL_HEADERS_H */ |
LEFT | RIGHT |