#include "lora-network-scheduler.h"
Public Member Functions | |
LoraNetworkScheduler () | |
LoraNetworkScheduler (Ptr< LoraNetworkStatus > status, Ptr< LoraNetworkController > controller) | |
virtual | ~LoraNetworkScheduler () |
TypeId | GetInstanceTypeId (void) const |
void | OnReceivedPacket (Ptr< const Packet > packet) |
Method called by NetworkServer to inform the Scheduler of a newly arrived uplink packet. More... | |
void | OnReceiveWindowOpportunity (LoraDeviceAddress deviceAddress, int window) |
Method that is scheduled after packet arrivals in order to act on receive windows 1 and 2 seconds later receptions. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Private Attributes | |
Ptr< LoraNetworkController > | m_controller |
Time | m_firstWindowAnswerDelay |
Delay to wait between end of reception of paquet and sending of anwser, to be in first window opportunity. More... | |
TracedCallback< Ptr< const Packet > > | m_receiveWindowOpened |
Time | m_secondWindowAnswerDelay |
Delay to wait between end of reception of paquet and sending of anwser, to be in second window opportunity. More... | |
Ptr< LoraNetworkStatus > | m_status |
Definition at line 42 of file lora-network-scheduler.h.
ns3::LoraNetworkScheduler::LoraNetworkScheduler | ( | ) |
Definition at line 66 of file lora-network-scheduler.cc.
ns3::LoraNetworkScheduler::LoraNetworkScheduler | ( | Ptr< LoraNetworkStatus > | status, |
Ptr< LoraNetworkController > | controller | ||
) |
Definition at line 70 of file lora-network-scheduler.cc.
References m_firstWindowAnswerDelay, and m_secondWindowAnswerDelay.
|
virtual |
Definition at line 83 of file lora-network-scheduler.cc.
TypeId ns3::LoraNetworkScheduler::GetInstanceTypeId | ( | void | ) | const |
Definition at line 61 of file lora-network-scheduler.cc.
References GetTypeId().
|
static |
Definition at line 35 of file lora-network-scheduler.cc.
References m_firstWindowAnswerDelay, m_receiveWindowOpened, and m_secondWindowAnswerDelay.
Referenced by GetInstanceTypeId().
void ns3::LoraNetworkScheduler::OnReceivedPacket | ( | Ptr< const Packet > | packet | ) |
Method called by NetworkServer to inform the Scheduler of a newly arrived uplink packet.
This function schedules the OnReceiveWindowOpportunity events 1 and 2 seconds later.
Definition at line 88 of file lora-network-scheduler.cc.
References ns3::LoraFrameHeader::GetAddress(), m_firstWindowAnswerDelay, m_status, OnReceiveWindowOpportunity(), and ns3::LoraFrameHeader::SetAsUplink().
void ns3::LoraNetworkScheduler::OnReceiveWindowOpportunity | ( | LoraDeviceAddress | deviceAddress, |
int | window | ||
) |
Method that is scheduled after packet arrivals in order to act on receive windows 1 and 2 seconds later receptions.
Definition at line 117 of file lora-network-scheduler.cc.
References m_controller, m_secondWindowAnswerDelay, and m_status.
Referenced by OnReceivedPacket().
|
private |
Definition at line 69 of file lora-network-scheduler.h.
Referenced by OnReceiveWindowOpportunity().
|
private |
Delay to wait between end of reception of paquet and sending of anwser, to be in first window opportunity.
Definition at line 75 of file lora-network-scheduler.h.
Referenced by LoraNetworkScheduler(), GetTypeId(), and OnReceivedPacket().
|
private |
Definition at line 67 of file lora-network-scheduler.h.
Referenced by GetTypeId().
|
private |
Delay to wait between end of reception of paquet and sending of anwser, to be in second window opportunity.
Definition at line 81 of file lora-network-scheduler.h.
Referenced by LoraNetworkScheduler(), GetTypeId(), and OnReceiveWindowOpportunity().
|
private |
Definition at line 68 of file lora-network-scheduler.h.
Referenced by OnReceivedPacket(), and OnReceiveWindowOpportunity().