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
wifi-helper.h
Go to the documentation of this file.
1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2
/*
3
* Copyright (c) 2008 INRIA
4
* Copyright (c) 2009 MIRKO BANCHI
5
*
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License version 2 as
8
* published by the Free Software Foundation;
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
*
19
* Author: Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
20
* Author: Mirko Banchi <mk.banchi@gmail.com>
21
*/
22
#ifndef WIFI_HELPER_H
23
#define WIFI_HELPER_H
24
25
#include <string>
26
#include "ns3/attribute.h"
27
#include "ns3/object-factory.h"
28
#include "ns3/node-container.h"
29
#include "ns3/net-device-container.h"
30
#include "ns3/wifi-phy-standard.h"
31
#include "ns3/trace-helper.h"
32
33
namespace
ns3 {
34
35
class
WifiPhy;
36
class
WifiMac;
37
class
WifiNetDevice;
38
class
Node;
39
46
class
WifiPhyHelper
47
{
48
public
:
49
virtual
~WifiPhyHelper
();
50
59
virtual
Ptr<WifiPhy>
Create
(
Ptr<Node>
node,
Ptr<WifiNetDevice>
device)
const
= 0;
60
};
61
68
class
WifiMacHelper
69
{
70
public
:
71
virtual
~WifiMacHelper
();
78
virtual
Ptr<WifiMac>
Create
(
void
)
const
= 0;
79
};
80
88
class
WifiHelper
89
{
90
public
:
91
virtual
~WifiHelper
();
92
97
WifiHelper
();
98
106
static
WifiHelper
Default
(
void
);
107
130
void
SetRemoteStationManager
(std::string type,
131
std::string n0 =
""
,
const
AttributeValue
&v0 =
EmptyAttributeValue
(),
132
std::string n1 =
""
,
const
AttributeValue
&v1 =
EmptyAttributeValue
(),
133
std::string n2 =
""
,
const
AttributeValue
&v2 =
EmptyAttributeValue
(),
134
std::string n3 =
""
,
const
AttributeValue
&v3 =
EmptyAttributeValue
(),
135
std::string n4 =
""
,
const
AttributeValue
&v4 =
EmptyAttributeValue
(),
136
std::string n5 =
""
,
const
AttributeValue
&v5 =
EmptyAttributeValue
(),
137
std::string n6 =
""
,
const
AttributeValue
&v6 =
EmptyAttributeValue
(),
138
std::string n7 =
""
,
const
AttributeValue
&v7 =
EmptyAttributeValue
());
145
virtual
NetDeviceContainer
Install
(
const
WifiPhyHelper
&phy,
146
const
WifiMacHelper
&mac,
NodeContainer
c)
const
;
153
virtual
NetDeviceContainer
Install
(
const
WifiPhyHelper
&phy,
154
const
WifiMacHelper
&mac,
Ptr<Node>
node)
const
;
161
virtual
NetDeviceContainer
Install
(
const
WifiPhyHelper
&phy,
162
const
WifiMacHelper
&mac, std::string nodeName)
const
;
163
169
virtual
void
SetStandard
(
enum
WifiPhyStandard
standard);
170
174
static
void
EnableLogComponents
(
void
);
175
190
int64_t
AssignStreams
(
NetDeviceContainer
c, int64_t stream);
191
192
protected
:
193
ObjectFactory
m_stationManager
;
194
enum
WifiPhyStandard
m_standard
;
195
};
196
197
}
// namespace ns3
198
199
#endif
/* WIFI_HELPER_H */
ns3::WifiPhyHelper::~WifiPhyHelper
virtual ~WifiPhyHelper()
Definition:
wifi-helper.cc:47
ns3::Ptr< WifiPhy >
ns3::WifiHelper::SetRemoteStationManager
void SetRemoteStationManager(std::string type, std::string n0="", const AttributeValue &v0=EmptyAttributeValue(), std::string n1="", const AttributeValue &v1=EmptyAttributeValue(), std::string n2="", const AttributeValue &v2=EmptyAttributeValue(), std::string n3="", const AttributeValue &v3=EmptyAttributeValue(), std::string n4="", const AttributeValue &v4=EmptyAttributeValue(), std::string n5="", const AttributeValue &v5=EmptyAttributeValue(), std::string n6="", const AttributeValue &v6=EmptyAttributeValue(), std::string n7="", const AttributeValue &v7=EmptyAttributeValue())
Definition:
wifi-helper.cc:73
ns3::WifiHelper::~WifiHelper
virtual ~WifiHelper()
Definition:
wifi-helper.cc:55
ns3::AttributeValue
Hold a value for an Attribute.
Definition:
attribute.h:56
ns3::WifiPhyHelper
create PHY objects
Definition:
wifi-helper.h:46
ns3::WifiMacHelper::Create
virtual Ptr< WifiMac > Create(void) const =0
ns3::WifiHelper
helps to create WifiNetDevice objects
Definition:
wifi-helper.h:88
ns3::WifiHelper::WifiHelper
WifiHelper()
Create a Wifi helper in an empty state: all its parameters must be set before calling ns3::WifiHelper...
Definition:
wifi-helper.cc:59
ns3::WifiHelper::Install
virtual NetDeviceContainer Install(const WifiPhyHelper &phy, const WifiMacHelper &mac, NodeContainer c) const
Definition:
wifi-helper.cc:102
ns3::WifiPhyStandard
WifiPhyStandard
Identifies the PHY specification that a Wifi device is configured to use.
Definition:
wifi-phy-standard.h:30
ns3::EmptyAttributeValue
A class for an empty attribute value.
Definition:
attribute.h:222
ns3::NetDeviceContainer
holds a vector of ns3::NetDevice pointers
Definition:
net-device-container.h:41
ns3::WifiHelper::SetStandard
virtual void SetStandard(enum WifiPhyStandard standard)
Definition:
wifi-helper.cc:96
ns3::WifiHelper::AssignStreams
int64_t AssignStreams(NetDeviceContainer c, int64_t stream)
Assign a fixed random variable stream number to the random variables used by the Phy and Mac aspects ...
Definition:
wifi-helper.cc:177
ns3::NodeContainer
keep track of a set of node pointers.
Definition:
node-container.h:38
ns3::WifiHelper::m_stationManager
ObjectFactory m_stationManager
Definition:
wifi-helper.h:193
ns3::WifiPhyHelper::Create
virtual Ptr< WifiPhy > Create(Ptr< Node > node, Ptr< WifiNetDevice > device) const =0
ns3::WifiMacHelper
create MAC objects
Definition:
wifi-helper.h:68
ns3::ObjectFactory
instantiate subclasses of ns3::Object.
Definition:
object-factory.h:39
ns3::WifiHelper::EnableLogComponents
static void EnableLogComponents(void)
Helper to enable all WifiNetDevice log components with one statement.
Definition:
wifi-helper.cc:142
ns3::WifiMacHelper::~WifiMacHelper
virtual ~WifiMacHelper()
Definition:
wifi-helper.cc:51
ns3::WifiHelper::m_standard
enum WifiPhyStandard m_standard
Definition:
wifi-helper.h:194
ns3::WifiHelper::Default
static WifiHelper Default(void)
Definition:
wifi-helper.cc:65
src
wifi
helper
wifi-helper.h
Generated on Sat Apr 19 2014 14:07:10 for ns-3 by
1.8.6