A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Installation
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
wifi-default-assoc-manager.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2022 Universita' degli Studi di Napoli Federico II
3
*
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License version 2 as
6
* published by the Free Software Foundation;
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program; if not, write to the Free Software
15
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16
*
17
* Author: Stefano Avallone <stavallo@unina.it>
18
*/
19
20
#ifndef WIFI_DEFAULT_ASSOC_MANAGER_H
21
#define WIFI_DEFAULT_ASSOC_MANAGER_H
22
23
#include "
wifi-assoc-manager.h
"
24
25
namespace
ns3
26
{
27
28
class
StaWifiMac;
29
35
class
WifiDefaultAssocManager
:
public
WifiAssocManager
36
{
37
public
:
42
static
TypeId
GetTypeId
();
43
WifiDefaultAssocManager
();
44
~WifiDefaultAssocManager
()
override
;
45
46
void
NotifyChannelSwitched
(uint8_t linkId)
override
;
47
bool
Compare
(
const
StaWifiMac::ApInfo
& lhs,
const
StaWifiMac::ApInfo
& rhs)
const override
;
48
49
protected
:
50
void
DoDispose
()
override
;
51
bool
CanBeInserted
(
const
StaWifiMac::ApInfo
& apInfo)
const override
;
52
bool
CanBeReturned
(
const
StaWifiMac::ApInfo
& apInfo)
const override
;
53
58
void
EndScanning
();
59
60
private
:
61
void
DoStartScanning
()
override
;
62
69
void
ChannelSwitchTimeout
(uint8_t linkId);
70
71
EventId
m_waitBeaconEvent
;
72
EventId
m_probeRequestEvent
;
73
Time
m_channelSwitchTimeout
;
74
76
struct
ChannelSwitchInfo
77
{
78
EventId
timer
;
79
Mac48Address
apLinkAddress
;
80
Mac48Address
apMldAddress
;
81
};
82
83
std::vector<ChannelSwitchInfo>
m_channelSwitchInfo
;
84
};
85
86
}
// namespace ns3
87
88
#endif
/* WIFI_DEFAULT_ASSOC_MANAGER_H */
ns3::EventId
An identifier for simulation events.
Definition:
event-id.h:55
ns3::Mac48Address
an EUI-48 address
Definition:
mac48-address.h:46
ns3::Time
Simulation virtual time values and global simulation resolution.
Definition:
nstime.h:105
ns3::TypeId
a unique identifier for an interface.
Definition:
type-id.h:59
ns3::WifiAssocManager
Abstract base class for the Association Manager, which manages scanning and association for single li...
Definition:
wifi-assoc-manager.h:41
ns3::WifiDefaultAssocManager
Default wifi Association Manager.
Definition:
wifi-default-assoc-manager.h:36
ns3::WifiDefaultAssocManager::EndScanning
void EndScanning()
Perform operations to do at the end of a scanning procedure, such as identifying the links to setup i...
Definition:
wifi-default-assoc-manager.cc:120
ns3::WifiDefaultAssocManager::DoDispose
void DoDispose() override
Destructor implementation.
Definition:
wifi-default-assoc-manager.cc:67
ns3::WifiDefaultAssocManager::m_probeRequestEvent
EventId m_probeRequestEvent
probe request event
Definition:
wifi-default-assoc-manager.h:72
ns3::WifiDefaultAssocManager::~WifiDefaultAssocManager
~WifiDefaultAssocManager() override
Definition:
wifi-default-assoc-manager.cc:61
ns3::WifiDefaultAssocManager::DoStartScanning
void DoStartScanning() override
Start a scanning procedure.
Definition:
wifi-default-assoc-manager.cc:82
ns3::WifiDefaultAssocManager::CanBeInserted
bool CanBeInserted(const StaWifiMac::ApInfo &apInfo) const override
Allow subclasses to choose whether the given ApInfo shall be considered and hence inserted in the sor...
Definition:
wifi-default-assoc-manager.cc:294
ns3::WifiDefaultAssocManager::m_channelSwitchTimeout
Time m_channelSwitchTimeout
maximum delay for channel switching
Definition:
wifi-default-assoc-manager.h:73
ns3::WifiDefaultAssocManager::NotifyChannelSwitched
void NotifyChannelSwitched(uint8_t linkId) override
Notify that the given link has completed channel switching.
Definition:
wifi-default-assoc-manager.cc:252
ns3::WifiDefaultAssocManager::WifiDefaultAssocManager
WifiDefaultAssocManager()
Definition:
wifi-default-assoc-manager.cc:56
ns3::WifiDefaultAssocManager::Compare
bool Compare(const StaWifiMac::ApInfo &lhs, const StaWifiMac::ApInfo &rhs) const override
Compare two ApInfo objects for the purpose of keeping a sorted list of ApInfo objects.
Definition:
wifi-default-assoc-manager.cc:76
ns3::WifiDefaultAssocManager::m_waitBeaconEvent
EventId m_waitBeaconEvent
wait beacon event
Definition:
wifi-default-assoc-manager.h:71
ns3::WifiDefaultAssocManager::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition:
wifi-default-assoc-manager.cc:39
ns3::WifiDefaultAssocManager::ChannelSwitchTimeout
void ChannelSwitchTimeout(uint8_t linkId)
Take action upon the expiration of the timer set when requesting channel switch on the given link.
Definition:
wifi-default-assoc-manager.cc:271
ns3::WifiDefaultAssocManager::m_channelSwitchInfo
std::vector< ChannelSwitchInfo > m_channelSwitchInfo
per-link channel switch info
Definition:
wifi-default-assoc-manager.h:83
ns3::WifiDefaultAssocManager::CanBeReturned
bool CanBeReturned(const StaWifiMac::ApInfo &apInfo) const override
Allow subclasses to choose whether the given ApInfo shall be returned or discarded when the STA wifi ...
Definition:
wifi-default-assoc-manager.cc:300
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
ns3::StaWifiMac::ApInfo
Struct to hold information regarding observed AP through active/passive scanning.
Definition:
sta-wifi-mac.h:158
ns3::WifiDefaultAssocManager::ChannelSwitchInfo
Channel switch info.
Definition:
wifi-default-assoc-manager.h:77
ns3::WifiDefaultAssocManager::ChannelSwitchInfo::apLinkAddress
Mac48Address apLinkAddress
AP link address.
Definition:
wifi-default-assoc-manager.h:79
ns3::WifiDefaultAssocManager::ChannelSwitchInfo::timer
EventId timer
timer
Definition:
wifi-default-assoc-manager.h:78
ns3::WifiDefaultAssocManager::ChannelSwitchInfo::apMldAddress
Mac48Address apMldAddress
AP MLD address.
Definition:
wifi-default-assoc-manager.h:80
wifi-assoc-manager.h
src
wifi
model
wifi-default-assoc-manager.h
Generated on Sun Mar 3 2024 17:11:12 for ns-3 by
1.9.1