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
point-to-point-grid.h
Go to the documentation of this file.
1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2
/*
3
* This program is free software; you can redistribute it and/or modify
4
* it under the terms of the GNU General Public License version 2 as
5
* published by the Free Software Foundation;
6
*
7
* This program is distributed in the hope that it will be useful,
8
* but WITHOUT ANY WARRANTY; without even the implied warranty of
9
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
* GNU General Public License for more details.
11
*
12
* You should have received a copy of the GNU General Public License
13
* along with this program; if not, write to the Free Software
14
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
15
*
16
* Author: Josh Pelkey <jpelkey@gatech.edu>
17
*/
18
19
#ifndef POINT_TO_POINT_GRID_HELPER_H
20
#define POINT_TO_POINT_GRID_HELPER_H
21
22
#include <vector>
23
24
#include "
internet-stack-helper.h
"
25
#include "
point-to-point-helper.h
"
26
#include "
ipv4-address-helper.h
"
27
#include "
ipv6-address-helper.h
"
28
#include "
ipv4-interface-container.h
"
29
#include "
ipv6-interface-container.h
"
30
#include "
net-device-container.h
"
31
32
namespace
ns3 {
33
40
class
PointToPointGridHelper
41
{
42
public
:
55
PointToPointGridHelper
(uint32_t nRows,
56
uint32_t nCols,
57
PointToPointHelper
pointToPoint);
58
59
~PointToPointGridHelper
();
60
69
Ptr<Node>
GetNode
(uint32_t row, uint32_t col);
70
87
Ipv4Address
GetIpv4Address
(uint32_t row, uint32_t col);
88
105
Ipv6Address
GetIpv6Address
(uint32_t row, uint32_t col);
106
111
void
InstallStack
(
InternetStackHelper
stack);
112
122
void
AssignIpv4Addresses
(
Ipv4AddressHelper
rowIp,
Ipv4AddressHelper
colIp);
123
131
void
AssignIpv6Addresses
(
Ipv6Address
network,
Ipv6Prefix
prefix);
132
142
void
BoundingBox
(
double
ulx,
double
uly,
double
lrx,
double
lry);
143
144
private
:
145
uint32_t
m_xSize
;
146
uint32_t
m_ySize
;
147
std::vector<NetDeviceContainer>
m_rowDevices
;
148
std::vector<NetDeviceContainer>
m_colDevices
;
149
std::vector<Ipv4InterfaceContainer>
m_rowInterfaces
;
150
std::vector<Ipv4InterfaceContainer>
m_colInterfaces
;
151
std::vector<Ipv6InterfaceContainer>
m_rowInterfaces6
;
152
std::vector<Ipv6InterfaceContainer>
m_colInterfaces6
;
153
std::vector<NodeContainer>
m_nodes
;
154
};
155
156
}
// namespace ns3
157
158
#endif
/* POINT_TO_POINT_GRID_HELPER_H */
src
point-to-point-layout
model
point-to-point-grid.h
Generated on Tue Oct 9 2012 16:45:45 for ns-3 by
1.8.1.2