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
sixlowpan-nd-prefix.cc
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2015 Università di Firenze, Italy
3
*
4
* SPDX-License-Identifier: GPL-2.0-only
5
*
6
*
7
*
8
* Author: Alessio Bonadio <alessio.bonadio@gmail.com>
9
* Tommaso Pecorella <tommaso.pecorella@unifi.it>
10
* Adnan Rashid <adnanrashidpk@gmail.com>
11
*/
12
13
#include "
sixlowpan-nd-prefix.h
"
14
15
#include "ns3/log.h"
16
#include "ns3/simulator.h"
17
18
namespace
ns3
19
{
20
21
NS_LOG_COMPONENT_DEFINE
(
"SixLowPanNdPrefix"
);
22
23
SixLowPanNdPrefix::SixLowPanNdPrefix
()
24
{
25
NS_LOG_FUNCTION
(
this
);
26
}
27
28
SixLowPanNdPrefix::SixLowPanNdPrefix
(
Ipv6Address
prefix,
29
uint8_t prefixLen,
30
Time
prefTime,
31
Time
validTime)
32
:
m_prefix
(prefix),
33
m_prefixLength
(prefixLen),
34
m_preferredLifeTime
(prefTime),
35
m_validLifeTime
(validTime)
36
{
37
NS_LOG_FUNCTION
(
this
<< prefix << prefixLen << prefTime << validTime);
38
}
39
40
SixLowPanNdPrefix::~SixLowPanNdPrefix
()
41
{
42
NS_LOG_FUNCTION
(
this
);
43
}
44
45
Ipv6Address
46
SixLowPanNdPrefix::GetPrefix
()
const
47
{
48
NS_LOG_FUNCTION
(
this
);
49
return
m_prefix
;
50
}
51
52
void
53
SixLowPanNdPrefix::SetPrefix
(
Ipv6Address
prefix)
54
{
55
NS_LOG_FUNCTION
(
this
<< prefix);
56
m_prefix
= prefix;
57
}
58
59
uint8_t
60
SixLowPanNdPrefix::GetPrefixLength
()
const
61
{
62
NS_LOG_FUNCTION
(
this
);
63
return
m_prefixLength
;
64
}
65
66
void
67
SixLowPanNdPrefix::SetPrefixLength
(uint8_t prefixLen)
68
{
69
NS_LOG_FUNCTION
(
this
<< prefixLen);
70
m_prefixLength
= prefixLen;
71
}
72
73
Time
74
SixLowPanNdPrefix::GetValidLifeTime
()
const
75
{
76
NS_LOG_FUNCTION
(
this
);
77
78
return
m_validLifeTime
;
79
}
80
81
void
82
SixLowPanNdPrefix::SetValidLifeTime
(
Time
validTime)
83
{
84
NS_LOG_FUNCTION
(
this
<< validTime);
85
m_validLifeTime
= validTime;
86
}
87
88
Time
89
SixLowPanNdPrefix::GetPreferredLifeTime
()
const
90
{
91
NS_LOG_FUNCTION
(
this
);
92
return
m_preferredLifeTime
;
93
}
94
95
void
96
SixLowPanNdPrefix::SetPreferredLifeTime
(
Time
prefTime)
97
{
98
NS_LOG_FUNCTION
(
this
<< prefTime);
99
m_preferredLifeTime
= prefTime;
100
}
101
102
void
103
SixLowPanNdPrefix::PrintPrefix
(
Ptr<OutputStreamWrapper>
stream)
104
{
105
NS_LOG_FUNCTION
(
this
<< stream);
106
std::ostream* os = stream->GetStream();
107
108
*os <<
" Prefix Length: "
<<
GetPrefixLength
();
109
*os <<
" Valid Lifetime: "
<<
GetValidLifeTime
();
110
*os <<
" Preferred Lifetime: "
<<
GetPreferredLifeTime
();
111
*os <<
" Prefix: "
<<
GetPrefix
();
112
}
113
114
}
/* namespace ns3 */
ns3::Ipv6Address
Describes an IPv6 address.
Definition
ipv6-address.h:42
ns3::Ptr
Smart pointer class similar to boost::intrusive_ptr.
Definition
ptr.h:70
ns3::SixLowPanNdPrefix::SixLowPanNdPrefix
SixLowPanNdPrefix()
Constructor.
Definition
sixlowpan-nd-prefix.cc:23
ns3::SixLowPanNdPrefix::GetPrefix
Ipv6Address GetPrefix() const
Get network prefix.
Definition
sixlowpan-nd-prefix.cc:46
ns3::SixLowPanNdPrefix::SetValidLifeTime
void SetValidLifeTime(Time validTime)
Set valid lifetime.
Definition
sixlowpan-nd-prefix.cc:82
ns3::SixLowPanNdPrefix::SetPrefix
void SetPrefix(Ipv6Address prefix)
Set network prefix.
Definition
sixlowpan-nd-prefix.cc:53
ns3::SixLowPanNdPrefix::SetPrefixLength
void SetPrefixLength(uint8_t prefixLen)
Set prefix length.
Definition
sixlowpan-nd-prefix.cc:67
ns3::SixLowPanNdPrefix::~SixLowPanNdPrefix
~SixLowPanNdPrefix()
Destructor.
Definition
sixlowpan-nd-prefix.cc:40
ns3::SixLowPanNdPrefix::m_validLifeTime
Time m_validLifeTime
Valid time.
Definition
sixlowpan-nd-prefix.h:125
ns3::SixLowPanNdPrefix::m_preferredLifeTime
Time m_preferredLifeTime
Preferred time.
Definition
sixlowpan-nd-prefix.h:120
ns3::SixLowPanNdPrefix::m_prefixLength
uint8_t m_prefixLength
Prefix length.
Definition
sixlowpan-nd-prefix.h:115
ns3::SixLowPanNdPrefix::SetPreferredLifeTime
void SetPreferredLifeTime(Time prefTime)
Set preferred lifetime.
Definition
sixlowpan-nd-prefix.cc:96
ns3::SixLowPanNdPrefix::m_prefix
Ipv6Address m_prefix
Network prefix.
Definition
sixlowpan-nd-prefix.h:110
ns3::SixLowPanNdPrefix::GetValidLifeTime
Time GetValidLifeTime() const
Get valid lifetime.
Definition
sixlowpan-nd-prefix.cc:74
ns3::SixLowPanNdPrefix::GetPreferredLifeTime
Time GetPreferredLifeTime() const
Get preferred lifetime.
Definition
sixlowpan-nd-prefix.cc:89
ns3::SixLowPanNdPrefix::GetPrefixLength
uint8_t GetPrefixLength() const
Get prefix length.
Definition
sixlowpan-nd-prefix.cc:60
ns3::SixLowPanNdPrefix::PrintPrefix
void PrintPrefix(Ptr< OutputStreamWrapper > stream)
Print the prefix.
Definition
sixlowpan-nd-prefix.cc:103
ns3::Time
Simulation virtual time values and global simulation resolution.
Definition
nstime.h:95
NS_LOG_COMPONENT_DEFINE
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
Definition
log.h:194
NS_LOG_FUNCTION
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by ",...
Definition
log-macros-enabled.h:231
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
sixlowpan-nd-prefix.h
src
sixlowpan
model
sixlowpan-nd-prefix.cc
Generated on
for ns-3 by
1.15.0