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
ipv4-address-generator.h
Go to the documentation of this file.
1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2
/*
3
* Copyright (c) 2008 University of Washington
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
19
#ifndef IPV4_ADDRESS_GENERATOR_H
20
#define IPV4_ADDRESS_GENERATOR_H
21
22
#include "ns3/ipv4-address.h"
23
24
namespace
ns3
{
25
39
class
Ipv4AddressGenerator
{
40
public
:
51
static
void
Init
(
const
Ipv4Address
net,
const
Ipv4Mask
mask,
52
const
Ipv4Address
addr =
"0.0.0.1"
);
53
66
static
Ipv4Address
NextNetwork
(
const
Ipv4Mask
mask);
67
77
static
Ipv4Address
GetNetwork
(
const
Ipv4Mask
mask);
78
85
static
void
InitAddress
(
const
Ipv4Address
addr,
const
Ipv4Mask
mask);
86
96
static
Ipv4Address
NextAddress
(
const
Ipv4Mask
mask);
97
107
static
Ipv4Address
GetAddress
(
const
Ipv4Mask
mask);
108
112
static
void
Reset
(
void
);
113
124
static
bool
AddAllocated
(
const
Ipv4Address
addr);
125
129
static
void
TestMode
(
void
);
130
};
131
132
}
// namespace ns3
133
134
#endif
/* IPV4_ADDRESS_GENERATOR_H */
ns3::Ipv4Mask
a class to represent an Ipv4 address mask
Definition:
ipv4-address.h:258
ns3::Ipv4AddressGenerator
This generator assigns addresses sequentially from a provided network address; used in topology code...
Definition:
ipv4-address-generator.h:39
ns3::Ipv4AddressGenerator::Init
static void Init(const Ipv4Address net, const Ipv4Mask mask, const Ipv4Address addr="0.0.0.1")
Initialise the base network, mask and address for the generator.
ns3::Ipv4AddressGenerator::NextAddress
static Ipv4Address NextAddress(const Ipv4Mask mask)
Allocate the next Ipv4Address for the configured network and mask.
ns3::Ipv4AddressGenerator::GetAddress
static Ipv4Address GetAddress(const Ipv4Mask mask)
Get the Ipv4Address that will be allocated upon NextAddress ()
ns3::Ipv4AddressGenerator::AddAllocated
static bool AddAllocated(const Ipv4Address addr)
Add the Ipv4Address to the list of IPv4 entries.
ns3::Ipv4AddressGenerator::InitAddress
static void InitAddress(const Ipv4Address addr, const Ipv4Mask mask)
Set the address for the given mask.
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
ns3::Ipv4AddressGenerator::Reset
static void Reset(void)
Reset the networks and Ipv4Address to zero.
ns3::Ipv4AddressGenerator::NextNetwork
static Ipv4Address NextNetwork(const Ipv4Mask mask)
Get the next network according to the given Ipv4Mask.
ns3::Ipv4AddressGenerator::TestMode
static void TestMode(void)
Used to turn off fatal errors and assertions, for testing.
ns3::Ipv4AddressGenerator::GetNetwork
static Ipv4Address GetNetwork(const Ipv4Mask mask)
Get the current network of the given Ipv4Mask.
ns3::Ipv4Address
Ipv4 addresses are stored in host order in this class.
Definition:
ipv4-address.h:40
src
internet
model
ipv4-address-generator.h
Generated on Wed Oct 11 2017 16:39:12 for ns-3 by
1.8.9.1