A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Installation
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
Loading...
Searching...
No Matches
wimax-mac-header.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2007,2008, 2009 INRIA, UDcast
3
*
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License version 2 as
6
* published by the Free Software Foundation;
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program; if not, write to the Free Software
15
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16
*
17
* Author: Jahanzeb Farooq <jahanzeb.farooq@sophia.inria.fr>
18
* Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
19
*/
20
21
#ifndef MAC_HEADER_TYPE_H
22
#define MAC_HEADER_TYPE_H
23
24
#include "ns3/header.h"
25
26
#include <stdint.h>
27
28
namespace
ns3
29
{
30
31
/**
32
* \ingroup wimax
33
* This class Represents the HT (Header Type) field of generic MAC and bandwidth request headers
34
* \see GenericMacHeader
35
* \see BandwidthRequestHeader
36
*/
37
class
MacHeaderType
:
public
Header
38
{
39
public
:
40
/// Header type enumeration
41
enum
HeaderType
42
{
43
HEADER_TYPE_GENERIC
,
44
HEADER_TYPE_BANDWIDTH
45
};
46
47
/**
48
* Constructor
49
*/
50
MacHeaderType
();
51
/**
52
* Constructor
53
*
54
* \param type MAC header type
55
*/
56
MacHeaderType
(uint8_t type);
57
~MacHeaderType
()
override
;
58
/**
59
* Set type field
60
* \param type the type
61
*/
62
void
SetType
(uint8_t type);
63
/**
64
* Get type field
65
* \returns the type
66
*/
67
uint8_t
GetType
()
const
;
68
69
/**
70
* Get name field
71
* \returns the name
72
*/
73
std::string
GetName
()
const
;
74
/**
75
* \brief Get the type ID.
76
* \return the object TypeId
77
*/
78
static
TypeId
GetTypeId
();
79
TypeId
GetInstanceTypeId
()
const override
;
80
void
Print
(std::ostream& os)
const override
;
81
uint32_t
GetSerializedSize
()
const override
;
82
void
Serialize
(
Buffer::Iterator
start)
const override
;
83
uint32_t
Deserialize
(
Buffer::Iterator
start)
override
;
84
85
private
:
86
uint8_t
m_type
;
///< MAC header type
87
};
88
89
}
// namespace ns3
90
91
#endif
/* MAC_HEADER_TYPE_H */
92
93
// ----------------------------------------------------------------------------------------------------------
94
95
#ifndef GENERIC_MAC_HEADER_H
96
#define GENERIC_MAC_HEADER_H
97
98
#include "
cid.h
"
99
100
#include "ns3/header.h"
101
102
#include <stdint.h>
103
104
namespace
ns3
105
{
106
107
/**
108
* \ingroup wimax
109
* This class implements the Generic mac Header as described by IEEE Standard for
110
* Local and metropolitan area networks Part 16: Air Interface for Fixed Broadband Wireless Access
111
* Systems 6.3.2.1.1 Generic MAC header, page 36
112
*/
113
class
GenericMacHeader
:
public
Header
114
{
115
public
:
116
GenericMacHeader
();
117
~GenericMacHeader
()
override
;
118
119
/**
120
* Set EC field
121
* \param ec the EC
122
*/
123
void
SetEc
(uint8_t ec);
124
/**
125
* Set type field
126
* \param type the type
127
*/
128
void
SetType
(uint8_t type);
129
/**
130
* Set CI field
131
* \param ci the CI
132
*/
133
void
SetCi
(uint8_t ci);
134
/**
135
* Set EKS field
136
* \param eks the EKS
137
*/
138
void
SetEks
(uint8_t eks);
139
/**
140
* Set length field
141
* \param len the length
142
*/
143
void
SetLen
(uint16_t len);
144
/**
145
* Set CID field
146
* \param cid the CID
147
*/
148
void
SetCid
(
Cid
cid);
149
/**
150
* Set HCS field
151
* \param hcs the HCS
152
*/
153
void
SetHcs
(uint8_t hcs);
154
/**
155
* Set HT field
156
* \param ht the HT
157
*/
158
void
SetHt
(uint8_t ht);
159
160
/**
161
* Get EC field
162
* \returns the EC
163
*/
164
uint8_t
GetEc
()
const
;
165
/**
166
* Get type field
167
* \returns the type
168
*/
169
uint8_t
GetType
()
const
;
170
/**
171
* Get CI field
172
* \returns the CI
173
*/
174
uint8_t
GetCi
()
const
;
175
/**
176
* Get EKS field
177
* \returns the EKS
178
*/
179
uint8_t
GetEks
()
const
;
180
/**
181
* Get length field
182
* \returns the length
183
*/
184
uint16_t
GetLen
()
const
;
185
/**
186
* Get CID field
187
* \returns the CID
188
*/
189
Cid
GetCid
()
const
;
190
/**
191
* Get HCS field
192
* \returns the HCS
193
*/
194
uint8_t
GetHcs
()
const
;
195
/**
196
* Get HT field
197
* \returns the HT
198
*/
199
uint8_t
GetHt
()
const
;
200
/**
201
* Get name field
202
* \returns the name
203
*/
204
std::string
GetName
()
const
;
205
/**
206
* \brief Get the type ID.
207
* \return the object TypeId
208
*/
209
static
TypeId
GetTypeId
();
210
TypeId
GetInstanceTypeId
()
const override
;
211
void
Print
(std::ostream& os)
const override
;
212
uint32_t
GetSerializedSize
()
const override
;
213
void
Serialize
(
Buffer::Iterator
start)
const override
;
214
uint32_t
Deserialize
(
Buffer::Iterator
start)
override
;
215
/**
216
* Check HCS
217
* \returns true if HCS is validated
218
*/
219
bool
check_hcs
()
const
;
220
221
private
:
222
uint8_t
m_ht
;
///< Header type
223
uint8_t
m_ec
;
///< Encryption Control
224
uint8_t
m_type
;
///< type
225
uint8_t
m_esf
;
///< ESF
226
uint8_t
m_ci
;
///< CRC Indicator
227
uint8_t
m_eks
;
///< Encryption Key Sequence
228
uint8_t
m_rsv1
;
///< RSV
229
uint16_t
m_len
;
///< length
230
Cid
m_cid
;
///< CID
231
uint8_t
m_hcs
;
///< Header Check Sequence
232
uint8_t
c_hcs
;
///< calculated header check sequence; this is used to check if the received
233
///< header is correct or not
234
};
235
236
}
// namespace ns3
237
238
#endif
/* GENERIC_MAC_HEADER */
239
240
// ----------------------------------------------------------------------------------------------------------
241
242
#ifndef BANDWIDTH_REQUEST_HEADER_H
243
#define BANDWIDTH_REQUEST_HEADER_H
244
245
#include "
cid.h
"
246
247
#include "ns3/header.h"
248
249
#include <stdint.h>
250
251
namespace
ns3
252
{
253
/**
254
* \ingroup wimax
255
* This class implements the bandwidth-request mac Header as described by IEEE Standard for
256
* Local and metropolitan area networks Part 16: Air Interface for Fixed Broadband Wireless Access
257
* Systems 6.3.2.1.2 Bandwidth request header, page 38
258
*/
259
class
BandwidthRequestHeader
:
public
Header
260
{
261
public
:
262
/// Header type enumeration
263
enum
HeaderType
264
{
265
HEADER_TYPE_INCREMENTAL
,
266
HEADER_TYPE_AGGREGATE
267
};
268
269
BandwidthRequestHeader
();
270
~BandwidthRequestHeader
()
override
;
271
272
/**
273
* Set HT field
274
* \param ht the HT
275
*/
276
void
SetHt
(uint8_t ht);
277
/**
278
* Set EC field
279
* \param ec the EC
280
*/
281
void
SetEc
(uint8_t ec);
282
/**
283
* Set type field
284
* \param type the type
285
*/
286
void
SetType
(uint8_t type);
287
/**
288
* Set BR field
289
* \param br the BR
290
*/
291
void
SetBr
(
uint32_t
br);
292
/**
293
* Set CID field
294
* \param cid the CID
295
*/
296
void
SetCid
(
Cid
cid);
297
/**
298
* Set HCS field
299
* \param hcs the HCS
300
*/
301
void
SetHcs
(uint8_t hcs);
302
303
/**
304
* Get HT field
305
* \returns the HT
306
*/
307
uint8_t
GetHt
()
const
;
308
/**
309
* Get EC field
310
* \returns the EC
311
*/
312
uint8_t
GetEc
()
const
;
313
/**
314
* Get type field
315
* \returns the type
316
*/
317
uint8_t
GetType
()
const
;
318
/**
319
* Get BR field
320
* \returns the BR
321
*/
322
uint32_t
GetBr
()
const
;
323
/**
324
* Get CID field
325
* \returns the CID
326
*/
327
Cid
GetCid
()
const
;
328
/**
329
* Get HCS field
330
* \returns the HCS
331
*/
332
uint8_t
GetHcs
()
const
;
333
334
/**
335
* Get name field
336
* \returns the name
337
*/
338
std::string
GetName
()
const
;
339
/**
340
* \brief Get the type ID.
341
* \return the object TypeId
342
*/
343
static
TypeId
GetTypeId
();
344
TypeId
GetInstanceTypeId
()
const override
;
345
void
Print
(std::ostream& os)
const override
;
346
uint32_t
GetSerializedSize
()
const override
;
347
void
Serialize
(
Buffer::Iterator
start)
const override
;
348
uint32_t
Deserialize
(
Buffer::Iterator
start)
override
;
349
/**
350
* Check HCS
351
* \returns true if HCS is validated
352
*/
353
bool
check_hcs
()
const
;
354
355
private
:
356
uint8_t
m_ht
;
///< Header type
357
uint8_t
m_ec
;
///< Encryption Control
358
uint8_t
m_type
;
///< type
359
uint32_t
m_br
;
///< Bandwidth Request
360
Cid
m_cid
;
///< Connection identifier
361
uint8_t
m_hcs
;
///< Header Check Sequence
362
uint8_t
c_hcs
;
///< calculated header check sequence; this is used to check if the received
363
///< header is correct or not
364
};
365
366
}
// namespace ns3
367
368
#endif
/* BANDWIDTH_REQUEST_HEADER_H */
369
370
// ----------------------------------------------------------------------------------------------------------
371
372
#ifndef GRANT_MANAGEMENT_SUBHEADER_H
373
#define GRANT_MANAGEMENT_SUBHEADER_H
374
375
#include "ns3/header.h"
376
377
#include <stdint.h>
378
379
namespace
ns3
380
{
381
382
/**
383
* \ingroup wimax
384
* This class implements the grant management sub-header as described by IEEE Standard for
385
* Local and metropolitan area networks Part 16: Air Interface for Fixed Broadband Wireless Access
386
* Systems 6.3.2.2.2 Grant Management subheader, page 40
387
*/
388
class
GrantManagementSubheader
:
public
Header
389
{
390
public
:
391
GrantManagementSubheader
();
392
~GrantManagementSubheader
()
override
;
393
394
/**
395
* Set SI field
396
* \param si the SI
397
*/
398
void
SetSi
(uint8_t si);
399
/**
400
* Set PM field
401
* \param pm the PM
402
*/
403
void
SetPm
(uint8_t pm);
404
/**
405
* Set PRR field
406
* \param pbr the PBR
407
*/
408
void
SetPbr
(uint16_t pbr);
409
410
/**
411
* Get SI field
412
* \returns the SI
413
*/
414
uint8_t
GetSi
()
const
;
415
/**
416
* Get PM field
417
* \returns the PM
418
*/
419
uint8_t
GetPm
()
const
;
420
/**
421
* Get PBR field
422
* \returns the PBR
423
*/
424
uint16_t
GetPbr
()
const
;
425
426
/**
427
* Get name field
428
* \returns the name
429
*/
430
std::string
GetName
()
const
;
431
/**
432
* \brief Get the type ID.
433
* \return the object TypeId
434
*/
435
static
TypeId
GetTypeId
();
436
TypeId
GetInstanceTypeId
()
const override
;
437
void
Print
(std::ostream& os)
const override
;
438
uint32_t
GetSerializedSize
()
const override
;
439
void
Serialize
(
Buffer::Iterator
start)
const override
;
440
uint32_t
Deserialize
(
Buffer::Iterator
start)
override
;
441
442
private
:
443
// size of the Grant Management Subheader shall actually be 2 bytes
444
445
uint8_t
m_si
;
///< Slip Indicator
446
uint8_t
m_pm
;
///< Poll-Me bit (byte in this case)
447
uint16_t
m_pbr
;
///< PiggyBack Request
448
};
449
450
}
// namespace ns3
451
452
#endif
/* GRANT_MANAGEMENT_SUBHEADER_H */
453
454
// ----------------------------------------------------------------------------------------------------------
455
456
#ifndef FRAGMENTATION_SUBHEADER_H
457
#define FRAGMENTATION_SUBHEADER_H
458
459
#include "ns3/header.h"
460
461
#include <stdint.h>
462
463
namespace
ns3
464
{
465
/**
466
* \ingroup wimax
467
* This class implements the fragmentation sub-header as described by IEEE Standard for
468
* Local and metropolitan area networks Part 16: Air Interface for Fixed Broadband Wireless Access
469
* Systems 6.3.2.2.1 Fragmentation subheader, page 39
470
*/
471
class
FragmentationSubheader
:
public
Header
472
{
473
public
:
474
FragmentationSubheader
();
475
~FragmentationSubheader
()
override
;
476
477
/**
478
* Set FC field
479
* \param fc the FC
480
*/
481
void
SetFc
(uint8_t fc);
482
/**
483
* Set FSN field
484
* \param fsn the FSN
485
*/
486
void
SetFsn
(uint8_t fsn);
487
488
/**
489
* Get FC field
490
* \returns the FC
491
*/
492
uint8_t
GetFc
()
const
;
493
/**
494
* Get FSN field
495
* \returns the FSN
496
*/
497
uint8_t
GetFsn
()
const
;
498
499
/**
500
* Get name field
501
* \returns the name
502
*/
503
std::string
GetName
()
const
;
504
/**
505
* \brief Get the type ID.
506
* \return the object TypeId
507
*/
508
static
TypeId
GetTypeId
();
509
TypeId
GetInstanceTypeId
()
const override
;
510
void
Print
(std::ostream& os)
const override
;
511
uint32_t
GetSerializedSize
()
const override
;
512
void
Serialize
(
Buffer::Iterator
start)
const override
;
513
uint32_t
Deserialize
(
Buffer::Iterator
start)
override
;
514
515
private
:
516
uint8_t
m_fc
;
///< Fragment Control
517
uint8_t
m_fsn
;
///< Fragment Sequence Number
518
};
519
}
// namespace ns3
520
521
#endif
/* FRAGMENTATION_SUBHEADER_H */
cid.h
ns3::BandwidthRequestHeader
This class implements the bandwidth-request mac Header as described by IEEE Standard for Local and me...
Definition:
wimax-mac-header.h:260
ns3::BandwidthRequestHeader::m_ec
uint8_t m_ec
Encryption Control.
Definition:
wimax-mac-header.h:357
ns3::BandwidthRequestHeader::GetHt
uint8_t GetHt() const
Get HT field.
Definition:
wimax-mac-header.cc:386
ns3::BandwidthRequestHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Definition:
wimax-mac-header.cc:453
ns3::BandwidthRequestHeader::~BandwidthRequestHeader
~BandwidthRequestHeader() override
Definition:
wimax-mac-header.cc:345
ns3::BandwidthRequestHeader::SetBr
void SetBr(uint32_t br)
Set BR field.
Definition:
wimax-mac-header.cc:368
ns3::BandwidthRequestHeader::GetBr
uint32_t GetBr() const
Get BR field.
Definition:
wimax-mac-header.cc:404
ns3::BandwidthRequestHeader::SetEc
void SetEc(uint8_t ec)
Set EC field.
Definition:
wimax-mac-header.cc:356
ns3::BandwidthRequestHeader::SetType
void SetType(uint8_t type)
Set type field.
Definition:
wimax-mac-header.cc:362
ns3::BandwidthRequestHeader::GetHcs
uint8_t GetHcs() const
Get HCS field.
Definition:
wimax-mac-header.cc:416
ns3::BandwidthRequestHeader::check_hcs
bool check_hcs() const
Check HCS.
Definition:
wimax-mac-header.cc:528
ns3::BandwidthRequestHeader::c_hcs
uint8_t c_hcs
calculated header check sequence; this is used to check if the received header is correct or not
Definition:
wimax-mac-header.h:362
ns3::BandwidthRequestHeader::m_hcs
uint8_t m_hcs
Header Check Sequence.
Definition:
wimax-mac-header.h:361
ns3::BandwidthRequestHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the most derived TypeId for this Object.
Definition:
wimax-mac-header.cc:438
ns3::BandwidthRequestHeader::GetEc
uint8_t GetEc() const
Get EC field.
Definition:
wimax-mac-header.cc:392
ns3::BandwidthRequestHeader::SetHcs
void SetHcs(uint8_t hcs)
Set HCS field.
Definition:
wimax-mac-header.cc:380
ns3::BandwidthRequestHeader::GetCid
Cid GetCid() const
Get CID field.
Definition:
wimax-mac-header.cc:410
ns3::BandwidthRequestHeader::SetHt
void SetHt(uint8_t ht)
Set HT field.
Definition:
wimax-mac-header.cc:350
ns3::BandwidthRequestHeader::m_ht
uint8_t m_ht
Header type.
Definition:
wimax-mac-header.h:356
ns3::BandwidthRequestHeader::SetCid
void SetCid(Cid cid)
Set CID field.
Definition:
wimax-mac-header.cc:374
ns3::BandwidthRequestHeader::m_br
uint32_t m_br
Bandwidth Request.
Definition:
wimax-mac-header.h:359
ns3::BandwidthRequestHeader::HeaderType
HeaderType
Header type enumeration.
Definition:
wimax-mac-header.h:264
ns3::BandwidthRequestHeader::HEADER_TYPE_AGGREGATE
@ HEADER_TYPE_AGGREGATE
Definition:
wimax-mac-header.h:266
ns3::BandwidthRequestHeader::HEADER_TYPE_INCREMENTAL
@ HEADER_TYPE_INCREMENTAL
Definition:
wimax-mac-header.h:265
ns3::BandwidthRequestHeader::BandwidthRequestHeader
BandwidthRequestHeader()
Definition:
wimax-mac-header.cc:335
ns3::BandwidthRequestHeader::m_type
uint8_t m_type
type
Definition:
wimax-mac-header.h:358
ns3::BandwidthRequestHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Definition:
wimax-mac-header.cc:462
ns3::BandwidthRequestHeader::Print
void Print(std::ostream &os) const override
Definition:
wimax-mac-header.cc:444
ns3::BandwidthRequestHeader::GetName
std::string GetName() const
Get name field.
Definition:
wimax-mac-header.cc:422
ns3::BandwidthRequestHeader::GetType
uint8_t GetType() const
Get type field.
Definition:
wimax-mac-header.cc:398
ns3::BandwidthRequestHeader::m_cid
Cid m_cid
Connection identifier.
Definition:
wimax-mac-header.h:360
ns3::BandwidthRequestHeader::Deserialize
uint32_t Deserialize(Buffer::Iterator start) override
Definition:
wimax-mac-header.cc:492
ns3::BandwidthRequestHeader::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition:
wimax-mac-header.cc:428
ns3::Buffer::Iterator
iterator in a Buffer instance
Definition:
buffer.h:100
ns3::Cid
Cid class.
Definition:
cid.h:37
ns3::FragmentationSubheader
This class implements the fragmentation sub-header as described by IEEE Standard for Local and metrop...
Definition:
wimax-mac-header.h:472
ns3::FragmentationSubheader::m_fsn
uint8_t m_fsn
Fragment Sequence Number.
Definition:
wimax-mac-header.h:517
ns3::FragmentationSubheader::Print
void Print(std::ostream &os) const override
Definition:
wimax-mac-header.cc:700
ns3::FragmentationSubheader::GetName
std::string GetName() const
Get name field.
Definition:
wimax-mac-header.cc:678
ns3::FragmentationSubheader::GetSerializedSize
uint32_t GetSerializedSize() const override
Definition:
wimax-mac-header.cc:707
ns3::FragmentationSubheader::FragmentationSubheader
FragmentationSubheader()
Definition:
wimax-mac-header.cc:643
ns3::FragmentationSubheader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the most derived TypeId for this Object.
Definition:
wimax-mac-header.cc:694
ns3::FragmentationSubheader::~FragmentationSubheader
~FragmentationSubheader() override
Definition:
wimax-mac-header.cc:649
ns3::FragmentationSubheader::GetFsn
uint8_t GetFsn() const
Get FSN field.
Definition:
wimax-mac-header.cc:672
ns3::FragmentationSubheader::SetFsn
void SetFsn(uint8_t fsn)
Set FSN field.
Definition:
wimax-mac-header.cc:660
ns3::FragmentationSubheader::GetFc
uint8_t GetFc() const
Get FC field.
Definition:
wimax-mac-header.cc:666
ns3::FragmentationSubheader::SetFc
void SetFc(uint8_t fc)
Set FC field.
Definition:
wimax-mac-header.cc:654
ns3::FragmentationSubheader::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition:
wimax-mac-header.cc:684
ns3::FragmentationSubheader::Serialize
void Serialize(Buffer::Iterator start) const override
Definition:
wimax-mac-header.cc:713
ns3::FragmentationSubheader::m_fc
uint8_t m_fc
Fragment Control.
Definition:
wimax-mac-header.h:516
ns3::FragmentationSubheader::Deserialize
uint32_t Deserialize(Buffer::Iterator start) override
Definition:
wimax-mac-header.cc:721
ns3::GenericMacHeader
This class implements the Generic mac Header as described by IEEE Standard for Local and metropolitan...
Definition:
wimax-mac-header.h:114
ns3::GenericMacHeader::GetEks
uint8_t GetEks() const
Get EKS field.
Definition:
wimax-mac-header.cc:198
ns3::GenericMacHeader::GetType
uint8_t GetType() const
Get type field.
Definition:
wimax-mac-header.cc:186
ns3::GenericMacHeader::SetHcs
void SetHcs(uint8_t hcs)
Set HCS field.
Definition:
wimax-mac-header.cc:168
ns3::GenericMacHeader::m_hcs
uint8_t m_hcs
Header Check Sequence.
Definition:
wimax-mac-header.h:231
ns3::GenericMacHeader::SetEc
void SetEc(uint8_t ec)
Set EC field.
Definition:
wimax-mac-header.cc:132
ns3::GenericMacHeader::check_hcs
bool check_hcs() const
Check HCS.
Definition:
wimax-mac-header.cc:326
ns3::GenericMacHeader::GetCi
uint8_t GetCi() const
Get CI field.
Definition:
wimax-mac-header.cc:192
ns3::GenericMacHeader::m_ht
uint8_t m_ht
Header type.
Definition:
wimax-mac-header.h:222
ns3::GenericMacHeader::GetHt
uint8_t GetHt() const
Get HT field.
Definition:
wimax-mac-header.cc:174
ns3::GenericMacHeader::m_rsv1
uint8_t m_rsv1
RSV.
Definition:
wimax-mac-header.h:228
ns3::GenericMacHeader::Deserialize
uint32_t Deserialize(Buffer::Iterator start) override
Definition:
wimax-mac-header.cc:289
ns3::GenericMacHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the most derived TypeId for this Object.
Definition:
wimax-mac-header.cc:238
ns3::GenericMacHeader::~GenericMacHeader
~GenericMacHeader() override
Definition:
wimax-mac-header.cc:121
ns3::GenericMacHeader::SetType
void SetType(uint8_t type)
Set type field.
Definition:
wimax-mac-header.cc:138
ns3::GenericMacHeader::m_len
uint16_t m_len
length
Definition:
wimax-mac-header.h:229
ns3::GenericMacHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Definition:
wimax-mac-header.cc:253
ns3::GenericMacHeader::SetHt
void SetHt(uint8_t ht)
Set HT field.
Definition:
wimax-mac-header.cc:126
ns3::GenericMacHeader::m_esf
uint8_t m_esf
ESF.
Definition:
wimax-mac-header.h:225
ns3::GenericMacHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Definition:
wimax-mac-header.cc:259
ns3::GenericMacHeader::m_ec
uint8_t m_ec
Encryption Control.
Definition:
wimax-mac-header.h:223
ns3::GenericMacHeader::m_cid
Cid m_cid
CID.
Definition:
wimax-mac-header.h:230
ns3::GenericMacHeader::GetHcs
uint8_t GetHcs() const
Get HCS field.
Definition:
wimax-mac-header.cc:216
ns3::GenericMacHeader::GetEc
uint8_t GetEc() const
Get EC field.
Definition:
wimax-mac-header.cc:180
ns3::GenericMacHeader::SetEks
void SetEks(uint8_t eks)
Set EKS field.
Definition:
wimax-mac-header.cc:150
ns3::GenericMacHeader::m_ci
uint8_t m_ci
CRC Indicator.
Definition:
wimax-mac-header.h:226
ns3::GenericMacHeader::GenericMacHeader
GenericMacHeader()
Definition:
wimax-mac-header.cc:106
ns3::GenericMacHeader::GetName
std::string GetName() const
Get name field.
Definition:
wimax-mac-header.cc:222
ns3::GenericMacHeader::SetLen
void SetLen(uint16_t len)
Set length field.
Definition:
wimax-mac-header.cc:156
ns3::GenericMacHeader::m_type
uint8_t m_type
type
Definition:
wimax-mac-header.h:224
ns3::GenericMacHeader::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition:
wimax-mac-header.cc:228
ns3::GenericMacHeader::GetLen
uint16_t GetLen() const
Get length field.
Definition:
wimax-mac-header.cc:204
ns3::GenericMacHeader::SetCid
void SetCid(Cid cid)
Set CID field.
Definition:
wimax-mac-header.cc:162
ns3::GenericMacHeader::SetCi
void SetCi(uint8_t ci)
Set CI field.
Definition:
wimax-mac-header.cc:144
ns3::GenericMacHeader::c_hcs
uint8_t c_hcs
calculated header check sequence; this is used to check if the received header is correct or not
Definition:
wimax-mac-header.h:232
ns3::GenericMacHeader::m_eks
uint8_t m_eks
Encryption Key Sequence.
Definition:
wimax-mac-header.h:227
ns3::GenericMacHeader::Print
void Print(std::ostream &os) const override
Definition:
wimax-mac-header.cc:244
ns3::GenericMacHeader::GetCid
Cid GetCid() const
Get CID field.
Definition:
wimax-mac-header.cc:210
ns3::GrantManagementSubheader
This class implements the grant management sub-header as described by IEEE Standard for Local and met...
Definition:
wimax-mac-header.h:389
ns3::GrantManagementSubheader::GetName
std::string GetName() const
Get name field.
Definition:
wimax-mac-header.cc:585
ns3::GrantManagementSubheader::GetPm
uint8_t GetPm() const
Get PM field.
Definition:
wimax-mac-header.cc:573
ns3::GrantManagementSubheader::GrantManagementSubheader
GrantManagementSubheader()
Definition:
wimax-mac-header.cc:537
ns3::GrantManagementSubheader::GetSi
uint8_t GetSi() const
Get SI field.
Definition:
wimax-mac-header.cc:567
ns3::GrantManagementSubheader::m_pbr
uint16_t m_pbr
PiggyBack Request.
Definition:
wimax-mac-header.h:447
ns3::GrantManagementSubheader::Serialize
void Serialize(Buffer::Iterator start) const override
Definition:
wimax-mac-header.cc:620
ns3::GrantManagementSubheader::SetSi
void SetSi(uint8_t si)
Set SI field.
Definition:
wimax-mac-header.cc:549
ns3::GrantManagementSubheader::SetPm
void SetPm(uint8_t pm)
Set PM field.
Definition:
wimax-mac-header.cc:555
ns3::GrantManagementSubheader::GetPbr
uint16_t GetPbr() const
Get PBR field.
Definition:
wimax-mac-header.cc:579
ns3::GrantManagementSubheader::GetSerializedSize
uint32_t GetSerializedSize() const override
Definition:
wimax-mac-header.cc:614
ns3::GrantManagementSubheader::Deserialize
uint32_t Deserialize(Buffer::Iterator start) override
Definition:
wimax-mac-header.cc:629
ns3::GrantManagementSubheader::m_si
uint8_t m_si
Slip Indicator.
Definition:
wimax-mac-header.h:445
ns3::GrantManagementSubheader::Print
void Print(std::ostream &os) const override
Definition:
wimax-mac-header.cc:607
ns3::GrantManagementSubheader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the most derived TypeId for this Object.
Definition:
wimax-mac-header.cc:601
ns3::GrantManagementSubheader::SetPbr
void SetPbr(uint16_t pbr)
Set PRR field.
Definition:
wimax-mac-header.cc:561
ns3::GrantManagementSubheader::~GrantManagementSubheader
~GrantManagementSubheader() override
Definition:
wimax-mac-header.cc:544
ns3::GrantManagementSubheader::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition:
wimax-mac-header.cc:591
ns3::GrantManagementSubheader::m_pm
uint8_t m_pm
Poll-Me bit (byte in this case)
Definition:
wimax-mac-header.h:446
ns3::Header
Protocol header serialization and deserialization.
Definition:
header.h:44
ns3::MacHeaderType
This class Represents the HT (Header Type) field of generic MAC and bandwidth request headers.
Definition:
wimax-mac-header.h:38
ns3::MacHeaderType::Serialize
void Serialize(Buffer::Iterator start) const override
Definition:
wimax-mac-header.cc:92
ns3::MacHeaderType::SetType
void SetType(uint8_t type)
Set type field.
Definition:
wimax-mac-header.cc:46
ns3::MacHeaderType::m_type
uint8_t m_type
MAC header type.
Definition:
wimax-mac-header.h:86
ns3::MacHeaderType::HeaderType
HeaderType
Header type enumeration.
Definition:
wimax-mac-header.h:42
ns3::MacHeaderType::HEADER_TYPE_BANDWIDTH
@ HEADER_TYPE_BANDWIDTH
Definition:
wimax-mac-header.h:44
ns3::MacHeaderType::HEADER_TYPE_GENERIC
@ HEADER_TYPE_GENERIC
Definition:
wimax-mac-header.h:43
ns3::MacHeaderType::GetSerializedSize
uint32_t GetSerializedSize() const override
Definition:
wimax-mac-header.cc:86
ns3::MacHeaderType::GetType
uint8_t GetType() const
Get type field.
Definition:
wimax-mac-header.cc:52
ns3::MacHeaderType::Print
void Print(std::ostream &os) const override
Definition:
wimax-mac-header.cc:80
ns3::MacHeaderType::~MacHeaderType
~MacHeaderType() override
Definition:
wimax-mac-header.cc:41
ns3::MacHeaderType::GetName
std::string GetName() const
Get name field.
Definition:
wimax-mac-header.cc:58
ns3::MacHeaderType::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition:
wimax-mac-header.cc:64
ns3::MacHeaderType::Deserialize
uint32_t Deserialize(Buffer::Iterator start) override
Definition:
wimax-mac-header.cc:97
ns3::MacHeaderType::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the most derived TypeId for this Object.
Definition:
wimax-mac-header.cc:74
ns3::MacHeaderType::MacHeaderType
MacHeaderType()
Constructor.
Definition:
wimax-mac-header.cc:31
ns3::TypeId
a unique identifier for an interface.
Definition:
type-id.h:59
uint32_t
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
src
wimax
model
wimax-mac-header.h
Generated on Tue May 28 2024 23:41:20 for ns-3 by
1.9.6