ns3::SatLorawanNetDevice Class Reference

SatLorawanNetDevice to be utilized in the UT and GW nodes for IoT configuration. More...

#include "satellite-lorawan-net-device.h"

+ Inheritance diagram for ns3::SatLorawanNetDevice:
+ Collaboration diagram for ns3::SatLorawanNetDevice:

Public Types

typedef Callback< bool, Ptr< SatLorawanNetDevice >, Ptr< const Packet >, uint16_t, const Address & > ReceiveCallback
 

Public Member Functions

 SatLorawanNetDevice ()
 Default constructor. More...
 
Ptr< LorawanMacGetLorawanMac ()
 
void Receive (Ptr< const Packet > packet)
 
virtual bool Send (Ptr< Packet > packet, const Address &dest, uint16_t protocolNumber)
 
bool SendControlMsg (Ptr< SatControlMessage > msg, const Address &dest)
 
void SetLorawanMac (Ptr< LorawanMac > lorawanMac)
 
void SetReceiveNetworkServerCallback (SatLorawanNetDevice::ReceiveCallback cb)
 
- Public Member Functions inherited from ns3::SatNetDevice
 SatNetDevice ()
 Default constructor. More...
 
virtual void AddLinkChangeCallback (Callback< void > callback)
 
virtual Address GetAddress (void) const
 
virtual Address GetBroadcast (void) const
 
virtual Ptr< Channel > GetChannel (void) const
 
virtual uint32_t GetIfIndex (void) const
 
Ptr< SatLlcGetLlc (void) const
 Get Llc pointer. More...
 
Ptr< SatMacGetMac (void) const
 Get a Mac pointer. More...
 
virtual uint16_t GetMtu (void) const
 
virtual Address GetMulticast (Ipv4Address multicastGroup) const
 
virtual Address GetMulticast (Ipv6Address addr) const
 
virtual Ptr< Node > GetNode (void) const
 
Ptr< SatPacketClassifierGetPacketClassifier () const
 Get a pointer to packet classifier class. More...
 
Ptr< SatPhyGetPhy (void) const
 Get a Phy pointer. More...
 
virtual bool IsBridge (void) const
 
virtual bool IsBroadcast (void) const
 
virtual bool IsLinkUp (void) const
 
virtual bool IsMulticast (void) const
 
virtual bool IsPointToPoint (void) const
 
virtual bool NeedsArp (void) const
 
bool SendControlMsg (Ptr< SatControlMessage > msg, const Address &dest)
 
virtual bool SendFrom (Ptr< Packet > packet, const Address &source, const Address &dest, uint16_t protocolNumber)
 
virtual void SetAddress (Address address)
 
virtual void SetIfIndex (const uint32_t index)
 
void SetLlc (Ptr< SatLlc > llc)
 Attach the SatLlc llc layer to this netdevice. More...
 
void SetMac (Ptr< SatMac > mac)
 
virtual bool SetMtu (const uint16_t mtu)
 
virtual void SetNode (Ptr< Node > node)
 
void SetNodeInfo (Ptr< SatNodeInfo > nodeInfo)
 Set the node info. More...
 
void SetPacketClassifier (Ptr< SatPacketClassifier > classifier)
 Set the packet classifier class. More...
 
void SetPhy (Ptr< SatPhy > phy)
 
virtual void SetPromiscReceiveCallback (PromiscReceiveCallback cb)
 
virtual void SetReceiveCallback (NetDevice::ReceiveCallback cb)
 
void SetReceiveErrorModel (Ptr< ErrorModel > em)
 Attach a receive ErrorModel to the SatNetDevice. More...
 
virtual bool SupportsSendFrom (void) const
 
void ToggleState (bool enabled)
 Toggle the state of the device. More...
 

Static Public Member Functions

static TypeId GetTypeId (void)
 Get the type ID. More...
 
- Static Public Member Functions inherited from ns3::SatNetDevice
static TypeId GetTypeId (void)
 Get the type ID. More...
 

Protected Member Functions

virtual void DoDispose (void)
 Method called to inform the Scheduler of a newly arrived uplink packet. More...
 

Private Attributes

bool m_forwardToUtUsers
 
Ptr< LorawanMacm_lorawanMac
 
ReceiveCallback m_rxNetworkServerCallback
 

Additional Inherited Members

- Protected Attributes inherited from ns3::SatNetDevice
Mac48Address m_address
 
Ptr< SatPacketClassifierm_classifier
 
uint32_t m_ifIndex
 
bool m_isStatisticsTagsEnabled
 EnableStatisticsTags attribute. More...
 
Time m_lastDelay
 Last delay measurement. More...
 
Time m_lastLinkDelay
 Last link delay measurement. More...
 
Ptr< SatLlcm_llc
 
Ptr< SatMacm_mac
 
uint16_t m_mtu
 
Ptr< Node > m_node
 
Ptr< SatNodeInfom_nodeInfo
 
TracedCallback< Time, SatEnums::SatPacketEvent_t, SatEnums::SatNodeType_t, uint32_t, Mac48Address, SatEnums::SatLogLevel_t, SatEnums::SatLinkDir_t, std::string > m_packetTrace
 
