![]() |
5G-LENA nr-v3.3-120-gdac69c56
The 5G/NR module for the ns-3 simulator
|
Mac variable-size Header for DL. More...
#include "nr-mac-header-vs-dl.h"
Public Member Functions | |
NrMacHeaderVsDl () | |
NrMacHeaderVsDl constructor. | |
~NrMacHeaderVsDl () override | |
~NrMacHeaderVsDl | |
TypeId | GetInstanceTypeId () const override |
GetInstanceTypeId. | |
bool | IsVariableSizeHeader () const |
Check if it really a variable-size header. | |
void | SetLcId (uint8_t lcId) override |
Set the LC ID. | |
![]() | |
NrMacHeaderVs () | |
NrMacHeaderVs constructor. | |
uint32_t | Deserialize (Buffer::Iterator start) override |
Deserialize from a buffer. | |
TypeId | GetInstanceTypeId () const override |
GetInstanceTypeId. | |
uint8_t | GetLcId () const |
Retrieve the LC ID of this header. | |
uint32_t | GetSerializedSize () const override |
Get the serialized size. | |
uint16_t | GetSize () const |
GetS the stored size (L in the standard) | |
bool | operator== (const NrMacHeaderVs &o) const |
IsEqual. | |
void | Print (std::ostream &os) const override |
Print the struct on a ostream. | |
void | Serialize (Buffer::Iterator start) const override |
Serialize on a buffer. | |
void | SetSize (uint16_t size) |
Set the size to store (L in the standard) | |
Static Public Member Functions | |
static TypeId | GetTypeId () |
GetTypeId. | |
![]() | |
static TypeId | GetTypeId () |
GetTypeId. | |
Static Public Attributes | |
static const uint8_t | APERIODIC_CSI = 54 |
Aperiodic CSI Trigger State Subselection. | |
static const uint8_t | SP_CSI_RS_IM |
SP CSI-RS / CSI-IM Resource Set Activation/Deactivation. | |
static const uint8_t | SP_SRS = 50 |
SP SRS Activation/Deactivation. | |
static const uint8_t | TCI_STATES_PDSCH |
TCI States Activation/Deactivation for UE-specific PDSCH. | |
![]() | |
static const uint8_t | LC_ID_1 = 1 |
Identity of the logical channel 1. | |
static const uint8_t | LC_ID_10 = 10 |
Identity of the logical channel 10. | |
static const uint8_t | LC_ID_11 = 11 |
Identity of the logical channel 11. | |
static const uint8_t | LC_ID_12 = 12 |
Identity of the logical channel 12. | |
static const uint8_t | LC_ID_13 = 13 |
Identity of the logical channel 13. | |
static const uint8_t | LC_ID_14 = 14 |
Identity of the logical channel 14. | |
static const uint8_t | LC_ID_15 = 15 |
Identity of the logical channel 15. | |
static const uint8_t | LC_ID_16 = 16 |
Identity of the logical channel 16. | |
static const uint8_t | LC_ID_17 = 17 |
Identity of the logical channel 17. | |
static const uint8_t | LC_ID_18 = 18 |
Identity of the logical channel 18. | |
static const uint8_t | LC_ID_19 = 19 |
Identity of the logical channel 19. | |
static const uint8_t | LC_ID_2 = 2 |
Identity of the logical channel 2. | |
static const uint8_t | LC_ID_20 = 20 |
Identity of the logical channel 20. | |
static const uint8_t | LC_ID_21 = 21 |
Identity of the logical channel 21. | |
static const uint8_t | LC_ID_22 = 22 |
Identity of the logical channel 22. | |
static const uint8_t | LC_ID_23 = 23 |
Identity of the logical channel 23. | |
static const uint8_t | LC_ID_24 = 24 |
Identity of the logical channel 24. | |
static const uint8_t | LC_ID_25 = 25 |
Identity of the logical channel 25. | |
static const uint8_t | LC_ID_26 = 26 |
Identity of the logical channel 26. | |
static const uint8_t | LC_ID_27 = 27 |
Identity of the logical channel 27. | |
static const uint8_t | LC_ID_28 = 28 |
Identity of the logical channel 28. | |
static const uint8_t | LC_ID_29 = 29 |
Identity of the logical channel 29. | |
static const uint8_t | LC_ID_3 = 3 |
Identity of the logical channel 3. | |
static const uint8_t | LC_ID_30 = 30 |
Identity of the logical channel 30. | |
static const uint8_t | LC_ID_31 = 31 |
Identity of the logical channel 31. | |
static const uint8_t | LC_ID_32 = 32 |
Identity of the logical channel 32. | |
static const uint8_t | LC_ID_4 = 4 |
Identity of the logical channel 4. | |
static const uint8_t | LC_ID_5 = 5 |
Identity of the logical channel 5. | |
static const uint8_t | LC_ID_6 = 6 |
Identity of the logical channel 6. | |
static const uint8_t | LC_ID_7 = 7 |
Identity of the logical channel 7. | |
static const uint8_t | LC_ID_8 = 8 |
Identity of the logical channel 8. | |
static const uint8_t | LC_ID_9 = 9 |
Identity of the logical channel 9. | |
Additional Inherited Members | |
![]() | |
uint8_t | m_lcid {0} |
LC ID. | |
uint16_t | m_size {0} |
Size (L in the standard) | |
Mac variable-size Header for DL.
This header performs some sanity check for the LCID value, but the functionality is almost the same as NrMacHeaderVs. Please note that, by standard, only some LCID can be used in DL transmissions.
Please refer to TS 38.321 section 6.1.2 for more information.
Users, don't use this header directly: you've been warned.
This header must be used to report some variable-sized CE to the UE. At the moment, we don't use it.
Introspection did not find any typical Config paths.
No Attributes are defined for this type.
No TraceSources are defined for this type.
Size of this type is 16 bytes (on a 64-bit architecture).
Definition at line 31 of file nr-mac-header-vs-dl.h.
ns3::NrMacHeaderVsDl::NrMacHeaderVsDl | ( | ) |
NrMacHeaderVsDl constructor.
Definition at line 29 of file nr-mac-header-vs-dl.cc.
|
override |
~NrMacHeaderVsDl
Definition at line 34 of file nr-mac-header-vs-dl.cc.
|
override |
GetInstanceTypeId.
Definition at line 24 of file nr-mac-header-vs-dl.cc.
References GetTypeId().
|
static |
GetTypeId.
Definition at line 16 of file nr-mac-header-vs-dl.cc.
Referenced by GetInstanceTypeId().
bool ns3::NrMacHeaderVsDl::IsVariableSizeHeader | ( | ) | const |
Check if it really a variable-size header.
Definition at line 54 of file nr-mac-header-vs-dl.cc.
References APERIODIC_CSI, ns3::NrMacHeaderVs::m_lcid, SP_CSI_RS_IM, SP_SRS, and TCI_STATES_PDSCH.
Referenced by SetLcId().
|
overridevirtual |
Set the LC ID.
lcId | LC ID |
It will assert if the value is not inside the vector of allowed one. To not make any error, please use one of the pre-defined const values in this class.
Reimplemented from ns3::NrMacHeaderVs.
Definition at line 40 of file nr-mac-header-vs-dl.cc.
References IsVariableSizeHeader(), ns3::NrMacHeaderVs::m_lcid, and ns3::NrMacHeaderVs::SetLcId().
|
static |
Aperiodic CSI Trigger State Subselection.
Definition at line 59 of file nr-mac-header-vs-dl.h.
Referenced by IsVariableSizeHeader().
|
static |
SP CSI-RS / CSI-IM Resource Set Activation/Deactivation.
Definition at line 60 of file nr-mac-header-vs-dl.h.
Referenced by IsVariableSizeHeader().
|
static |
SP SRS Activation/Deactivation.
Definition at line 56 of file nr-mac-header-vs-dl.h.
Referenced by IsVariableSizeHeader().
|
static |
TCI States Activation/Deactivation for UE-specific PDSCH.
Definition at line 57 of file nr-mac-header-vs-dl.h.
Referenced by IsVariableSizeHeader().