Implementation of the NewChannelReq LoRaWAN MAC command. More...
#include "mac-command.h"
Public Member Functions | |
| NewChannelReq () | |
| Default constructor. | |
| NewChannelReq (uint8_t chIndex, uint32_t frequencyHz, uint8_t minDataRate, uint8_t maxDataRate) | |
| Constructor providing initialization of all parameters. | |
| uint8_t | Deserialize (Buffer::Iterator &start) override |
| Deserialize the buffer into a MAC command. | |
| uint8_t | GetChannelIndex () const |
| Get the the ChIndex field contained in this MAC command. | |
| uint32_t | GetFrequency () const |
| Get the the Frequency field contained in this MAC command. | |
| uint8_t | GetMaxDataRate () const |
| Get the the MaxDR field contained in this MAC command. | |
| uint8_t | GetMinDataRate () const |
| Get the the MinDR field contained in this MAC command. | |
| void | Print (std::ostream &os) const override |
| Print the contents of this MAC command in human-readable format. | |
| void | Serialize (Buffer::Iterator &start) const override |
| Serialize the contents of this MAC command into a buffer, according to the LoRaWAN standard. | |
| Public Member Functions inherited from ns3::lorawan::MacCommand | |
| MacCommand () | |
| Default constructor. | |
| virtual | ~MacCommand () |
| Destructor. | |
| virtual enum MacCommandType | GetCommandType () const |
| Get the commandType of this MAC command. | |
| virtual uint8_t | GetSerializedSize () const |
| Get serialized length of this MAC command. | |
| Public Member Functions inherited from ns3::SimpleRefCount< MacCommand > | |
| SimpleRefCount () | |
| Default 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 | |
| uint8_t | m_chIndex |
| The ChIndex field. | |
| uint32_t | m_frequencyHz |
| The Frequency field, in Hz. | |
| uint8_t | m_maxDataRate |
| The MaxDR field. | |
| uint8_t | m_minDataRate |
| The MinDR field. | |
Additional Inherited Members | |
| Static Public Member Functions inherited from ns3::lorawan::MacCommand | |
| static uint8_t | GetCIDFromMacCommand (enum MacCommandType commandType) |
| Get the CID that corresponds to a type of MAC command. | |
| Protected Attributes inherited from ns3::lorawan::MacCommand | |
| enum MacCommandType | m_commandType |
| The type of this command. | |
| uint8_t | m_serializedSize |
| This MAC command's serialized size. | |
Implementation of the NewChannelReq LoRaWAN MAC command.
Definition at line 544 of file mac-command.h.
| ns3::lorawan::NewChannelReq::NewChannelReq | ( | ) |
Default constructor.
Definition at line 716 of file mac-command.cc.
References ns3::lorawan::MacCommand::m_commandType, ns3::lorawan::MacCommand::m_serializedSize, ns3::lorawan::NEW_CHANNEL_REQ, and NS_LOG_FUNCTION.
| ns3::lorawan::NewChannelReq::NewChannelReq | ( | uint8_t | chIndex, |
| uint32_t | frequencyHz, | ||
| uint8_t | minDataRate, | ||
| uint8_t | maxDataRate ) |
Constructor providing initialization of all parameters.
| chIndex | The index of the channel this command wants to operate on. |
| frequencyHz | The new frequency for this channel in Hz. |
| minDataRate | The minimum data rate allowed on this channel. |
| maxDataRate | The maximum data rate allowed on this channel. |
Definition at line 723 of file mac-command.cc.
References m_chIndex, ns3::lorawan::MacCommand::m_commandType, m_frequencyHz, m_maxDataRate, m_minDataRate, ns3::lorawan::MacCommand::m_serializedSize, ns3::lorawan::NEW_CHANNEL_REQ, NS_ASSERT_MSG, and NS_LOG_FUNCTION.
|
overridevirtual |
Deserialize the buffer into a MAC command.
| start | A pointer to the buffer that contains the serialized command. |
Implements ns3::lorawan::MacCommand.
Definition at line 754 of file mac-command.cc.
References m_chIndex, m_frequencyHz, m_maxDataRate, m_minDataRate, ns3::lorawan::MacCommand::m_serializedSize, and NS_LOG_FUNCTION.
| uint8_t ns3::lorawan::NewChannelReq::GetChannelIndex | ( | ) | const |
Get the the ChIndex field contained in this MAC command.
Definition at line 784 of file mac-command.cc.
References m_chIndex, and NS_LOG_FUNCTION.
| uint32_t ns3::lorawan::NewChannelReq::GetFrequency | ( | ) | const |
Get the the Frequency field contained in this MAC command.
Definition at line 791 of file mac-command.cc.
References m_frequencyHz, and NS_LOG_FUNCTION.
| uint8_t ns3::lorawan::NewChannelReq::GetMaxDataRate | ( | ) | const |
Get the the MaxDR field contained in this MAC command.
Definition at line 805 of file mac-command.cc.
References m_maxDataRate, and NS_LOG_FUNCTION.
| uint8_t ns3::lorawan::NewChannelReq::GetMinDataRate | ( | ) | const |
Get the the MinDR field contained in this MAC command.
Definition at line 798 of file mac-command.cc.
References m_minDataRate, and NS_LOG_FUNCTION.
|
overridevirtual |
Print the contents of this MAC command in human-readable format.
| os | The std::ostream instance on which to print the MAC command. |
Implements ns3::lorawan::MacCommand.
Definition at line 772 of file mac-command.cc.
References m_chIndex, m_frequencyHz, m_maxDataRate, m_minDataRate, and NS_LOG_FUNCTION.
|
overridevirtual |
Serialize the contents of this MAC command into a buffer, according to the LoRaWAN standard.
| start | A pointer to the buffer into which to serialize the command. |
Implements ns3::lorawan::MacCommand.
Definition at line 740 of file mac-command.cc.
References ns3::lorawan::MacCommand::GetCIDFromMacCommand(), m_chIndex, ns3::lorawan::MacCommand::m_commandType, m_frequencyHz, m_maxDataRate, m_minDataRate, and NS_LOG_FUNCTION.
|
private |
The ChIndex field.
Definition at line 589 of file mac-command.h.
Referenced by NewChannelReq(), Deserialize(), GetChannelIndex(), Print(), and Serialize().
|
private |
The Frequency field, in Hz.
Definition at line 590 of file mac-command.h.
Referenced by NewChannelReq(), Deserialize(), GetFrequency(), Print(), and Serialize().
|
private |
The MaxDR field.
Definition at line 592 of file mac-command.h.
Referenced by NewChannelReq(), Deserialize(), GetMaxDataRate(), Print(), and Serialize().
|
private |
The MinDR field.
Definition at line 591 of file mac-command.h.
Referenced by NewChannelReq(), Deserialize(), GetMinDataRate(), Print(), and Serialize().