Ptr< SatPhym_phy
 
NetDevice::PromiscReceiveCallback m_promiscCallback
 
Ptr< ErrorModel > m_receiveErrorModel
 
NetDevice::ReceiveCallback m_rxCallback
 
TracedCallback< const Time &, const Address & > m_rxDelayTrace
 Traced callback for all received packets, including delay information and the address of the senders. More...
 
TracedCallback< const Time &, const Address & > m_rxJitterTrace
 Traced callback for all received packets, including jitter information and the address of the senders. More...
 
TracedCallback< const Time &, const Address & > m_rxLinkDelayTrace
 Traced callback for all received packets, including link delay information and the address of the senders. More...
 
TracedCallback< const Time &, const Address & > m_rxLinkJitterTrace
 Traced callback for all received packets, including link jitter information and the address of the senders. More...
 
TracedCallback< Ptr< const Packet >, const Address & > m_rxTrace
 Traced callback for all received packets, including the address of the senders. More...
 
TracedCallback< Ptr< const Packet >, const Address & > m_signallingTxTrace
 Traced callback for all signalling (control message) packets sent, including the destination address. More...
 
TracedCallback< Ptr< const Packet > > m_txTrace
 Traced callback for all packets received to be transmitted. More...
 

Detailed Description

SatLorawanNetDevice to be utilized in the UT and GW nodes for IoT configuration.

Definition at line 45 of file satellite-lorawan-net-device.h.

Member Typedef Documentation

◆ ReceiveCallback

typedef Callback<bool, Ptr<SatLorawanNetDevice>, Ptr<const Packet>, uint16_t, const Address&> ns3::SatLorawanNetDevice::ReceiveCallback

Definition at line 72 of file satellite-lorawan-net-device.h.

Constructor & Destructor Documentation

◆ SatLorawanNetDevice()

ns3::SatLorawanNetDevice::SatLorawanNetDevice ( )

Default constructor.

Definition at line 50 of file satellite-lorawan-net-device.cc.

Member Function Documentation

◆ DoDispose()

void ns3::SatLorawanNetDevice::DoDispose ( void  )
protectedvirtual

Method called to inform the Scheduler of a newly arrived uplink packet.

This function schedules the OnReceiveWindowOpportunity events 1 and 2 seconds later. Method that is scheduled after packet arrivals in order to act on receive windows 1 and 2 seconds later receptions. Dispose of this class instance

Reimplemented from ns3::SatNetDevice.

Definition at line 207 of file satellite-lorawan-net-device.cc.

References ns3::SatNetDevice::DoDispose().

+ Here is the call graph for this function:

◆ GetLorawanMac()

Ptr< LorawanMac > ns3::SatLorawanNetDevice::GetLorawanMac ( )

Definition at line 187 of file satellite-lorawan-net-device.cc.

References m_lorawanMac.

Referenced by ns3::LoraForwarderHelper::InstallPriv().

+ Here is the caller graph for this function:

◆ GetTypeId()

TypeId ns3::SatLorawanNetDevice::GetTypeId ( void  )
static

Get the type ID.

Returns
the object TypeId

Definition at line 36 of file satellite-lorawan-net-device.cc.

References m_forwardToUtUsers.

◆ Receive()

◆ Send()

bool ns3::SatLorawanNetDevice::Send ( Ptr< Packet >  packet,
const Address &  dest,
uint16_t  protocolNumber 
)
virtual

◆ SendControlMsg()

bool ns3::SatLorawanNetDevice::SendControlMsg ( Ptr< SatControlMessage msg,
const Address &  dest 
)

Definition at line 180 of file satellite-lorawan-net-device.cc.

Referenced by ns3::SatBeamHelper::InstallFeeder().

+ Here is the caller graph for this function:

◆ SetLorawanMac()

void ns3::SatLorawanNetDevice::SetLorawanMac ( Ptr< LorawanMac lorawanMac)

Definition at line 193 of file satellite-lorawan-net-device.cc.

References m_lorawanMac, and ns3::SatNetDevice::SetMac().

+ Here is the call graph for this function:

◆ SetReceiveNetworkServerCallback()

void ns3::SatLorawanNetDevice::SetReceiveNetworkServerCallback ( SatLorawanNetDevice::ReceiveCallback  cb)

Definition at line 200 of file satellite-lorawan-net-device.cc.

References m_rxNetworkServerCallback.

Member Data Documentation

◆ m_forwardToUtUsers

bool ns3::SatLorawanNetDevice::m_forwardToUtUsers
private

Definition at line 97 of file satellite-lorawan-net-device.h.

Referenced by GetTypeId(), and Receive().

◆ m_lorawanMac

Ptr<LorawanMac> ns3::SatLorawanNetDevice::m_lorawanMac
private

Definition at line 96 of file satellite-lorawan-net-device.h.

Referenced by GetLorawanMac(), Send(), and SetLorawanMac().

◆ m_rxNetworkServerCallback

ReceiveCallback ns3::SatLorawanNetDevice::m_rxNetworkServerCallback
private

Definition at line 98 of file satellite-lorawan-net-device.h.

Referenced by Receive(), and SetReceiveNetworkServerCallback().


The documentation for this class was generated from the following files: