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
ie-dot11s-prep.h
Go to the documentation of this file.
1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2
/*
3
* Copyright (c) 2008,2009 IITP RAS
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: Kirill Andreev <andreev@iitp.ru>
19
*/
20
21
#ifndef WIFI_PREP_INFORMATION_ELEMENT_H
22
#define WIFI_PREP_INFORMATION_ELEMENT_H
23
24
#include "ns3/mac48-address.h"
25
#include "ns3/mesh-information-element-vector.h"
26
27
namespace
ns3 {
28
namespace
dot11s {
33
class
IePrep
:
public
WifiInformationElement
34
{
35
public
:
36
IePrep
();
37
~IePrep
();
38
void
SetFlags
(uint8_t flags);
39
void
SetHopcount
(uint8_t hopcount);
40
void
SetTtl
(uint8_t ttl);
41
void
SetDestinationAddress
(
Mac48Address
dest_address);
42
void
SetDestinationSeqNumber
(uint32_t dest_seq_number);
43
void
SetLifetime
(uint32_t lifetime);
44
void
SetMetric
(uint32_t metric);
45
void
SetOriginatorAddress
(
Mac48Address
originator_address);
46
void
SetOriginatorSeqNumber
(uint32_t originator_seq_number);
47
48
uint8_t
GetFlags
()
const
;
49
uint8_t
GetHopcount
()
const
;
50
uint32_t
GetTtl
()
const
;
51
Mac48Address
GetDestinationAddress
()
const
;
52
uint32_t
GetDestinationSeqNumber
()
const
;
53
uint32_t
GetLifetime
()
const
;
54
uint32_t
GetMetric
()
const
;
55
Mac48Address
GetOriginatorAddress
()
const
;
56
uint32_t
GetOriginatorSeqNumber
()
const
;
57
58
void
DecrementTtl
();
59
void
IncrementMetric
(uint32_t metric);
64
virtual
WifiInformationElementId
ElementId
()
const
;
65
virtual
void
SerializeInformationField
(
Buffer::Iterator
i)
const
;
66
virtual
uint8_t
DeserializeInformationField
(
Buffer::Iterator
start
, uint8_t length);
67
virtual
uint8_t
GetInformationFieldSize
()
const
;
68
virtual
void
Print
(std::ostream& os)
const
;
70
private
:
71
uint8_t
m_flags
;
72
uint8_t
m_hopcount
;
73
uint8_t
m_ttl
;
74
Mac48Address
m_destinationAddress
;
75
uint32_t
m_destSeqNumber
;
76
uint32_t
m_lifetime
;
77
uint32_t
m_metric
;
78
Mac48Address
m_originatorAddress
;
79
uint32_t
m_originatorSeqNumber
;
80
friend
bool
operator==
(
const
IePrep
& a,
const
IePrep
& b);
81
};
82
bool
operator==
(
const
IePrep
& a,
const
IePrep
& b);
83
std::ostream &
operator <<
(std::ostream &os,
const
IePrep
&prep);
84
}
// namespace dot11s
85
}
// namespace ns3
86
#endif
87
src
mesh
model
dot11s
ie-dot11s-prep.h
Generated on Tue May 14 2013 11:08:28 for ns-3 by
1.8.1.2