A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Installation
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
burst-profile-manager.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2007,2008 INRIA
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: Jahanzeb Farooq <jahanzeb.farooq@sophia.inria.fr>
18
*/
19
20
#ifndef BURST_PROFILE_MANAGER_H
21
#define BURST_PROFILE_MANAGER_H
22
23
#include "
cid.h
"
24
#include "
wimax-net-device.h
"
25
#include "
wimax-phy.h
"
26
27
#include <stdint.h>
28
29
namespace
ns3
30
{
31
32
class
SSRecord;
33
class
RngReq;
34
40
class
BurstProfileManager
:
public
Object
41
{
42
public
:
47
static
TypeId
GetTypeId
();
53
BurstProfileManager
(
Ptr<WimaxNetDevice>
device);
54
~BurstProfileManager
()
override
;
55
56
// Delete copy constructor and assignment operator to avoid misuse
57
BurstProfileManager
(
const
BurstProfileManager
&) =
delete
;
58
BurstProfileManager
&
operator=
(
const
BurstProfileManager
&) =
delete
;
59
60
void
DoDispose
()
override
;
64
uint16_t
GetNrBurstProfilesToDefine
();
65
72
WimaxPhy::ModulationType
GetModulationType
(uint8_t iuc,
73
WimaxNetDevice::Direction
direction)
const
;
74
81
uint8_t
GetBurstProfile
(
WimaxPhy::ModulationType
modulationType,
82
WimaxNetDevice::Direction
direction)
const
;
83
91
uint8_t
GetBurstProfileForSS
(
const
SSRecord
* ssRecord,
92
const
RngReq
* rngreq,
93
WimaxPhy::ModulationType
& modulationType)
const
;
100
WimaxPhy::ModulationType
GetModulationTypeForSS
(
const
SSRecord
* ssRecord,
101
const
RngReq
* rngreq)
const
;
106
uint8_t
GetBurstProfileToRequest
();
107
108
private
:
109
Ptr<WimaxNetDevice>
m_device
;
110
};
111
112
}
// namespace ns3
113
114
#endif
/* BURST_PROFILE_MANAGER_H */
cid.h
ns3::BurstProfileManager
Profile manager for burst communications.
Definition:
burst-profile-manager.h:41
ns3::BurstProfileManager::m_device
Ptr< WimaxNetDevice > m_device
the device
Definition:
burst-profile-manager.h:109
ns3::BurstProfileManager::BurstProfileManager
BurstProfileManager(Ptr< WimaxNetDevice > device)
Constructor.
Definition:
burst-profile-manager.cc:47
ns3::BurstProfileManager::operator=
BurstProfileManager & operator=(const BurstProfileManager &)=delete
ns3::BurstProfileManager::GetModulationTypeForSS
WimaxPhy::ModulationType GetModulationTypeForSS(const SSRecord *ssRecord, const RngReq *rngreq) const
Get module ation type for SS.
Definition:
burst-profile-manager.cc:155
ns3::BurstProfileManager::GetBurstProfile
uint8_t GetBurstProfile(WimaxPhy::ModulationType modulationType, WimaxNetDevice::Direction direction) const
returns the burst profile
Definition:
burst-profile-manager.cc:107
ns3::BurstProfileManager::GetBurstProfileToRequest
uint8_t GetBurstProfileToRequest()
Get burst profile to request.
Definition:
burst-profile-manager.cc:161
ns3::BurstProfileManager::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition:
burst-profile-manager.cc:40
ns3::BurstProfileManager::~BurstProfileManager
~BurstProfileManager() override
Definition:
burst-profile-manager.cc:52
ns3::BurstProfileManager::BurstProfileManager
BurstProfileManager(const BurstProfileManager &)=delete
ns3::BurstProfileManager::GetNrBurstProfilesToDefine
uint16_t GetNrBurstProfilesToDefine()
Definition:
burst-profile-manager.cc:64
ns3::BurstProfileManager::GetBurstProfileForSS
uint8_t GetBurstProfileForSS(const SSRecord *ssRecord, const RngReq *rngreq, WimaxPhy::ModulationType &modulationType) const
Get burst profile for SS.
Definition:
burst-profile-manager.cc:142
ns3::BurstProfileManager::DoDispose
void DoDispose() override
Destructor implementation.
Definition:
burst-profile-manager.cc:58
ns3::BurstProfileManager::GetModulationType
WimaxPhy::ModulationType GetModulationType(uint8_t iuc, WimaxNetDevice::Direction direction) const
returns the modulation type of a given iuc
Definition:
burst-profile-manager.cc:73
ns3::Object
A base class which provides memory management and object aggregation.
Definition:
object.h:89
ns3::Ptr
Smart pointer class similar to boost::intrusive_ptr.
Definition:
ptr.h:77
ns3::RngReq
This class implements the ranging request message described by "IEEE Standard for Local and metropoli...
Definition:
mac-messages.h:664
ns3::SSRecord
This class is used by the base station to store some information related to subscriber station in the...
Definition:
ss-record.h:46
ns3::TypeId
a unique identifier for an interface.
Definition:
type-id.h:59
ns3::WimaxNetDevice::Direction
Direction
Direction enumeration.
Definition:
wimax-net-device.h:75
ns3::WimaxPhy::ModulationType
ModulationType
ModulationType enumeration.
Definition:
wimax-phy.h:54
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
wimax-net-device.h
wimax-phy.h
src
wimax
model
burst-profile-manager.h
Generated on Sun Mar 3 2024 17:11:13 for ns-3 by
1.9.1