This class represents a logical LoRaWAN channel. More...
#include "lora-logical-channel.h"
Public Member Functions | |
LoraLogicalChannel () | |
LoraLogicalChannel (double frequency) | |
LoraLogicalChannel (double frequency, uint8_t minDataRate, uint8_t maxDataRate) | |
Constructor providing initialization of frequency and data rate limits. More... | |
virtual | ~LoraLogicalChannel () |
void | DisableForUplink (void) |
Set this channel as disabled for uplink. More... | |
double | GetFrequency (void) const |
Get the frequency (MHz). More... | |
uint8_t | GetMaximumDataRate (void) |
Get the maximum Data Rate that is allowed on this channel. More... | |
uint8_t | GetMinimumDataRate (void) |
Get the minimum Data Rate that is allowed on this channel. More... | |
bool | IsEnabledForUplink (void) |
Test whether this channel is marked as enabled for uplink. More... | |
void | SetEnabledForUplink (void) |
Set this channel as enabled for uplink. More... | |
void | SetMaximumDataRate (uint8_t maxDataRate) |
Set the maximum Data Rate that is allowed on this channel. More... | |
void | SetMinimumDataRate (uint8_t minDataRate) |
Set the frequency (MHz). More... | |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Private Attributes | |
bool | m_enabledForUplink |
Whether this channel can be used for uplink or not. More... | |
double | m_frequency |
The central frequency of this channel, in MHz. More... | |
uint8_t | m_maxDataRate |
The maximum Data Rate that is allowed on this channel. More... | |
uint8_t | m_minDataRate |
The minimum Data Rate that is allowed on this channel. More... | |
This class represents a logical LoRaWAN channel.
A logical channel is characterized by a central frequency and a range of data rates that can be sent on it.
Furthermore, a LoraLogicalChannel can be marked as enabled or disabled for uplink transmission.
Definition at line 42 of file lora-logical-channel.h.
ns3::LoraLogicalChannel::LoraLogicalChannel | ( | ) |
Definition at line 41 of file lora-logical-channel.cc.
|
virtual |
Definition at line 50 of file lora-logical-channel.cc.
ns3::LoraLogicalChannel::LoraLogicalChannel | ( | double | frequency | ) |
Definition at line 55 of file lora-logical-channel.cc.
ns3::LoraLogicalChannel::LoraLogicalChannel | ( | double | frequency, |
uint8_t | minDataRate, | ||
uint8_t | maxDataRate | ||
) |
Constructor providing initialization of frequency and data rate limits.
frequency | This channel's frequency. |
minDataRate | This channel's minimum data rate. |
maxDataRate | This channel's maximum data rate. |
Definition at line 62 of file lora-logical-channel.cc.
void ns3::LoraLogicalChannel::DisableForUplink | ( | void | ) |
Set this channel as disabled for uplink.
Definition at line 108 of file lora-logical-channel.cc.
References m_enabledForUplink.
double ns3::LoraLogicalChannel::GetFrequency | ( | void | ) | const |
Get the frequency (MHz).
Definition at line 72 of file lora-logical-channel.cc.
References m_frequency.
uint8_t ns3::LoraLogicalChannel::GetMaximumDataRate | ( | void | ) |
Get the maximum Data Rate that is allowed on this channel.
Definition at line 96 of file lora-logical-channel.cc.
References m_maxDataRate.
uint8_t ns3::LoraLogicalChannel::GetMinimumDataRate | ( | void | ) |
Get the minimum Data Rate that is allowed on this channel.
Definition at line 90 of file lora-logical-channel.cc.
References m_minDataRate.
|
static |
Definition at line 35 of file lora-logical-channel.cc.
bool ns3::LoraLogicalChannel::IsEnabledForUplink | ( | void | ) |
Test whether this channel is marked as enabled for uplink.
Definition at line 114 of file lora-logical-channel.cc.
References m_enabledForUplink.
void ns3::LoraLogicalChannel::SetEnabledForUplink | ( | void | ) |
Set this channel as enabled for uplink.
Definition at line 102 of file lora-logical-channel.cc.
References m_enabledForUplink.
void ns3::LoraLogicalChannel::SetMaximumDataRate | ( | uint8_t | maxDataRate | ) |
Set the maximum Data Rate that is allowed on this channel.
Definition at line 84 of file lora-logical-channel.cc.
References m_maxDataRate.
void ns3::LoraLogicalChannel::SetMinimumDataRate | ( | uint8_t | minDataRate | ) |
Set the frequency (MHz).
frequencyMHz | The center frequency this channel should be at. Set the minimum Data Rate that is allowed on this channel. |
Definition at line 78 of file lora-logical-channel.cc.
References m_minDataRate.
|
private |
Whether this channel can be used for uplink or not.
Definition at line 129 of file lora-logical-channel.h.
Referenced by DisableForUplink(), IsEnabledForUplink(), and SetEnabledForUplink().
|
private |
The central frequency of this channel, in MHz.
Definition at line 114 of file lora-logical-channel.h.
Referenced by GetFrequency().
|
private |
The maximum Data Rate that is allowed on this channel.
Definition at line 124 of file lora-logical-channel.h.
Referenced by GetMaximumDataRate(), and SetMaximumDataRate().
|
private |
The minimum Data Rate that is allowed on this channel.
Definition at line 119 of file lora-logical-channel.h.
Referenced by GetMinimumDataRate(), and SetMinimumDataRate().