This class represents a configurable reception path. More...
#include "gateway-lora-phy.h"
Public Member Functions | |
ReceptionPath () | |
Constructor. | |
~ReceptionPath () | |
Destructor. | |
void | Free () |
Set this reception path as available. | |
EventId | GetEndReceive () |
Get the EventId of the EndReceive call associated to this ReceptionPath's packet. | |
Ptr< LoraInterferenceHelper::Event > | GetEvent () |
Get the event this reception path is currently on. | |
bool | IsAvailable () const |
Query whether this reception path is available to lock on a signal. | |
void | LockOnEvent (Ptr< LoraInterferenceHelper::Event > event) |
Set this reception path as not available and lock it on the provided event. | |
void | SetEndReceive (EventId endReceiveEventId) |
Set the EventId of the EndReceive call associated to this ReceptionPath's packet. | |
void | SetEvent (Ptr< LoraInterferenceHelper::Event > event) |
Set the event this reception path is currently on. | |
![]() | |
SimpleRefCount () | |
Default constructor. | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. | |
uint32_t | GetReferenceCount () const |
Get the reference count of the object. | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment operator. | |
void | Ref () const |
Increment the reference count. | |
void | Unref () const |
Decrement the reference count. | |
Private Attributes | |
bool | m_available |
Whether this reception path is available to lock on a signal or not. | |
EventId | m_endReceiveEventId |
The EventId associated of the call to EndReceive that is scheduled to happen when the packet this ReceivePath is locked on finishes reception. | |
Ptr< LoraInterferenceHelper::Event > | m_event |
The event this reception path is currently locked on. | |
This class represents a configurable reception path.
Differently from EndDeviceLoraPhys, these do not need to be configured to listen for a certain spreading factor. ReceptionPaths be either locked on an event or free.
Definition at line 114 of file gateway-lora-phy.h.
ns3::lorawan::GatewayLoraPhy::ReceptionPath::ReceptionPath | ( | ) |
Constructor.
Definition at line 29 of file gateway-lora-phy.cc.
References m_available, m_endReceiveEventId, m_event, and NS_LOG_FUNCTION_NOARGS.
ns3::lorawan::GatewayLoraPhy::ReceptionPath::~ReceptionPath | ( | ) |
void ns3::lorawan::GatewayLoraPhy::ReceptionPath::Free | ( | ) |
Set this reception path as available.
This function sets the m_available variable as true, and deletes the LoraInterferenceHelper Event this ReceivePath was previously locked on.
Definition at line 49 of file gateway-lora-phy.cc.
References m_available, m_endReceiveEventId, and m_event.
EventId ns3::lorawan::GatewayLoraPhy::ReceptionPath::GetEndReceive | ( | ) |
Get the EventId of the EndReceive call associated to this ReceptionPath's packet.
Definition at line 76 of file gateway-lora-phy.cc.
References m_endReceiveEventId.
Ptr< LoraInterferenceHelper::Event > ns3::lorawan::GatewayLoraPhy::ReceptionPath::GetEvent | ( | ) |
Get the event this reception path is currently on.
Definition at line 70 of file gateway-lora-phy.cc.
References m_event.
bool ns3::lorawan::GatewayLoraPhy::ReceptionPath::IsAvailable | ( | ) | const |
Query whether this reception path is available to lock on a signal.
Definition at line 43 of file gateway-lora-phy.cc.
References m_available.
void ns3::lorawan::GatewayLoraPhy::ReceptionPath::LockOnEvent | ( | Ptr< LoraInterferenceHelper::Event > | event | ) |
Set this reception path as not available and lock it on the provided event.
event | The LoraInterferenceHelper Event to lock on. |
Definition at line 57 of file gateway-lora-phy.cc.
References m_available, and m_event.
void ns3::lorawan::GatewayLoraPhy::ReceptionPath::SetEndReceive | ( | EventId | endReceiveEventId | ) |
Set the EventId of the EndReceive call associated to this ReceptionPath's packet.
endReceiveEventId | The EventId instance. |
Definition at line 82 of file gateway-lora-phy.cc.
References m_endReceiveEventId.
void ns3::lorawan::GatewayLoraPhy::ReceptionPath::SetEvent | ( | Ptr< LoraInterferenceHelper::Event > | event | ) |
Set the event this reception path is currently on.
event | The event to lock this ReceptionPath on. |
Definition at line 64 of file gateway-lora-phy.cc.
References m_event.
|
private |
Whether this reception path is available to lock on a signal or not.
Definition at line 178 of file gateway-lora-phy.h.
Referenced by ReceptionPath(), Free(), IsAvailable(), and LockOnEvent().
|
private |
The EventId associated of the call to EndReceive that is scheduled to happen when the packet this ReceivePath is locked on finishes reception.
Definition at line 181 of file gateway-lora-phy.h.
Referenced by ReceptionPath(), Free(), GetEndReceive(), and SetEndReceive().
|
private |
The event this reception path is currently locked on.
Definition at line 180 of file gateway-lora-phy.h.
Referenced by ReceptionPath(), Free(), GetEvent(), LockOnEvent(), and SetEvent().