A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Portuguese
Docs ▼
Wiki
Manual
Models
Develop ▼
API
Bugs
API
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
mgt-headers.cc
Go to the documentation of this file.
1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2
/*
3
* Copyright (c) 2006 INRIA
4
* Copyright (c) 2009 MIRKO BANCHI
5
*
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License version 2 as
8
* published by the Free Software Foundation;
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
*
19
* Author: Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
20
* Author: Mirko Banchi <mk.banchi@gmail.com>
21
*/
22
#include "
mgt-headers.h
"
23
#include "ns3/simulator.h"
24
#include "ns3/assert.h"
25
26
namespace
ns3 {
27
28
/***********************************************************
29
* Probe Request
30
***********************************************************/
31
32
NS_OBJECT_ENSURE_REGISTERED
(MgtProbeRequestHeader);
33
34
MgtProbeRequestHeader::~MgtProbeRequestHeader
()
35
{
36
}
37
38
void
39
MgtProbeRequestHeader::SetSsid
(
Ssid
ssid)
40
{
41
m_ssid
= ssid;
42
}
43
Ssid
44
MgtProbeRequestHeader::GetSsid
(
void
)
const
45
{
46
return
m_ssid
;
47
}
48
void
49
MgtProbeRequestHeader::SetSupportedRates
(
SupportedRates
rates)
50
{
51
m_rates
= rates;
52
}
53
void
54
MgtProbeRequestHeader::SetHtCapabilities
(
HtCapabilities
htcapabilities)
55
{
56
m_htCapability
=htcapabilities;
57
}
58
59
HtCapabilities
60
MgtProbeRequestHeader::GetHtCapabilities
(
void
)
const
61
{
62
return
m_htCapability
;
63
}
64
SupportedRates
65
MgtProbeRequestHeader::GetSupportedRates
(
void
)
const
66
{
67
return
m_rates
;
68
}
69
uint32_t
70
MgtProbeRequestHeader::GetSerializedSize
(
void
)
const
71
{
72
uint32_t size = 0;
73
size +=
m_ssid
.
GetSerializedSize
();
74
size +=
m_rates
.
GetSerializedSize
();
75
size +=
m_rates
.
extended
.
GetSerializedSize
();
76
size +=
m_htCapability
.
GetSerializedSize
();
77
return
size;
78
}
79
TypeId
80
MgtProbeRequestHeader::GetTypeId
(
void
)
81
{
82
static
TypeId
tid =
TypeId
(
"ns3::MgtProbeRequestHeader"
)
83
.
SetParent
<
Header
> ()
84
.AddConstructor<MgtProbeRequestHeader> ()
85
;
86
return
tid;
87
}
88
TypeId
89
MgtProbeRequestHeader::GetInstanceTypeId
(
void
)
const
90
{
91
return
GetTypeId
();
92
}
93
void
94
MgtProbeRequestHeader::Print
(std::ostream &os)
const
95
{
96
os <<
"ssid="
<<
m_ssid
<<
", "
97
<<
"rates="
<<
m_rates
<<
", "
98
<<
"HT Capabilities="
<<
m_htCapability
;
99
}
100
void
101
MgtProbeRequestHeader::Serialize
(
Buffer::Iterator
start
)
const
102
{
103
Buffer::Iterator
i =
start
;
104
i =
m_ssid
.
Serialize
(i);
105
i =
m_rates
.
Serialize
(i);
106
i =
m_rates
.
extended
.
Serialize
(i);
107
i =
m_htCapability
.
Serialize
(i);
108
}
109
uint32_t
110
MgtProbeRequestHeader::Deserialize
(
Buffer::Iterator
start
)
111
{
112
Buffer::Iterator
i =
start
;
113
i =
m_ssid
.
Deserialize
(i);
114
i =
m_rates
.
Deserialize
(i);
115
i =
m_rates
.
extended
.
DeserializeIfPresent
(i);
116
i =
m_htCapability
.
DeserializeIfPresent
(i);
117
return
i.
GetDistanceFrom
(start);
118
}
119
120
121
/***********************************************************
122
* Probe Response
123
***********************************************************/
124
125
NS_OBJECT_ENSURE_REGISTERED
(
MgtProbeResponseHeader
);
126
127
MgtProbeResponseHeader::MgtProbeResponseHeader
()
128
{
129
}
130
MgtProbeResponseHeader::~MgtProbeResponseHeader
()
131
{
132
}
133
uint64_t
134
MgtProbeResponseHeader::GetTimestamp
()
135
{
136
return
m_timestamp
;
137
}
138
Ssid
139
MgtProbeResponseHeader::GetSsid
(
void
)
const
140
{
141
return
m_ssid
;
142
}
143
uint64_t
144
MgtProbeResponseHeader::GetBeaconIntervalUs
(
void
)
const
145
{
146
return
m_beaconInterval
;
147
}
148
SupportedRates
149
MgtProbeResponseHeader::GetSupportedRates
(
void
)
const
150
{
151
return
m_rates
;
152
}
153
void
154
MgtProbeResponseHeader::SetHtCapabilities
(
HtCapabilities
htcapabilities)
155
{
156
m_htCapability
=htcapabilities;
157
}
158
159
HtCapabilities
160
MgtProbeResponseHeader::GetHtCapabilities
(
void
)
const
161
{
162
return
m_htCapability
;
163
}
164
void
165
MgtProbeResponseHeader::SetSsid
(
Ssid
ssid)
166
{
167
m_ssid
= ssid;
168
}
169
void
170
MgtProbeResponseHeader::SetBeaconIntervalUs
(uint64_t us)
171
{
172
m_beaconInterval
= us;
173
}
174
void
175
MgtProbeResponseHeader::SetSupportedRates
(
SupportedRates
rates)
176
{
177
m_rates
= rates;
178
}
179
TypeId
180
MgtProbeResponseHeader::GetTypeId
(
void
)
181
{
182
static
TypeId
tid =
TypeId
(
"ns3::MgtProbeResponseHeader"
)
183
.
SetParent
<
Header
> ()
184
.AddConstructor<MgtProbeResponseHeader> ()
185
;
186
return
tid;
187
}
188
TypeId
189
MgtProbeResponseHeader::GetInstanceTypeId
(
void
)
const
190
{
191
return
GetTypeId
();
192
}
193
uint32_t
194
MgtProbeResponseHeader::GetSerializedSize
(
void
)
const
195
{
196
uint32_t size = 0;
197
size += 8;
// timestamp
198
size += 2;
// beacon interval
199
size +=
m_capability
.
GetSerializedSize
();
200
size +=
m_ssid
.
GetSerializedSize
();
201
size +=
m_rates
.
GetSerializedSize
();
202
//size += 3; // ds parameter set
203
size +=
m_rates
.
extended
.
GetSerializedSize
();
204
size +=
m_htCapability
.
GetSerializedSize
();
205
// xxx
206
return
size;
207
}
208
void
209
MgtProbeResponseHeader::Print
(std::ostream &os)
const
210
{
211
os <<
"ssid="
<<
m_ssid
<<
", "
212
<<
"rates="
<<
m_rates
<<
", "
213
<<
"HT Capabilities="
<<
m_htCapability
;
214
}
215
void
216
MgtProbeResponseHeader::Serialize
(
Buffer::Iterator
start
)
const
217
{
218
// timestamp
219
// beacon interval
220
// capability information
221
// ssid
222
// supported rates
223
// fh parameter set
224
// ds parameter set
225
// cf parameter set
226
// ibss parameter set
227
//XXX
228
Buffer::Iterator
i =
start
;
229
i.
WriteHtolsbU64
(
Simulator::Now
().GetMicroSeconds ());
230
i.
WriteHtolsbU16
(
m_beaconInterval
/ 1024);
231
i =
m_capability
.
Serialize
(i);
232
i =
m_ssid
.
Serialize
(i);
233
i =
m_rates
.
Serialize
(i);
234
//i.WriteU8 (0, 3); // ds parameter set.
235
i =
m_rates
.
extended
.
Serialize
(i);
236
i =
m_htCapability
.
Serialize
(i);
237
}
238
uint32_t
239
MgtProbeResponseHeader::Deserialize
(
Buffer::Iterator
start
)
240
{
241
Buffer::Iterator
i =
start
;
242
m_timestamp
= i.
ReadLsbtohU64
();
243
m_beaconInterval
= i.
ReadLsbtohU16
();
244
m_beaconInterval
*= 1024;
245
i =
m_capability
.
Deserialize
(i);
246
i =
m_ssid
.
Deserialize
(i);
247
i =
m_rates
.
Deserialize
(i);
248
//i.Next (3); // ds parameter set
249
i =
m_rates
.
extended
.
DeserializeIfPresent
(i);
250
i =
m_htCapability
.
DeserializeIfPresent
(i);
251
return
i.
GetDistanceFrom
(start);
252
}
253
254
/***********************************************************
255
* Assoc Request
256
***********************************************************/
257
258
NS_OBJECT_ENSURE_REGISTERED
(
MgtAssocRequestHeader
);
259
260
MgtAssocRequestHeader::MgtAssocRequestHeader
()
261
: m_listenInterval (0)
262
{
263
}
264
MgtAssocRequestHeader::~MgtAssocRequestHeader
()
265
{
266
}
267
268
void
269
MgtAssocRequestHeader::SetSsid
(
Ssid
ssid)
270
{
271
m_ssid
= ssid;
272
}
273
void
274
MgtAssocRequestHeader::SetSupportedRates
(
SupportedRates
rates)
275
{
276
m_rates
= rates;
277
}
278
void
279
MgtAssocRequestHeader::SetHtCapabilities
(
HtCapabilities
htcapabilities)
280
{
281
m_htCapability
= htcapabilities;
282
}
283
void
284
MgtAssocRequestHeader::SetListenInterval
(uint16_t interval)
285
{
286
m_listenInterval
= interval;
287
}
288
HtCapabilities
289
MgtAssocRequestHeader::GetHtCapabilities
(
void
)
const
290
{
291
return
m_htCapability
;
292
}
293
Ssid
294
MgtAssocRequestHeader::GetSsid
(
void
)
const
295
{
296
return
m_ssid
;
297
}
298
SupportedRates
299
MgtAssocRequestHeader::GetSupportedRates
(
void
)
const
300
{
301
return
m_rates
;
302
}
303
uint16_t
304
MgtAssocRequestHeader::GetListenInterval
(
void
)
const
305
{
306
return
m_listenInterval
;
307
}
308
309
TypeId
310
MgtAssocRequestHeader::GetTypeId
(
void
)
311
{
312
static
TypeId
tid =
TypeId
(
"ns3::MgtAssocRequestHeader"
)
313
.
SetParent
<
Header
> ()
314
.AddConstructor<MgtAssocRequestHeader> ()
315
;
316
return
tid;
317
}
318
TypeId
319
MgtAssocRequestHeader::GetInstanceTypeId
(
void
)
const
320
{
321
return
GetTypeId
();
322
}
323
uint32_t
324
MgtAssocRequestHeader::GetSerializedSize
(
void
)
const
325
{
326
uint32_t size = 0;
327
size +=
m_capability
.
GetSerializedSize
();
328
size += 2;
329
size +=
m_ssid
.
GetSerializedSize
();
330
size +=
m_rates
.
GetSerializedSize
();
331
size +=
m_htCapability
.
GetSerializedSize
();
332
size +=
m_rates
.
extended
.
GetSerializedSize
();
333
return
size;
334
}
335
void
336
MgtAssocRequestHeader::Print
(std::ostream &os)
const
337
{
338
os <<
"ssid="
<<
m_ssid
<<
", "
339
<<
"rates="
<<
m_rates
<<
", "
340
<<
"HT Capabilities="
<<
m_htCapability
;
341
}
342
void
343
MgtAssocRequestHeader::Serialize
(
Buffer::Iterator
start
)
const
344
{
345
Buffer::Iterator
i =
start
;
346
i =
m_capability
.
Serialize
(i);
347
i.
WriteHtolsbU16
(
m_listenInterval
);
348
i =
m_ssid
.
Serialize
(i);
349
i =
m_rates
.
Serialize
(i);
350
i =
m_rates
.
extended
.
Serialize
(i);
351
i =
m_htCapability
.
Serialize
(i);
352
}
353
uint32_t
354
MgtAssocRequestHeader::Deserialize
(
Buffer::Iterator
start
)
355
{
356
Buffer::Iterator
i =
start
;
357
i =
m_capability
.
Deserialize
(i);
358
m_listenInterval
= i.
ReadLsbtohU16
();
359
i =
m_ssid
.
Deserialize
(i);
360
i =
m_rates
.
Deserialize
(i);
361
i =
m_rates
.
extended
.
DeserializeIfPresent
(i);
362
i =
m_htCapability
.
DeserializeIfPresent
(i);
363
return
i.
GetDistanceFrom
(start);
364
}
365
366
/***********************************************************
367
* Assoc Response
368
***********************************************************/
369
370
NS_OBJECT_ENSURE_REGISTERED
(
MgtAssocResponseHeader
);
371
372
MgtAssocResponseHeader::MgtAssocResponseHeader
()
373
: m_aid (0)
374
{
375
}
376
MgtAssocResponseHeader::~MgtAssocResponseHeader
()
377
{
378
}
379
380
StatusCode
381
MgtAssocResponseHeader::GetStatusCode
(
void
)
382
{
383
return
m_code
;
384
}
385
SupportedRates
386
MgtAssocResponseHeader::GetSupportedRates
(
void
)
387
{
388
return
m_rates
;
389
}
390
void
391
MgtAssocResponseHeader::SetStatusCode
(
StatusCode
code)
392
{
393
m_code
= code;
394
}
395
void
396
MgtAssocResponseHeader::SetSupportedRates
(
SupportedRates
rates)
397
{
398
m_rates
= rates;
399
}
400
void
401
MgtAssocResponseHeader::SetHtCapabilities
(
HtCapabilities
htcapabilities)
402
{
403
m_htCapability
=htcapabilities;
404
}
405
406
HtCapabilities
407
MgtAssocResponseHeader::GetHtCapabilities
(
void
)
const
408
{
409
return
m_htCapability
;
410
}
411
TypeId
412
MgtAssocResponseHeader::GetTypeId
(
void
)
413
{
414
static
TypeId
tid =
TypeId
(
"ns3::MgtAssocResponseHeader"
)
415
.
SetParent
<
Header
> ()
416
.AddConstructor<MgtAssocResponseHeader> ()
417
;
418
return
tid;
419
}
420
TypeId
421
MgtAssocResponseHeader::GetInstanceTypeId
(
void
)
const
422
{
423
return
GetTypeId
();
424
}
425
uint32_t
426
MgtAssocResponseHeader::GetSerializedSize
(
void
)
const
427
{
428
uint32_t size = 0;
429
size +=
m_capability
.
GetSerializedSize
();
430
size +=
m_code
.
GetSerializedSize
();
431
size += 2;
// aid
432
size +=
m_rates
.
GetSerializedSize
();
433
size +=
m_rates
.
extended
.
GetSerializedSize
();
434
size +=
m_htCapability
.
GetSerializedSize
();
435
return
size;
436
}
437
438
void
439
MgtAssocResponseHeader::Print
(std::ostream &os)
const
440
{
441
os <<
"status code="
<<
m_code
<<
", "
442
<<
"rates="
<<
m_rates
<<
", "
443
<<
"HT Capabilities="
<<
m_htCapability
;
444
}
445
void
446
MgtAssocResponseHeader::Serialize
(
Buffer::Iterator
start
)
const
447
{
448
Buffer::Iterator
i =
start
;
449
i =
m_capability
.
Serialize
(i);
450
i =
m_code
.
Serialize
(i);
451
i.
WriteHtolsbU16
(
m_aid
);
452
i =
m_rates
.
Serialize
(i);
453
i =
m_rates
.
extended
.
Serialize
(i);
454
i =
m_htCapability
.
Serialize
(i);
455
}
456
uint32_t
457
MgtAssocResponseHeader::Deserialize
(
Buffer::Iterator
start
)
458
{
459
Buffer::Iterator
i =
start
;
460
i =
m_capability
.
Deserialize
(i);
461
i =
m_code
.
Deserialize
(i);
462
m_aid
= i.
ReadLsbtohU16
();
463
i =
m_rates
.
Deserialize
(i);
464
i =
m_rates
.
extended
.
DeserializeIfPresent
(i);
465
i =
m_htCapability
.
DeserializeIfPresent
(i);
466
return
i.
GetDistanceFrom
(start);
467
}
468
/**********************************************************
469
* ActionFrame
470
**********************************************************/
471
WifiActionHeader::WifiActionHeader
()
472
{
473
}
474
WifiActionHeader::~WifiActionHeader
()
475
{
476
}
477
void
478
WifiActionHeader::SetAction
(
WifiActionHeader::CategoryValue
type,
479
WifiActionHeader::ActionValue
action)
480
{
481
m_category
= type;
482
483
switch
(type)
484
{
485
case
BLOCK_ACK
:
486
{
487
m_actionValue
= action.
blockAck
;
488
break
;
489
}
490
case
MESH_PEERING_MGT
:
491
{
492
m_actionValue
= action.
peerLink
;
493
break
;
494
}
495
case
MESH_PATH_SELECTION
:
496
{
497
m_actionValue
= action.
pathSelection
;
498
break
;
499
}
500
case
MESH_LINK_METRIC
:
501
case
MESH_INTERWORKING
:
502
case
MESH_RESOURCE_COORDINATION
:
503
case
MESH_PROXY_FORWARDING
:
504
break
;
505
}
506
}
507
WifiActionHeader::CategoryValue
508
WifiActionHeader::GetCategory
()
509
{
510
switch
(
m_category
)
511
{
512
case
BLOCK_ACK
:
513
return
BLOCK_ACK
;
514
case
MESH_PEERING_MGT
:
515
return
MESH_PEERING_MGT
;
516
case
MESH_LINK_METRIC
:
517
return
MESH_LINK_METRIC
;
518
case
MESH_PATH_SELECTION
:
519
return
MESH_PATH_SELECTION
;
520
case
MESH_INTERWORKING
:
521
return
MESH_INTERWORKING
;
522
case
MESH_RESOURCE_COORDINATION
:
523
return
MESH_RESOURCE_COORDINATION
;
524
case
MESH_PROXY_FORWARDING
:
525
return
MESH_PROXY_FORWARDING
;
526
default
:
527
NS_FATAL_ERROR
(
"Unknown action value"
);
528
return
MESH_PEERING_MGT
;
529
}
530
}
531
WifiActionHeader::ActionValue
532
WifiActionHeader::GetAction
()
533
{
534
ActionValue
retval;
535
retval.
peerLink
=
PEER_LINK_OPEN
;
// Needs to be initialized to something to quiet valgrind in default cases
536
switch
(
m_category
)
537
{
538
case
BLOCK_ACK
:
539
switch
(
m_actionValue
)
540
{
541
case
BLOCK_ACK_ADDBA_REQUEST
:
542
retval.
blockAck
=
BLOCK_ACK_ADDBA_REQUEST
;
543
break ;
544
case
BLOCK_ACK_ADDBA_RESPONSE
:
545
retval.
blockAck
=
BLOCK_ACK_ADDBA_RESPONSE
;
546
break ;
547
case
BLOCK_ACK_DELBA
:
548
retval.
blockAck
=
BLOCK_ACK_DELBA
;
549
break ;
550
}
551
break ;
552
553
case
MESH_PEERING_MGT
:
554
switch
(
m_actionValue
)
555
{
556
case
PEER_LINK_OPEN
:
557
retval.
peerLink
=
PEER_LINK_OPEN
;
558
break ;
559
case
PEER_LINK_CONFIRM
:
560
retval.
peerLink
=
PEER_LINK_CONFIRM
;
561
break ;
562
case
PEER_LINK_CLOSE
:
563
retval.
peerLink
=
PEER_LINK_CLOSE
;
564
break ;
565
default
:
566
NS_FATAL_ERROR
(
"Unknown mesh peering management action code"
);
567
retval.
peerLink
=
PEER_LINK_OPEN
;
/* quiet compiler */
568
}
569
break ;
570
571
case
MESH_PATH_SELECTION
:
572
switch
(
m_actionValue
)
573
{
574
case
PATH_SELECTION
:
575
retval.
pathSelection
=
PATH_SELECTION
;
576
break ;
577
default
:
578
NS_FATAL_ERROR
(
"Unknown mesh path selection action code"
);
579
retval.
peerLink
=
PEER_LINK_OPEN
;
/* quiet compiler */
580
}
581
break ;
582
583
case
MESH_LINK_METRIC
:
584
// not yet supported
585
case
MESH_INTERWORKING
:
586
// not yet supported
587
case
MESH_RESOURCE_COORDINATION
:
588
// not yet supported
589
default
:
590
NS_FATAL_ERROR
(
"Unsupported mesh action"
);
591
retval.
peerLink
=
PEER_LINK_OPEN
;
/* quiet compiler */
592
}
593
return
retval;
594
}
595
TypeId
596
WifiActionHeader::GetTypeId
()
597
{
598
static
TypeId
tid =
TypeId
(
"ns3::WifiActionHeader"
)
599
.
SetParent
<
Header
> ()
600
.AddConstructor<WifiActionHeader> ();
601
return
tid;
602
}
603
TypeId
604
WifiActionHeader::GetInstanceTypeId
()
const
605
{
606
return
GetTypeId
();
607
}
608
void
609
WifiActionHeader::Print
(std::ostream &os)
const
610
{
611
}
612
uint32_t
613
WifiActionHeader::GetSerializedSize
()
const
614
{
615
return
2;
616
}
617
void
618
WifiActionHeader::Serialize
(
Buffer::Iterator
start
)
const
619
{
620
start.
WriteU8
(
m_category
);
621
start.
WriteU8
(
m_actionValue
);
622
}
623
uint32_t
624
WifiActionHeader::Deserialize
(
Buffer::Iterator
start
)
625
{
626
Buffer::Iterator
i =
start
;
627
m_category
= i.
ReadU8
();
628
m_actionValue
= i.
ReadU8
();
629
return
i.
GetDistanceFrom
(start);
630
}
631
632
/***************************************************
633
* ADDBARequest
634
****************************************************/
635
636
NS_OBJECT_ENSURE_REGISTERED
(
MgtAddBaRequestHeader
);
637
638
MgtAddBaRequestHeader::MgtAddBaRequestHeader
()
639
: m_dialogToken (1),
640
m_amsduSupport (1),
641
m_bufferSize (0)
642
{
643
}
644
645
TypeId
646
MgtAddBaRequestHeader::GetTypeId
(
void
)
647
{
648
static
TypeId
tid =
TypeId
(
"ns3::MgtAddBaRequestHeader"
)
649
.
SetParent
<
Header
> ()
650
.AddConstructor<MgtAddBaRequestHeader> ();
651
return
tid;
652
}
653
654
TypeId
655
MgtAddBaRequestHeader::GetInstanceTypeId
(
void
)
const
656
{
657
return
GetTypeId
();
658
}
659
660
void
661
MgtAddBaRequestHeader::Print
(std::ostream &os)
const
662
{
663
}
664
665
uint32_t
666
MgtAddBaRequestHeader::GetSerializedSize
(
void
)
const
667
{
668
uint32_t size = 0;
669
size += 1;
//Dialog token
670
size += 2;
//Block ack parameter set
671
size += 2;
//Block ack timeout value
672
size += 2;
//Starting sequence control
673
return
size;
674
}
675
676
void
677
MgtAddBaRequestHeader::Serialize
(
Buffer::Iterator
start
)
const
678
{
679
Buffer::Iterator
i =
start
;
680
i.
WriteU8
(
m_dialogToken
);
681
i.
WriteHtolsbU16
(
GetParameterSet
());
682
i.
WriteHtolsbU16
(
m_timeoutValue
);
683
i.
WriteHtolsbU16
(
GetStartingSequenceControl
());
684
}
685
686
uint32_t
687
MgtAddBaRequestHeader::Deserialize
(
Buffer::Iterator
start
)
688
{
689
Buffer::Iterator
i =
start
;
690
m_dialogToken
= i.
ReadU8
();
691
SetParameterSet
(i.
ReadLsbtohU16
());
692
m_timeoutValue
= i.
ReadLsbtohU16
();
693
SetStartingSequenceControl
(i.
ReadLsbtohU16
());
694
return
i.
GetDistanceFrom
(start);
695
}
696
697
void
698
MgtAddBaRequestHeader::SetDelayedBlockAck
()
699
{
700
m_policy
= 0;
701
}
702
703
void
704
MgtAddBaRequestHeader::SetImmediateBlockAck
()
705
{
706
m_policy
= 1;
707
}
708
709
void
710
MgtAddBaRequestHeader::SetTid
(uint8_t tid)
711
{
712
NS_ASSERT
(tid < 16);
713
m_tid
= tid;
714
}
715
716
void
717
MgtAddBaRequestHeader::SetTimeout
(uint16_t
timeout
)
718
{
719
m_timeoutValue
=
timeout
;
720
}
721
722
void
723
MgtAddBaRequestHeader::SetBufferSize
(uint16_t size)
724
{
725
m_bufferSize
= size;
726
}
727
728
void
729
MgtAddBaRequestHeader::SetStartingSequence
(uint16_t seq)
730
{
731
m_startingSeq
= seq;
732
}
733
734
void
735
MgtAddBaRequestHeader::SetAmsduSupport
(
bool
supported)
736
{
737
m_amsduSupport
= supported;
738
}
739
740
uint8_t
741
MgtAddBaRequestHeader::GetTid
(
void
)
const
742
{
743
return
m_tid
;
744
}
745
746
bool
747
MgtAddBaRequestHeader::IsImmediateBlockAck
(
void
)
const
748
{
749
return
(
m_policy
== 1) ?
true
:
false
;
750
}
751
752
uint16_t
753
MgtAddBaRequestHeader::GetTimeout
(
void
)
const
754
{
755
return
m_timeoutValue
;
756
}
757
758
uint16_t
759
MgtAddBaRequestHeader::GetBufferSize
(
void
)
const
760
{
761
return
m_bufferSize
;
762
}
763
764
bool
765
MgtAddBaRequestHeader::IsAmsduSupported
(
void
)
const
766
{
767
return
(
m_amsduSupport
== 1) ?
true
:
false
;
768
}
769
770
uint16_t
771
MgtAddBaRequestHeader::GetStartingSequence
(
void
)
const
772
{
773
return
m_startingSeq
;
774
}
775
776
uint16_t
777
MgtAddBaRequestHeader::GetStartingSequenceControl
(
void
)
const
778
{
779
return
(
m_startingSeq
<< 4) & 0xfff0;
780
}
781
782
void
783
MgtAddBaRequestHeader::SetStartingSequenceControl
(uint16_t seqControl)
784
{
785
m_startingSeq
= (seqControl >> 4) & 0x0fff;
786
}
787
788
uint16_t
789
MgtAddBaRequestHeader::GetParameterSet
(
void
)
const
790
{
791
uint16_t res = 0;
792
res |=
m_amsduSupport
;
793
res |=
m_policy
<< 1;
794
res |=
m_tid
<< 2;
795
res |=
m_bufferSize
<< 6;
796
return
res;
797
}
798
799
void
800
MgtAddBaRequestHeader::SetParameterSet
(uint16_t params)
801
{
802
m_amsduSupport
= (params) & 0x01;
803
m_policy
= (params >> 1) & 0x01;
804
m_tid
= (params >> 2) & 0x0f;
805
m_bufferSize
= (params >> 6) & 0x03ff;
806
}
807
808
/***************************************************
809
* ADDBAResponse
810
****************************************************/
811
812
NS_OBJECT_ENSURE_REGISTERED
(
MgtAddBaResponseHeader
);
813
814
MgtAddBaResponseHeader::MgtAddBaResponseHeader
()
815
: m_dialogToken (1),
816
m_amsduSupport (1),
817
m_bufferSize (0)
818
{
819
}
820
821
TypeId
822
MgtAddBaResponseHeader::GetTypeId
()
823
{
824
static
TypeId
tid =
TypeId
(
"ns3::MgtAddBaResponseHeader"
)
825
.
SetParent
<
Header
> ()
826
.AddConstructor<MgtAddBaResponseHeader> ()
827
;
828
return
tid;
829
}
830
831
TypeId
832
MgtAddBaResponseHeader::GetInstanceTypeId
(
void
)
const
833
{
834
return
GetTypeId
();
835
}
836
837
void
838
MgtAddBaResponseHeader::Print
(std::ostream &os)
const
839
{
840
os <<
"status code="
<<
m_code
;
841
}
842
843
uint32_t
844
MgtAddBaResponseHeader::GetSerializedSize
(
void
)
const
845
{
846
uint32_t size = 0;
847
size += 1;
//Dialog token
848
size +=
m_code
.
GetSerializedSize
();
//Status code
849
size += 2;
//Block ack parameter set
850
size += 2;
//Block ack timeout value
851
return
size;
852
}
853
854
void
855
MgtAddBaResponseHeader::Serialize
(
Buffer::Iterator
start
)
const
856
{
857
Buffer::Iterator
i =
start
;
858
i.
WriteU8
(
m_dialogToken
);
859
i =
m_code
.
Serialize
(i);
860
i.
WriteHtolsbU16
(
GetParameterSet
());
861
i.
WriteHtolsbU16
(
m_timeoutValue
);
862
}
863
864
uint32_t
865
MgtAddBaResponseHeader::Deserialize
(
Buffer::Iterator
start
)
866
{
867
Buffer::Iterator
i =
start
;
868
m_dialogToken
= i.
ReadU8
();
869
i =
m_code
.
Deserialize
(i);
870
SetParameterSet
(i.
ReadLsbtohU16
());
871
m_timeoutValue
= i.
ReadLsbtohU16
();
872
return
i.
GetDistanceFrom
(start);
873
}
874
875
void
876
MgtAddBaResponseHeader::SetDelayedBlockAck
()
877
{
878
m_policy
= 0;
879
}
880
881
void
882
MgtAddBaResponseHeader::SetImmediateBlockAck
()
883
{
884
m_policy
= 1;
885
}
886
887
void
888
MgtAddBaResponseHeader::SetTid
(uint8_t tid)
889
{
890
NS_ASSERT
(tid < 16);
891
m_tid
= tid;
892
}
893
894
void
895
MgtAddBaResponseHeader::SetTimeout
(uint16_t
timeout
)
896
{
897
m_timeoutValue
=
timeout
;
898
}
899
900
void
901
MgtAddBaResponseHeader::SetBufferSize
(uint16_t size)
902
{
903
m_bufferSize
= size;
904
}
905
906
void
907
MgtAddBaResponseHeader::SetStatusCode
(
StatusCode
code)
908
{
909
m_code
= code;
910
}
911
912
void
913
MgtAddBaResponseHeader::SetAmsduSupport
(
bool
supported)
914
{
915
m_amsduSupport
= supported;
916
}
917
918
StatusCode
919
MgtAddBaResponseHeader::GetStatusCode
(
void
)
const
920
{
921
return
m_code
;
922
}
923
924
uint8_t
925
MgtAddBaResponseHeader::GetTid
(
void
)
const
926
{
927
return
m_tid
;
928
}
929
930
bool
931
MgtAddBaResponseHeader::IsImmediateBlockAck
(
void
)
const
932
{
933
return
(
m_policy
== 1) ?
true
:
false
;
934
}
935
936
uint16_t
937
MgtAddBaResponseHeader::GetTimeout
(
void
)
const
938
{
939
return
m_timeoutValue
;
940
}
941
942
uint16_t
943
MgtAddBaResponseHeader::GetBufferSize
(
void
)
const
944
{
945
return
m_bufferSize
;
946
}
947
948
bool
949
MgtAddBaResponseHeader::IsAmsduSupported
(
void
)
const
950
{
951
return
(
m_amsduSupport
== 1) ?
true
:
false
;
952
}
953
954
uint16_t
955
MgtAddBaResponseHeader::GetParameterSet
(
void
)
const
956
{
957
uint16_t res = 0;
958
res |=
m_amsduSupport
;
959
res |=
m_policy
<< 1;
960
res |=
m_tid
<< 2;
961
res |=
m_bufferSize
<< 6;
962
return
res;
963
}
964
965
void
966
MgtAddBaResponseHeader::SetParameterSet
(uint16_t params)
967
{
968
m_amsduSupport
= (params) & 0x01;
969
m_policy
= (params >> 1) & 0x01;
970
m_tid
= (params >> 2) & 0x0f;
971
m_bufferSize
= (params >> 6) & 0x03ff;
972
}
973
974
/***************************************************
975
* DelBa
976
****************************************************/
977
978
NS_OBJECT_ENSURE_REGISTERED
(
MgtDelBaHeader
);
979
980
MgtDelBaHeader::MgtDelBaHeader
()
981
: m_reasonCode (1)
982
{
983
}
984
985
TypeId
986
MgtDelBaHeader::GetTypeId
(
void
)
987
{
988
static
TypeId
tid =
TypeId
(
"ns3::MgtDelBaHeader"
)
989
.
SetParent
<
Header
> ()
990
.AddConstructor<MgtDelBaHeader> ()
991
;
992
return
tid;
993
}
994
995
TypeId
996
MgtDelBaHeader::GetInstanceTypeId
(
void
)
const
997
{
998
return
GetTypeId
();
999
}
1000
1001
void
1002
MgtDelBaHeader::Print
(std::ostream &os)
const
1003
{
1004
}
1005
1006
uint32_t
1007
MgtDelBaHeader::GetSerializedSize
(
void
)
const
1008
{
1009
uint32_t size = 0;
1010
size += 2;
//DelBa parameter set
1011
size += 2;
//Reason code
1012
return
size;
1013
}
1014
1015
void
1016
MgtDelBaHeader::Serialize
(
Buffer::Iterator
start
)
const
1017
{
1018
Buffer::Iterator
i =
start
;
1019
i.
WriteHtolsbU16
(
GetParameterSet
());
1020
i.
WriteHtolsbU16
(
m_reasonCode
);
1021
}
1022
1023
uint32_t
1024
MgtDelBaHeader::Deserialize
(
Buffer::Iterator
start
)
1025
{
1026
Buffer::Iterator
i =
start
;
1027
SetParameterSet
(i.
ReadLsbtohU16
());
1028
m_reasonCode
= i.
ReadLsbtohU16
();
1029
return
i.
GetDistanceFrom
(start);
1030
}
1031
1032
bool
1033
MgtDelBaHeader::IsByOriginator
(
void
)
const
1034
{
1035
return
(
m_initiator
== 1) ?
true
:
false
;
1036
}
1037
1038
uint8_t
1039
MgtDelBaHeader::GetTid
(
void
)
const
1040
{
1041
NS_ASSERT
(
m_tid
< 16);
1042
uint8_t tid =
static_cast<
uint8_t
>
(
m_tid
);
1043
return
tid;
1044
}
1045
1046
void
1047
MgtDelBaHeader::SetByOriginator
(
void
)
1048
{
1049
m_initiator
= 1;
1050
}
1051
1052
void
1053
MgtDelBaHeader::SetByRecipient
(
void
)
1054
{
1055
m_initiator
= 0;
1056
}
1057
1058
void
1059
MgtDelBaHeader::SetTid
(uint8_t tid)
1060
{
1061
NS_ASSERT
(tid < 16);
1062
m_tid
=
static_cast<
uint16_t
>
(tid);
1063
}
1064
1065
uint16_t
1066
MgtDelBaHeader::GetParameterSet
(
void
)
const
1067
{
1068
uint16_t res = 0;
1069
res |=
m_initiator
<< 11;
1070
res |=
m_tid
<< 12;
1071
return
res;
1072
}
1073
1074
void
1075
MgtDelBaHeader::SetParameterSet
(uint16_t params)
1076
{
1077
m_initiator
= (params >> 11) & 0x01;
1078
m_tid
= (params >> 12) & 0x0f;
1079
}
1080
1081
}
// namespace ns3
ns3::Header
Protocol header serialization and deserialization.
Definition:
header.h:42
ns3::MgtAddBaResponseHeader::GetTypeId
static TypeId GetTypeId(void)
Definition:
mgt-headers.cc:822
ns3::MgtAddBaRequestHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Definition:
mgt-headers.cc:687
ns3::MgtProbeRequestHeader::GetSupportedRates
SupportedRates GetSupportedRates(void) const
Definition:
mgt-headers.cc:65
ns3::MgtAddBaResponseHeader::GetBufferSize
uint16_t GetBufferSize(void) const
Definition:
mgt-headers.cc:943
ns3::MgtAssocResponseHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Definition:
mgt-headers.cc:446
ns3::MgtAddBaResponseHeader::m_code
StatusCode m_code
Definition:
mgt-headers.h:355
ns3::MgtDelBaHeader::GetSerializedSize
virtual uint32_t GetSerializedSize(void) const
Definition:
mgt-headers.cc:1007
ns3::MgtProbeResponseHeader::GetSupportedRates
SupportedRates GetSupportedRates(void) const
Definition:
mgt-headers.cc:149
ns3::MgtAssocRequestHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId(void) const
Definition:
mgt-headers.cc:319
ns3::MgtAssocRequestHeader
Definition:
mgt-headers.h:40
ns3::MgtAddBaResponseHeader::m_policy
uint8_t m_policy
Definition:
mgt-headers.h:357
ns3::WifiActionHeader::Print
virtual void Print(std::ostream &os) const
Definition:
mgt-headers.cc:609
ns3::CapabilityInformation::Deserialize
Buffer::Iterator Deserialize(Buffer::Iterator start)
Definition:
capability-information.cc:100
ns3::MgtProbeResponseHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId(void) const
Definition:
mgt-headers.cc:189
ns3::MgtProbeResponseHeader::GetSsid
Ssid GetSsid(void) const
Definition:
mgt-headers.cc:139
ns3::WifiActionHeader::MESH_INTERWORKING
Definition:
mgt-headers.h:204
ns3::MgtAssocResponseHeader::m_rates
SupportedRates m_rates
Definition:
mgt-headers.h:98
ns3::MgtAssocRequestHeader::GetTypeId
static TypeId GetTypeId(void)
Definition:
mgt-headers.cc:310
ns3::MgtAddBaRequestHeader::m_timeoutValue
uint16_t m_timeoutValue
Definition:
mgt-headers.h:314
ns3::WifiActionHeader::BLOCK_ACK
Definition:
mgt-headers.h:200
ns3::MgtAddBaRequestHeader::Print
virtual void Print(std::ostream &os) const
Definition:
mgt-headers.cc:661
ns3::MgtProbeRequestHeader::m_htCapability
HtCapabilities m_htCapability
Definition:
mgt-headers.h:131
ns3::MgtProbeResponseHeader::GetBeaconIntervalUs
uint64_t GetBeaconIntervalUs(void) const
Definition:
mgt-headers.cc:144
ns3::MgtAssocRequestHeader::m_rates
SupportedRates m_rates
Definition:
mgt-headers.h:65
ns3::MgtProbeRequestHeader::GetTypeId
static TypeId GetTypeId(void)
Definition:
mgt-headers.cc:80
ns3::MgtAddBaRequestHeader::SetImmediateBlockAck
void SetImmediateBlockAck()
Definition:
mgt-headers.cc:704
ns3::MgtProbeResponseHeader::m_rates
SupportedRates m_rates
Definition:
mgt-headers.h:166
ns3::MgtAddBaRequestHeader::m_dialogToken
uint8_t m_dialogToken
Definition:
mgt-headers.h:309
ns3::MgtAssocResponseHeader::m_capability
CapabilityInformation m_capability
Definition:
mgt-headers.h:99
ns3::MgtProbeResponseHeader::m_capability
CapabilityInformation m_capability
Definition:
mgt-headers.h:167
ns3::ExtendedSupportedRatesIE::GetSerializedSize
uint16_t GetSerializedSize() const
Definition:
supported-rates.cc:195
ns3::MgtAddBaRequestHeader::SetBufferSize
void SetBufferSize(uint16_t size)
Definition:
mgt-headers.cc:723
ns3::MgtAddBaRequestHeader
Definition:
mgt-headers.h:276
ns3::WifiActionHeader::BLOCK_ACK_ADDBA_REQUEST
Definition:
mgt-headers.h:244
ns3::MgtAddBaResponseHeader::IsImmediateBlockAck
bool IsImmediateBlockAck(void) const
Definition:
mgt-headers.cc:931
ns3::WifiActionHeader::PEER_LINK_CONFIRM
Definition:
mgt-headers.h:212
ns3::WifiActionHeader::MESH_LINK_METRIC
Definition:
mgt-headers.h:202
ns3::MgtAssocRequestHeader::m_htCapability
HtCapabilities m_htCapability
Definition:
mgt-headers.h:67
NS_ASSERT
#define NS_ASSERT(condition)
Definition:
assert.h:64
ns3::MgtAssocRequestHeader::GetSerializedSize
virtual uint32_t GetSerializedSize(void) const
Definition:
mgt-headers.cc:324
ns3::WifiActionHeader::BLOCK_ACK_ADDBA_RESPONSE
Definition:
mgt-headers.h:245
ns3::HtCapabilities
The Ht Capabilities Information ElementThis class knows how to serialise and deserialise the Ht Capab...
Definition:
ht-capabilities.h:42
ns3::MgtAddBaRequestHeader::MgtAddBaRequestHeader
MgtAddBaRequestHeader()
Definition:
mgt-headers.cc:638
ns3::MgtAssocRequestHeader::SetHtCapabilities
void SetHtCapabilities(HtCapabilities htcapabilities)
Definition:
mgt-headers.cc:279
ns3::MgtAssocRequestHeader::SetSsid
void SetSsid(Ssid ssid)
Definition:
mgt-headers.cc:269
ns3::StatusCode::GetSerializedSize
uint32_t GetSerializedSize(void) const
Definition:
status-code.cc:47
ns3::MgtAddBaResponseHeader::Print
virtual void Print(std::ostream &os) const
Definition:
mgt-headers.cc:838
ns3::MgtAddBaRequestHeader::m_startingSeq
uint16_t m_startingSeq
Definition:
mgt-headers.h:315
ns3::WifiActionHeader::SetAction
void SetAction(enum CategoryValue type, ActionValue action)
Definition:
mgt-headers.cc:478
ns3::CapabilityInformation::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const
Definition:
capability-information.cc:93
ns3::WifiActionHeader::CategoryValue
CategoryValue
Definition:
mgt-headers.h:198
ns3::MgtAddBaRequestHeader::GetBufferSize
uint16_t GetBufferSize(void) const
Definition:
mgt-headers.cc:759
ns3::MgtAddBaResponseHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId(void) const
Definition:
mgt-headers.cc:832
visualizer.core.start
def start
Definition:
core.py:1482
ns3::WifiActionHeader::GetCategory
CategoryValue GetCategory()
Definition:
mgt-headers.cc:508
ns3::WifiActionHeader::~WifiActionHeader
~WifiActionHeader()
Definition:
mgt-headers.cc:474
ns3::MgtAddBaResponseHeader::SetDelayedBlockAck
void SetDelayedBlockAck()
Definition:
mgt-headers.cc:876
timeout
ns3::Time timeout
Definition:
openflow-switch.cc:52
ns3::WifiActionHeader::ActionValue::pathSelection
enum PathSelectionActionValue pathSelection
Definition:
mgt-headers.h:252
ns3::MgtDelBaHeader::SetTid
void SetTid(uint8_t)
Definition:
mgt-headers.cc:1059
ns3::MgtAddBaResponseHeader::SetStatusCode
void SetStatusCode(StatusCode code)
Definition:
mgt-headers.cc:907
ns3::SupportedRates
The Supported Rates Information ElementThis class knows how to serialise and deserialise the Supporte...
Definition:
supported-rates.h:92
ns3::MgtAssocRequestHeader::m_capability
CapabilityInformation m_capability
Definition:
mgt-headers.h:66
ns3::MgtAddBaRequestHeader::m_bufferSize
uint16_t m_bufferSize
Definition:
mgt-headers.h:313
ns3::MgtProbeRequestHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId(void) const
Definition:
mgt-headers.cc:89
ns3::MgtAddBaResponseHeader::SetTimeout
void SetTimeout(uint16_t timeout)
Definition:
mgt-headers.cc:895
ns3::WifiInformationElement::Deserialize
Buffer::Iterator Deserialize(Buffer::Iterator i)
Definition:
wifi-information-element.cc:51
ns3::MgtProbeRequestHeader::GetSsid
Ssid GetSsid(void) const
Definition:
mgt-headers.cc:44
ns3::MgtProbeRequestHeader::SetSupportedRates
void SetSupportedRates(SupportedRates rates)
Definition:
mgt-headers.cc:49
ns3::MgtAddBaRequestHeader::SetAmsduSupport
void SetAmsduSupport(bool supported)
Definition:
mgt-headers.cc:735
ns3::Buffer::Iterator::GetDistanceFrom
uint32_t GetDistanceFrom(Iterator const &o) const
Definition:
buffer.cc:807
NS_FATAL_ERROR
#define NS_FATAL_ERROR(msg)
fatal error handling
Definition:
fatal-error.h:72
ns3::WifiInformationElement::GetSerializedSize
uint16_t GetSerializedSize() const
Definition:
wifi-information-element.cc:35
ns3::MgtAssocRequestHeader::GetSsid
Ssid GetSsid(void) const
Definition:
mgt-headers.cc:294
ns3::Buffer::Iterator
iterator in a Buffer instance
Definition:
buffer.h:98
ns3::MgtDelBaHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId(void) const
Definition:
mgt-headers.cc:996
ns3::MgtAssocRequestHeader::SetSupportedRates
void SetSupportedRates(SupportedRates rates)
Definition:
mgt-headers.cc:274
ns3::MgtAddBaResponseHeader::IsAmsduSupported
bool IsAmsduSupported(void) const
Definition:
mgt-headers.cc:949
ns3::MgtAddBaRequestHeader::GetStartingSequenceControl
uint16_t GetStartingSequenceControl(void) const
Definition:
mgt-headers.cc:777
ns3::MgtDelBaHeader::m_reasonCode
uint16_t m_reasonCode
Definition:
mgt-headers.h:394
ns3::MgtAddBaResponseHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Definition:
mgt-headers.cc:855
ns3::MgtAddBaResponseHeader::SetTid
void SetTid(uint8_t tid)
Definition:
mgt-headers.cc:888
ns3::MgtProbeResponseHeader::Print
virtual void Print(std::ostream &os) const
Definition:
mgt-headers.cc:209
ns3::MgtProbeResponseHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Definition:
mgt-headers.cc:216
ns3::SupportedRates::extended
ExtendedSupportedRatesIE extended
Definition:
supported-rates.h:120
ns3::MgtAssocRequestHeader::GetSupportedRates
SupportedRates GetSupportedRates(void) const
Definition:
mgt-headers.cc:299
ns3::MgtAssocRequestHeader::SetListenInterval
void SetListenInterval(uint16_t interval)
Definition:
mgt-headers.cc:284
ns3::WifiActionHeader::GetTypeId
static TypeId GetTypeId(void)
Definition:
mgt-headers.cc:596
ns3::MgtAddBaResponseHeader::m_amsduSupport
uint8_t m_amsduSupport
Definition:
mgt-headers.h:356
ns3::MgtAddBaRequestHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId(void) const
Definition:
mgt-headers.cc:655
ns3::MgtDelBaHeader::m_initiator
uint16_t m_initiator
Definition:
mgt-headers.h:390
ns3::WifiActionHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId() const
Definition:
mgt-headers.cc:604
ns3::MgtAddBaRequestHeader::SetParameterSet
void SetParameterSet(uint16_t params)
Definition:
mgt-headers.cc:800
ns3::MgtDelBaHeader::MgtDelBaHeader
MgtDelBaHeader()
Definition:
mgt-headers.cc:980
ns3::MgtAddBaRequestHeader::m_tid
uint8_t m_tid
Definition:
mgt-headers.h:312
ns3::MgtProbeRequestHeader::m_rates
SupportedRates m_rates
Definition:
mgt-headers.h:130
ns3::WifiActionHeader::GetSerializedSize
virtual uint32_t GetSerializedSize() const
Definition:
mgt-headers.cc:613
ns3::MgtAddBaRequestHeader::SetStartingSequenceControl
void SetStartingSequenceControl(uint16_t seqControl)
Definition:
mgt-headers.cc:783
ns3::MgtAddBaResponseHeader::SetImmediateBlockAck
void SetImmediateBlockAck()
Definition:
mgt-headers.cc:882
ns3::ExtendedSupportedRatesIE::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const
Definition:
supported-rates.cc:181
ns3::MgtAddBaRequestHeader::SetTid
void SetTid(uint8_t tid)
Definition:
mgt-headers.cc:710
ns3::MgtAssocRequestHeader::GetListenInterval
uint16_t GetListenInterval(void) const
Definition:
mgt-headers.cc:304
ns3::MgtAddBaResponseHeader::SetParameterSet
void SetParameterSet(uint16_t params)
Definition:
mgt-headers.cc:966
ns3::MgtProbeRequestHeader::Print
virtual void Print(std::ostream &os) const
Definition:
mgt-headers.cc:94
ns3::NS_OBJECT_ENSURE_REGISTERED
NS_OBJECT_ENSURE_REGISTERED(AntennaModel)
ns3::MgtProbeRequestHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Definition:
mgt-headers.cc:110
ns3::WifiActionHeader::ActionValue::blockAck
enum BlockAckActionValue blockAck
Definition:
mgt-headers.h:255
ns3::MgtAddBaRequestHeader::m_amsduSupport
uint8_t m_amsduSupport
Definition:
mgt-headers.h:310
mgt-headers.h
ns3::WifiInformationElement::DeserializeIfPresent
Buffer::Iterator DeserializeIfPresent(Buffer::Iterator i)
Definition:
wifi-information-element.cc:62
ns3::WifiActionHeader::PEER_LINK_CLOSE
Definition:
mgt-headers.h:213
ns3::MgtAddBaRequestHeader::SetStartingSequence
void SetStartingSequence(uint16_t seq)
Definition:
mgt-headers.cc:729
ns3::MgtAddBaRequestHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Definition:
mgt-headers.cc:677
ns3::WifiActionHeader::MESH_RESOURCE_COORDINATION
Definition:
mgt-headers.h:205
ns3::MgtAssocRequestHeader::~MgtAssocRequestHeader
~MgtAssocRequestHeader()
Definition:
mgt-headers.cc:264
ns3::MgtAssocRequestHeader::MgtAssocRequestHeader
MgtAssocRequestHeader()
Definition:
mgt-headers.cc:260
ns3::MgtAddBaRequestHeader::GetTid
uint8_t GetTid(void) const
Definition:
mgt-headers.cc:741
ns3::WifiActionHeader::BLOCK_ACK_DELBA
Definition:
mgt-headers.h:246
ns3::MgtAssocResponseHeader::GetSupportedRates
SupportedRates GetSupportedRates(void)
Definition:
mgt-headers.cc:386
ns3::MgtProbeResponseHeader::m_timestamp
uint64_t m_timestamp
Definition:
mgt-headers.h:163
ns3::MgtProbeRequestHeader::SetHtCapabilities
void SetHtCapabilities(HtCapabilities htcapabilities)
Definition:
mgt-headers.cc:54
ns3::MgtAssocRequestHeader::m_listenInterval
uint16_t m_listenInterval
Definition:
mgt-headers.h:68
ns3::MgtAssocResponseHeader::GetInstanceTypeId
virtual TypeId GetInstanceTypeId(void) const
Definition:
mgt-headers.cc:421
ns3::MgtProbeResponseHeader::GetTimestamp
uint64_t GetTimestamp()
Definition:
mgt-headers.cc:134
ns3::MgtAddBaRequestHeader::GetSerializedSize
virtual uint32_t GetSerializedSize(void) const
Definition:
mgt-headers.cc:666
ns3::StatusCode::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const
Definition:
status-code.cc:52
ns3::MgtDelBaHeader::SetByOriginator
void SetByOriginator(void)
Definition:
mgt-headers.cc:1047
ns3::StatusCode
Definition:
status-code.h:29
ns3::MgtProbeResponseHeader::SetSsid
void SetSsid(Ssid ssid)
Definition:
mgt-headers.cc:165
ns3::MgtProbeResponseHeader::~MgtProbeResponseHeader
~MgtProbeResponseHeader()
Definition:
mgt-headers.cc:130
ns3::MgtAssocRequestHeader::Print
virtual void Print(std::ostream &os) const
Definition:
mgt-headers.cc:336
ns3::MgtDelBaHeader::SetByRecipient
void SetByRecipient(void)
Definition:
mgt-headers.cc:1053
ns3::MgtAddBaRequestHeader::IsAmsduSupported
bool IsAmsduSupported(void) const
Definition:
mgt-headers.cc:765
ns3::WifiActionHeader::MESH_PEERING_MGT
Definition:
mgt-headers.h:201
ns3::MgtDelBaHeader::GetTypeId
static TypeId GetTypeId(void)
Definition:
mgt-headers.cc:986
ns3::MgtAddBaResponseHeader::GetSerializedSize
virtual uint32_t GetSerializedSize(void) const
Definition:
mgt-headers.cc:844
ns3::WifiActionHeader::MESH_PATH_SELECTION
Definition:
mgt-headers.h:203
ns3::MgtProbeResponseHeader::SetBeaconIntervalUs
void SetBeaconIntervalUs(uint64_t us)
Definition:
mgt-headers.cc:170
ns3::MgtProbeResponseHeader::GetTypeId
static TypeId GetTypeId(void)
Definition:
mgt-headers.cc:180
ns3::MgtAddBaResponseHeader::SetBufferSize
void SetBufferSize(uint16_t size)
Definition:
mgt-headers.cc:901
ns3::StatusCode::Deserialize
Buffer::Iterator Deserialize(Buffer::Iterator start)
Definition:
status-code.cc:58
ns3::MgtDelBaHeader::GetTid
uint8_t GetTid(void) const
Definition:
mgt-headers.cc:1039
ns3::MgtDelBaHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Definition:
mgt-headers.cc:1016
ns3::WifiActionHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Definition:
mgt-headers.cc:624
ns3::WifiActionHeader::PEER_LINK_OPEN
Definition:
mgt-headers.h:211
ns3::MgtProbeResponseHeader::GetHtCapabilities
HtCapabilities GetHtCapabilities(void) const
Definition:
mgt-headers.cc:160
ns3::MgtAddBaResponseHeader::GetStatusCode
StatusCode GetStatusCode(void) const
Definition:
mgt-headers.cc:919
ns3::MgtProbeRequestHeader::GetHtCapabilities
HtCapabilities GetHtCapabilities(void) const
Definition:
mgt-headers.cc:60
ns3::MgtDelBaHeader::IsByOriginator
bool IsByOriginator(void) const
Definition:
mgt-headers.cc:1033
ns3::MgtProbeResponseHeader::m_htCapability
HtCapabilities m_htCapability
Definition:
mgt-headers.h:168
ns3::MgtProbeResponseHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Definition:
mgt-headers.cc:239
ns3::Simulator::Now
static Time Now(void)
Definition:
simulator.cc:180
ns3::MgtAddBaResponseHeader::MgtAddBaResponseHeader
MgtAddBaResponseHeader()
Definition:
mgt-headers.cc:814
ns3::MgtAddBaResponseHeader::m_tid
uint8_t m_tid
Definition:
mgt-headers.h:358
ns3::MgtAssocResponseHeader::Print
virtual void Print(std::ostream &os) const
Definition:
mgt-headers.cc:439
ns3::MgtAddBaResponseHeader::GetTimeout
uint16_t GetTimeout(void) const
Definition:
mgt-headers.cc:937
ns3::MgtAddBaResponseHeader::GetTid
uint8_t GetTid(void) const
Definition:
mgt-headers.cc:925
ns3::WifiActionHeader::m_actionValue
uint8_t m_actionValue
Definition:
mgt-headers.h:269
ns3::Ssid
Definition:
ssid.h:35
ns3::MgtAddBaRequestHeader::IsImmediateBlockAck
bool IsImmediateBlockAck(void) const
Definition:
mgt-headers.cc:747
ns3::Buffer::Iterator::WriteHtolsbU16
void WriteHtolsbU16(uint16_t data)
Definition:
buffer.cc:935
ns3::MgtAssocResponseHeader
Definition:
mgt-headers.h:76
ns3::WifiActionHeader::WifiActionHeader
WifiActionHeader()
Definition:
mgt-headers.cc:471
ns3::MgtAddBaResponseHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Definition:
mgt-headers.cc:865
ns3::MgtAssocResponseHeader::m_code
StatusCode m_code
Definition:
mgt-headers.h:100
ns3::MgtAddBaRequestHeader::GetStartingSequence
uint16_t GetStartingSequence(void) const
Definition:
mgt-headers.cc:771
ns3::MgtDelBaHeader::m_tid
uint16_t m_tid
Definition:
mgt-headers.h:391
ns3::MgtAddBaRequestHeader::GetTypeId
static TypeId GetTypeId(void)
Definition:
mgt-headers.cc:646
ns3::Buffer::Iterator::WriteU8
void WriteU8(uint8_t data)
Definition:
buffer.h:690
ns3::Buffer::Iterator::WriteHtolsbU64
void WriteHtolsbU64(uint64_t data)
Definition:
buffer.cc:951
ns3::MgtAssocResponseHeader::GetTypeId
static TypeId GetTypeId(void)
Definition:
mgt-headers.cc:412
ns3::MgtAssocResponseHeader::SetSupportedRates
void SetSupportedRates(SupportedRates rates)
Definition:
mgt-headers.cc:396
ns3::MgtAddBaResponseHeader::m_dialogToken
uint8_t m_dialogToken
Definition:
mgt-headers.h:354
ns3::MgtDelBaHeader::GetParameterSet
uint16_t GetParameterSet(void) const
Definition:
mgt-headers.cc:1066
ns3::CapabilityInformation::GetSerializedSize
uint32_t GetSerializedSize(void) const
Definition:
capability-information.cc:87
ns3::MgtAddBaResponseHeader
Definition:
mgt-headers.h:323
ns3::MgtDelBaHeader
Definition:
mgt-headers.h:368
ns3::MgtAssocResponseHeader::~MgtAssocResponseHeader
~MgtAssocResponseHeader()
Definition:
mgt-headers.cc:376
ns3::WifiActionHeader::ActionValue
Definition:
mgt-headers.h:248
ns3::MgtProbeResponseHeader::MgtProbeResponseHeader
MgtProbeResponseHeader()
Definition:
mgt-headers.cc:127
ns3::WifiActionHeader::ActionValue::peerLink
enum PeerLinkMgtActionValue peerLink
Definition:
mgt-headers.h:250
ns3::Buffer::Iterator::ReadU8
uint8_t ReadU8(void)
Definition:
buffer.h:819
ns3::MgtAddBaRequestHeader::m_policy
uint8_t m_policy
Definition:
mgt-headers.h:311
ns3::MgtAssocResponseHeader::m_htCapability
HtCapabilities m_htCapability
Definition:
mgt-headers.h:102
ns3::MgtProbeResponseHeader::SetSupportedRates
void SetSupportedRates(SupportedRates rates)
Definition:
mgt-headers.cc:175
ns3::MgtProbeRequestHeader::m_ssid
Ssid m_ssid
Definition:
mgt-headers.h:129
ns3::MgtAssocResponseHeader::MgtAssocResponseHeader
MgtAssocResponseHeader()
Definition:
mgt-headers.cc:372
ns3::WifiActionHeader::MESH_PROXY_FORWARDING
Definition:
mgt-headers.h:206
ns3::MgtAssocResponseHeader::SetHtCapabilities
void SetHtCapabilities(HtCapabilities htcapabilities)
Definition:
mgt-headers.cc:401
ns3::MgtAssocResponseHeader::m_aid
uint16_t m_aid
Definition:
mgt-headers.h:101
ns3::Buffer::Iterator::ReadLsbtohU16
uint16_t ReadLsbtohU16(void)
Definition:
buffer.cc:1090
ns3::MgtProbeRequestHeader::SetSsid
void SetSsid(Ssid ssid)
Definition:
mgt-headers.cc:39
ns3::MgtAssocResponseHeader::SetStatusCode
void SetStatusCode(StatusCode code)
Definition:
mgt-headers.cc:391
ns3::MgtDelBaHeader::SetParameterSet
void SetParameterSet(uint16_t params)
Definition:
mgt-headers.cc:1075
ns3::MgtAddBaResponseHeader::SetAmsduSupport
void SetAmsduSupport(bool supported)
Definition:
mgt-headers.cc:913
ns3::WifiActionHeader::m_category
uint8_t m_category
Definition:
mgt-headers.h:268
ns3::MgtAddBaRequestHeader::SetDelayedBlockAck
void SetDelayedBlockAck()
Definition:
mgt-headers.cc:698
ns3::MgtAssocRequestHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Definition:
mgt-headers.cc:354
ns3::WifiActionHeader::PATH_SELECTION
Definition:
mgt-headers.h:223
ns3::MgtAddBaRequestHeader::SetTimeout
void SetTimeout(uint16_t timeout)
Definition:
mgt-headers.cc:717
ns3::MgtProbeResponseHeader
Definition:
mgt-headers.h:139
ns3::Buffer::Iterator::ReadLsbtohU64
uint64_t ReadLsbtohU64(void)
Definition:
buffer.cc:1118
ns3::HtCapabilities::GetSerializedSize
uint16_t GetSerializedSize() const
Definition:
ht-capabilities.cc:164
ns3::MgtAddBaRequestHeader::GetParameterSet
uint16_t GetParameterSet(void) const
Definition:
mgt-headers.cc:789
ns3::WifiActionHeader::GetAction
ActionValue GetAction()
Definition:
mgt-headers.cc:532
ns3::MgtAddBaResponseHeader::m_bufferSize
uint16_t m_bufferSize
Definition:
mgt-headers.h:359
ns3::MgtAddBaResponseHeader::GetParameterSet
uint16_t GetParameterSet(void) const
Definition:
mgt-headers.cc:955
ns3::MgtProbeResponseHeader::m_beaconInterval
uint64_t m_beaconInterval
Definition:
mgt-headers.h:165
ns3::MgtProbeRequestHeader::GetSerializedSize
virtual uint32_t GetSerializedSize(void) const
Definition:
mgt-headers.cc:70
ns3::HtCapabilities::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const
Definition:
ht-capabilities.cc:155
ns3::MgtAddBaResponseHeader::m_timeoutValue
uint16_t m_timeoutValue
Definition:
mgt-headers.h:360
ns3::MgtAssocRequestHeader::m_ssid
Ssid m_ssid
Definition:
mgt-headers.h:64
ns3::MgtAssocRequestHeader::GetHtCapabilities
HtCapabilities GetHtCapabilities(void) const
Definition:
mgt-headers.cc:289
ns3::MgtProbeResponseHeader::GetSerializedSize
virtual uint32_t GetSerializedSize(void) const
Definition:
mgt-headers.cc:194
ns3::TypeId
a unique identifier for an interface.
Definition:
type-id.h:49
ns3::MgtProbeRequestHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Definition:
mgt-headers.cc:101
ns3::TypeId::SetParent
TypeId SetParent(TypeId tid)
Definition:
type-id.cc:610
ns3::MgtProbeResponseHeader::SetHtCapabilities
void SetHtCapabilities(HtCapabilities htcapabilities)
Definition:
mgt-headers.cc:154
ns3::WifiInformationElement::Serialize
Buffer::Iterator Serialize(Buffer::Iterator i) const
Serialize entire IE including Element ID and length fields.
Definition:
wifi-information-element.cc:41
ns3::MgtAssocResponseHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Definition:
mgt-headers.cc:457
ns3::MgtAssocResponseHeader::GetSerializedSize
virtual uint32_t GetSerializedSize(void) const
Definition:
mgt-headers.cc:426
ns3::MgtAssocResponseHeader::GetStatusCode
StatusCode GetStatusCode(void)
Definition:
mgt-headers.cc:381
ns3::MgtProbeResponseHeader::m_ssid
Ssid m_ssid
Definition:
mgt-headers.h:164
ns3::WifiActionHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Definition:
mgt-headers.cc:618
ns3::MgtDelBaHeader::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)
Definition:
mgt-headers.cc:1024
ns3::MgtAddBaRequestHeader::GetTimeout
uint16_t GetTimeout(void) const
Definition:
mgt-headers.cc:753
ns3::MgtAssocResponseHeader::GetHtCapabilities
HtCapabilities GetHtCapabilities(void) const
Definition:
mgt-headers.cc:407
ns3::MgtDelBaHeader::Print
virtual void Print(std::ostream &os) const
Definition:
mgt-headers.cc:1002
ns3::MgtAssocRequestHeader::Serialize
virtual void Serialize(Buffer::Iterator start) const
Definition:
mgt-headers.cc:343
ns3::MgtProbeRequestHeader::~MgtProbeRequestHeader
~MgtProbeRequestHeader()
Definition:
mgt-headers.cc:34
src
wifi
model
mgt-headers.cc
Generated on Sat Nov 16 2013 16:17:54 for ns-3 by
1.8.5