A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Installation
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
Loading...
Searching...
No Matches
jakes-propagation-loss-model.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2012 Telum (www.telum.ru)
3
*
4
* SPDX-License-Identifier: GPL-2.0-only
5
*
6
* Author: Kirill Andreev <andreev@telum.ru>
7
*/
8
#ifndef JAKES_STATIONARY_LOSS_MODEL_H
9
#define JAKES_STATIONARY_LOSS_MODEL_H
10
11
#include "
jakes-process.h
"
12
#include "
propagation-cache.h
"
13
#include "
propagation-loss-model.h
"
14
15
namespace
ns3
16
{
17
/**
18
* \ingroup propagation
19
*
20
* \brief a Jakes narrowband propagation model.
21
* Symmetrical cache for JakesProcess
22
*/
23
24
class
JakesPropagationLossModel
:
public
PropagationLossModel
25
{
26
public
:
27
/**
28
* \brief Get the type ID.
29
* \return the object TypeId
30
*/
31
static
TypeId
GetTypeId
();
32
JakesPropagationLossModel
();
33
~JakesPropagationLossModel
()
override
;
34
35
// Delete copy constructor and assignment operator to avoid misuse
36
JakesPropagationLossModel
(
const
JakesPropagationLossModel
&) =
delete
;
37
JakesPropagationLossModel
&
operator=
(
const
JakesPropagationLossModel
&) =
delete
;
38
39
protected
:
40
void
DoDispose
()
override
;
41
42
private
:
43
friend
class
JakesProcess
;
44
45
double
DoCalcRxPower
(
double
txPowerDbm,
46
Ptr<MobilityModel>
a,
47
Ptr<MobilityModel>
b)
const override
;
48
49
int64_t
DoAssignStreams
(int64_t stream)
override
;
50
51
/**
52
* Get the underlying RNG stream
53
* \return the RNG stream
54
*/
55
Ptr<UniformRandomVariable>
GetUniformRandomVariable
()
const
;
56
57
Ptr<UniformRandomVariable>
m_uniformVariable
;
//!< random stream
58
mutable
PropagationCache<JakesProcess>
m_propagationCache
;
//!< Propagation cache
59
};
60
61
}
// namespace ns3
62
63
#endif
/* JAKES_STATIONARY_LOSS_MODEL_H */
ns3::JakesProcess
Implementation for a single path Stationary Jakes propagation loss model.
Definition
jakes-process.h:46
ns3::JakesPropagationLossModel
a Jakes narrowband propagation model.
Definition
jakes-propagation-loss-model.h:25
ns3::JakesPropagationLossModel::GetUniformRandomVariable
Ptr< UniformRandomVariable > GetUniformRandomVariable() const
Get the underlying RNG stream.
Definition
jakes-propagation-loss-model.cc:72
ns3::JakesPropagationLossModel::JakesPropagationLossModel
JakesPropagationLossModel()
Definition
jakes-propagation-loss-model.cc:21
ns3::JakesPropagationLossModel::DoAssignStreams
int64_t DoAssignStreams(int64_t stream) override
Assign a fixed random variable stream number to the random variables used by this model.
Definition
jakes-propagation-loss-model.cc:78
ns3::JakesPropagationLossModel::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition
jakes-propagation-loss-model.cc:33
ns3::JakesPropagationLossModel::m_propagationCache
PropagationCache< JakesProcess > m_propagationCache
Propagation cache.
Definition
jakes-propagation-loss-model.h:58
ns3::JakesPropagationLossModel::~JakesPropagationLossModel
~JakesPropagationLossModel() override
Definition
jakes-propagation-loss-model.cc:28
ns3::JakesPropagationLossModel::m_uniformVariable
Ptr< UniformRandomVariable > m_uniformVariable
random stream
Definition
jakes-propagation-loss-model.h:57
ns3::JakesPropagationLossModel::DoCalcRxPower
double DoCalcRxPower(double txPowerDbm, Ptr< MobilityModel > a, Ptr< MobilityModel > b) const override
PropagationLossModel.
Definition
jakes-propagation-loss-model.cc:50
ns3::JakesPropagationLossModel::DoDispose
void DoDispose() override
Destructor implementation.
Definition
jakes-propagation-loss-model.cc:43
ns3::JakesPropagationLossModel::operator=
JakesPropagationLossModel & operator=(const JakesPropagationLossModel &)=delete
ns3::JakesPropagationLossModel::JakesPropagationLossModel
JakesPropagationLossModel(const JakesPropagationLossModel &)=delete
ns3::PropagationCache
Constructs a cache of objects, where each object is responsible for a single propagation path loss ca...
Definition
propagation-cache.h:25
ns3::PropagationLossModel
Models the propagation loss through a transmission medium.
Definition
propagation-loss-model.h:45
ns3::Ptr
Smart pointer class similar to boost::intrusive_ptr.
Definition
mpi-test-fixtures.h:37
ns3::TypeId
a unique identifier for an interface.
Definition
type-id.h:48
jakes-process.h
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
propagation-cache.h
propagation-loss-model.h
src
propagation
model
jakes-propagation-loss-model.h
Generated on Fri Nov 8 2024 13:59:05 for ns-3 by
1.11.0