A Discrete-Event Network Simulator
API
block-ack-type.h
Go to the documentation of this file.
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2 /*
3  * Copyright (c) 2018
4  *
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
7  * published by the Free Software Foundation;
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
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
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17  *
18  * Author: Sébastien Deronne <sebastien.deronne@gmail.com>
19  */
20 
21 #ifndef BLOCK_ACK_TYPE_H
22 #define BLOCK_ACK_TYPE_H
23 
24 #include <ostream>
25 #include <vector>
26 
27 namespace ns3 {
28 
34 {
39  enum Variant
40  {
45  MULTI_STA
46  };
47  enum Variant m_variant;
48  std::vector<uint8_t> m_bitmapLen;
49 
53  BlockAckType ();
67  BlockAckType (Variant v, std::vector<uint8_t> l);
68 };
69 
75 {
80  enum Variant
81  {
85  MULTI_TID
86  };
87  enum Variant m_variant;
88  uint8_t m_nSeqControls;
89 
94  BlockAckReqType ();
108  BlockAckReqType (Variant v, uint8_t nSeqControls);
109 };
110 
118 std::ostream &operator << (std::ostream &os, const BlockAckType &type);
119 
127 std::ostream &operator << (std::ostream &os, const BlockAckReqType &type);
128 
129 } //namespace ns3
130 
131 #endif /* BLOCK_ACK_TYPE_H */
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
ns3::BlockAckType::m_variant
enum Variant m_variant
Block Ack variant.
Definition: block-ack-type.h:47
ns3::BlockAckType::MULTI_STA
@ MULTI_STA
Definition: block-ack-type.h:45
ns3::BlockAckReqType::m_nSeqControls
uint8_t m_nSeqControls
Number of included Starting Sequence Control fields.
Definition: block-ack-type.h:88
ns3::BlockAckReqType::Variant
Variant
The BlockAckReq variants.
Definition: block-ack-type.h:81
ns3::BlockAckType::MULTI_TID
@ MULTI_TID
Definition: block-ack-type.h:44
ns3::BlockAckReqType
The different BlockAckRequest variants.
Definition: block-ack-type.h:75
ns3::BlockAckType
The different BlockAck variants.
Definition: block-ack-type.h:34
ns3::BlockAckReqType::COMPRESSED
@ COMPRESSED
Definition: block-ack-type.h:83
ns3::BlockAckType::BlockAckType
BlockAckType()
Default constructor for BlockAckType.
Definition: block-ack-type.cc:47
ns3::BlockAckReqType::EXTENDED_COMPRESSED
@ EXTENDED_COMPRESSED
Definition: block-ack-type.h:84
ns3::BlockAckType::Variant
Variant
The BlockAck variants.
Definition: block-ack-type.h:40
ns3::BlockAckType::m_bitmapLen
std::vector< uint8_t > m_bitmapLen
Length (bytes) of included bitmaps.
Definition: block-ack-type.h:48
ns3::BlockAckType::COMPRESSED
@ COMPRESSED
Definition: block-ack-type.h:42
ns3::BlockAckReqType::BASIC
@ BASIC
Definition: block-ack-type.h:82
ns3::BlockAckType::EXTENDED_COMPRESSED
@ EXTENDED_COMPRESSED
Definition: block-ack-type.h:43
ns3::BlockAckReqType::m_variant
enum Variant m_variant
Block Ack Request variant.
Definition: block-ack-type.h:87
ns3::operator<<
std::ostream & operator<<(std::ostream &os, const Angles &a)
Definition: angles.cc:137
ns3::BlockAckReqType::MULTI_TID
@ MULTI_TID
Definition: block-ack-type.h:85
ns3::BlockAckReqType::BlockAckReqType
BlockAckReqType()
Default constructor for BlockAckReqType.
Definition: block-ack-type.cc:76
ns3::BlockAckType::BASIC
@ BASIC
Definition: block-ack-type.h:41