A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::RrcAsn1Header Class Referenceabstract

This class extends Asn1Header functions, adding serialization/deserialization of some Information elements defined in 3GPP TS 36.331. More...

#include "lte-rrc-header.h"

+ Inheritance diagram for ns3::RrcAsn1Header:
+ Collaboration diagram for ns3::RrcAsn1Header:

Public Member Functions

 RrcAsn1Header ()
 
int GetMessageType () const
 Get message type.
 
- Public Member Functions inherited from ns3::Asn1Header
 Asn1Header ()
 
 ~Asn1Header () override
 
uint32_t Deserialize (Buffer::Iterator bIterator) override=0
 
TypeId GetInstanceTypeId () const override
 Get the most derived TypeId for this Object.
 
uint32_t GetSerializedSize () const override
 
virtual void PreSerialize () const =0
 This function serializes class attributes to m_serializationResult local Buffer.
 
void Print (std::ostream &os) const override=0
 
void Serialize (Buffer::Iterator bIterator) const override
 
- Public Member Functions inherited from ns3::Header
 ~Header () override
 
uint32_t Deserialize (Buffer::Iterator start) override=0
 
virtual uint32_t Deserialize (Buffer::Iterator start)=0
 Deserialize the object from a buffer iterator.
 
virtual uint32_t Deserialize (Buffer::Iterator start, Buffer::Iterator end)
 Deserialize the object from a buffer iterator.
 
virtual uint32_t GetSerializedSize () const =0
 
void Print (std::ostream &os) const override=0
 
virtual void Serialize (Buffer::Iterator start) const =0
 
virtual uint32_t Deserialize (Buffer::Iterator start)=0
 Deserialize the object from a buffer iterator.
 
virtual uint32_t Deserialize (Buffer::Iterator start, Buffer::Iterator end)
 Deserialize the object from a buffer iterator.
 
virtual void Print (std::ostream &os) const =0
 Print the object contents.
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor.
 
void GetAttribute (std::string name, AttributeValue &value) const
 Get the value of an attribute, raising fatal errors if unsuccessful.
 
bool GetAttributeFailSafe (std::string name, AttributeValue &value) const
 Get the value of an attribute without raising errors.
 
virtual TypeId GetInstanceTypeId () const =0
 Get the most derived TypeId for this Object.
 
void SetAttribute (std::string name, const AttributeValue &value)
 Set a single attribute, raising fatal errors if unsuccessful.
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 Set a single attribute without raising errors.
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 Connect a TraceSource to a Callback with a context.
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 Connect a TraceSource to a Callback without a context.
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected with a context.
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected without a context.
 

Protected Member Functions

int BandwidthToEnum (uint16_t bandwidth) const
 Convert from bandwidth (in RBs) to ENUMERATED value.
 
uint32_t Deserialize (Buffer::Iterator bIterator) override=0
 
Buffer::Iterator DeserializeCellIdentification (LteRrcSap::CellIdentification *ci, Buffer::Iterator bIterator)
 Deserialize cell identification function.
 
Buffer::Iterator DeserializeDrbToAddModList (std::list< LteRrcSap::DrbToAddMod > *drbToAddModLis, Buffer::Iterator bIterator)
 Deserialize DRB to add mod list function.
 
Buffer::Iterator DeserializeLogicalChannelConfig (LteRrcSap::LogicalChannelConfig *logicalChannelConfig, Buffer::Iterator bIterator)
 Deserialize logical channel config function.
 
Buffer::Iterator DeserializeMeasConfig (LteRrcSap::MeasConfig *measConfig, Buffer::Iterator bIterator)
 Deserialize measure config function.
 
Buffer::Iterator DeserializeMeasResults (LteRrcSap::MeasResults *measResults, Buffer::Iterator bIterator)
 Deserialize measure results function.
 
Buffer::Iterator DeserializeNonCriticalExtensionConfig (LteRrcSap::NonCriticalExtensionConfiguration *nonCriticalExtension, Buffer::Iterator bIterator)
 Deserialize non critical extension config function.
 
Buffer::Iterator DeserializePhysicalConfigDedicated (LteRrcSap::PhysicalConfigDedicated *physicalConfigDedicated, Buffer::Iterator bIterator)
 Deserialize physical config dedicated function.
 
Buffer::Iterator DeserializePhysicalConfigDedicatedSCell (LteRrcSap::PhysicalConfigDedicatedSCell *pcdsc, Buffer::Iterator bIterator)
 Deserialize physical config dedicated SCell function.
 
Buffer::Iterator DeserializePlmnIdentity (uint32_t *plmnId, Buffer::Iterator bIterator)
 Deserialize PLMN identity function.
 
Buffer::Iterator DeserializeQoffsetRange (int8_t *qOffsetRange, Buffer::Iterator bIterator)
 Deserialize Qoffset range function.
 
Buffer::Iterator DeserializeRachConfigCommon (LteRrcSap::RachConfigCommon *rachConfigCommon, Buffer::Iterator bIterator)
 Deserialize RACH config common function.
 
Buffer::Iterator DeserializeRadioResourceConfigCommon (LteRrcSap::RadioResourceConfigCommon *radioResourceConfigCommon, Buffer::Iterator bIterator)
 Deserialize radio resource config common function.
 
Buffer::Iterator DeserializeRadioResourceConfigCommonSCell (LteRrcSap::RadioResourceConfigCommonSCell *rrccsc, Buffer::Iterator bIterator)
 Deserialize radio resource config common SCell function.
 
Buffer::Iterator DeserializeRadioResourceConfigCommonSib (LteRrcSap::RadioResourceConfigCommonSib *radioResourceConfigCommonSib, Buffer::Iterator bIterator)
 Deserialize radio resource config common SIB function.
 
Buffer::Iterator DeserializeRadioResourceConfigDedicated (LteRrcSap::RadioResourceConfigDedicated *radioResourceConfigDedicated, Buffer::Iterator bIterator)
 Deserialize radio resource config dedicated function.
 
Buffer::Iterator DeserializeRadioResourceConfigDedicatedSCell (LteRrcSap::RadioResourceConfigDedicatedSCell *rrcdsc, Buffer::Iterator bIterator)
 Deserialize radio resource config dedicated SCell function.
 
Buffer::Iterator DeserializeSrbToAddModList (std::list< LteRrcSap::SrbToAddMod > *srbToAddModList, Buffer::Iterator bIterator)
 Deserialize SRB to add mod list function.
 
Buffer::Iterator DeserializeSystemInformationBlockType1 (LteRrcSap::SystemInformationBlockType1 *systemInformationBlockType1, Buffer::Iterator bIterator)
 Deserialize system information block type 1 function.
 
Buffer::Iterator DeserializeSystemInformationBlockType2 (LteRrcSap::SystemInformationBlockType2 *systemInformationBlockType2, Buffer::Iterator bIterator)
 Deserialize system information block type 2 function.
 
Buffer::Iterator DeserializeThresholdEutra (LteRrcSap::ThresholdEutra *thresholdEutra, Buffer::Iterator bIterator)
 Deserialize threshold eutra function.
 
uint16_t EnumToBandwidth (int n) const
 Convert from ENUMERATED value to bandwidth (in RBs)
 
TypeId GetInstanceTypeId () const override
 Get the most derived TypeId for this Object.
 
void PreSerialize () const override=0
 This function serializes class attributes to m_serializationResult local Buffer.
 
void Print (std::ostream &os) const override
 This function prints the object, for debugging purposes.
 
void Print (std::ostream &os, LteRrcSap::RadioResourceConfigDedicated radioResourceConfigDedicated) const
 This function prints RadioResourceConfigDedicated IE, for debugging purposes.
 
void SerializeDrbToAddModList (std::list< LteRrcSap::DrbToAddMod > drbToAddModList) const
 Serialize DRB to add mod list function.
 
void SerializeLogicalChannelConfig (LteRrcSap::LogicalChannelConfig logicalChannelConfig) const
 Serialize logicala channel config function.
 
void SerializeMeasConfig (LteRrcSap::MeasConfig measConfig) const
 Serialize measure config function.
 
void SerializeMeasResults (LteRrcSap::MeasResults measResults) const
 Serialize measure results function.
 
void SerializeNonCriticalExtensionConfiguration (LteRrcSap::NonCriticalExtensionConfiguration nonCriticalExtensionConfiguration) const
 Serialize non critical extension config function.
 
void SerializePhysicalConfigDedicated (LteRrcSap::PhysicalConfigDedicated physicalConfigDedicated) const
 Serialize physical config dedicated function.
 
void SerializePhysicalConfigDedicatedSCell (LteRrcSap::PhysicalConfigDedicatedSCell pcdsc) const
 Serialize physical config dedicated function.
 
void SerializePlmnIdentity (uint32_t plmnId) const
 Serialize PLMN identity function.
 
void SerializeQoffsetRange (int8_t qOffsetRange) const
 Serialize Q offset range function.
 
void SerializeRachConfigCommon (LteRrcSap::RachConfigCommon rachConfigCommon) const
 Serialize RACH config common function.
 
void SerializeRadioResourceConfigCommon (LteRrcSap::RadioResourceConfigCommon radioResourceConfigCommon) const
 Serialize system information block type 2 function.
 
void SerializeRadioResourceConfigCommonSCell (LteRrcSap::RadioResourceConfigCommonSCell rrccsc) const
 Serialize radio resource config common SCell function.
 
void SerializeRadioResourceConfigCommonSib (LteRrcSap::RadioResourceConfigCommonSib radioResourceConfigCommonSib) const
 Serialize radio resource config common SIB function.
 
void SerializeRadioResourceConfigDedicated (LteRrcSap::RadioResourceConfigDedicated radioResourceConfigDedicated) const
 Serialize radio resource config function.
 
void SerializeRadioResourceDedicatedSCell (LteRrcSap::RadioResourceConfigDedicatedSCell rrcdsc) const
 Serialize radio resource dedicated SCell function.
 
void SerializeSrbToAddModList (std::list< LteRrcSap::SrbToAddMod > srbToAddModList) const
 Serialize SRB to add mod list function.
 
void SerializeSystemInformationBlockType1 (LteRrcSap::SystemInformationBlockType1 systemInformationBlockType1) const
 Serialize system information block type 1 function.
 
void SerializeSystemInformationBlockType2 (LteRrcSap::SystemInformationBlockType2 systemInformationBlockType2) const
 Serialize system information block type 2 function.
 
void SerializeThresholdEutra (LteRrcSap::ThresholdEutra thresholdEutra) const
 Serialize threshold eutra function.
 
- Protected Member Functions inherited from ns3::Asn1Header
Buffer::Iterator DeserializeBitset (std::bitset< 8 > *data, Buffer::Iterator bIterator)
 Deserialize a bitset.
 
template<int N>
Buffer::Iterator DeserializeBitset (std::bitset< N > *data, Buffer::Iterator bIterator)
 Deserialize a bitset.
 
Buffer::Iterator DeserializeBitstring (std::bitset< 1 > *bitstring, Buffer::Iterator bIterator)
 Deserialize a bitstring.
 
Buffer::Iterator DeserializeBitstring (std::bitset< 10 > *bitstring, Buffer::Iterator bIterator)
 Deserialize a bitstring.
 
Buffer::Iterator DeserializeBitstring (std::bitset< 16 > *bitstring, Buffer::Iterator bIterator)
 Deserialize a bitstring.
 
Buffer::Iterator DeserializeBitstring (std::bitset< 2 > *bitstring, Buffer::Iterator bIterator)
 Deserialize a bitstring.
 
Buffer::Iterator DeserializeBitstring (std::bitset< 27 > *bitstring, Buffer::Iterator bIterator)
 Deserialize a bitstring.
 
Buffer::Iterator DeserializeBitstring (std::bitset< 28 > *bitstring, Buffer::Iterator bIterator)
 Deserialize a bitstring.
 
Buffer::Iterator DeserializeBitstring (std::bitset< 32 > *bitstring, Buffer::Iterator bIterator)
 Deserialize a bitstring.
 
Buffer::Iterator DeserializeBitstring (std::bitset< 8 > *bitstring, Buffer::Iterator bIterator)
 Deserialize a bitstring.
 
template<int N>
Buffer::Iterator DeserializeBitstring (std::bitset< N > *bitstring, Buffer::Iterator bIterator)
 Deserialize a bitstring.
 
Buffer::Iterator DeserializeBoolean (bool *value, Buffer::Iterator bIterator)
 Deserialize a boolean.
 
Buffer::Iterator DeserializeChoice (int numOptions, bool isExtensionMarkerPresent, int *selectedOption, Buffer::Iterator bIterator)
 Deserialize a Choice (set of options)
 
Buffer::Iterator DeserializeEnum (int numElems, int *selectedElem, Buffer::Iterator bIterator)
 Deserialize an Enum.
 
Buffer::Iterator DeserializeInteger (int *n, int nmin, int nmax, Buffer::Iterator bIterator)
 Deserialize an integer.
 
Buffer::Iterator DeserializeNull (Buffer::Iterator bIterator)
 Deserialize nothing (null op)
 
Buffer::Iterator DeserializeSequence (std::bitset< 0 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequence (std::bitset< 1 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequence (std::bitset< 10 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequence (std::bitset< 11 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequence (std::bitset< 2 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequence (std::bitset< 3 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequence (std::bitset< 4 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequence (std::bitset< 5 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequence (std::bitset< 6 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequence (std::bitset< 7 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequence (std::bitset< 9 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
template<int N>
Buffer::Iterator DeserializeSequence (std::bitset< N > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator)
 Deserialize a sequence.
 
Buffer::Iterator DeserializeSequenceOf (int *numElems, int nMax, int nMin, Buffer::Iterator bIterator)
 Deserialize a Sequence.
 
void FinalizeSerialization () const
 Finalizes an in progress serialization.
 
template<int N>
void SerializeBitset (std::bitset< N > data) const
 Serialize a bitset.
 
void SerializeBitstring (std::bitset< 1 > bitstring) const
 Serialize a bitstring.
 
void SerializeBitstring (std::bitset< 10 > bitstring) const
 Serialize a bitstring.
 
void SerializeBitstring (std::bitset< 16 > bitstring) const
 Serialize a bitstring.
 
void SerializeBitstring (std::bitset< 2 > bitstring) const
 Serialize a bitstring.
 
void SerializeBitstring (std::bitset< 27 > bitstring) const
 Serialize a bitstring.
 
void SerializeBitstring (std::bitset< 28 > bitstring) const
 Serialize a bitstring.
 
void SerializeBitstring (std::bitset< 32 > bitstring) const
 Serialize a bitstring.
 
void SerializeBitstring (std::bitset< 8 > bitstring) const
 Serialize a bitstring.
 
template<int N>
void SerializeBitstring (std::bitset< N > bitstring) const
 Serialize a bitstring.
 
void SerializeBoolean (bool value) const
 Serialize a bool.
 
void SerializeChoice (int numOptions, int selectedOption, bool isExtensionMarkerPresent) const
 Serialize a Choice (set of options)
 
void SerializeEnum (int numElems, int selectedElem) const
 Serialize an Enum.
 
void SerializeInteger (int n, int nmin, int nmax) const
 Serialize an Integer.
 
void SerializeNull () const
 Serialize nothing (null op)
 
void SerializeSequence (std::bitset< 0 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequence (std::bitset< 1 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequence (std::bitset< 10 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequence (std::bitset< 11 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequence (std::bitset< 2 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequence (std::bitset< 3 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequence (std::bitset< 4 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequence (std::bitset< 5 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequence (std::bitset< 6 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequence (std::bitset< 7 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequence (std::bitset< 9 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
template<int N>
void SerializeSequence (std::bitset< N > optionalOrDefaultMask, bool isExtensionMarkerPresent) const
 Serialize a sequence.
 
void SerializeSequenceOf (int numElems, int nMax, int nMin) const
 Serialize a Sequence.
 
void WriteOctet (uint8_t octet) const
 Function to write in m_serializationResult, after resizing its size.
 
- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 Complete construction of ObjectBase; invoked by derived classes.
 
virtual void NotifyConstructionCompleted ()
 Notifier called once the ObjectBase is fully constructed.
 

Static Protected Member Functions

static TypeId GetTypeId ()
 Get the type ID.
 

Protected Attributes

int m_messageType
 Stores RRC message type, according to 3GPP TS 36.331.
 
- Protected Attributes inherited from ns3::Asn1Header
bool m_isDataSerialized
 true if data is serialized
 
uint8_t m_numSerializationPendingBits
 number of pending bits
 
uint8_t m_serializationPendingBits
 pending bits
 
Buffer m_serializationResult
 serialization result
 

Additional Inherited Members

- Static Public Member Functions inherited from ns3::Asn1Header
static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::Header
static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::Chunk
static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId ()
 Get the type ID.
 

Detailed Description

This class extends Asn1Header functions, adding serialization/deserialization of some Information elements defined in 3GPP TS 36.331.

Definition at line 45 of file lte-rrc-header.h.

Constructor & Destructor Documentation

◆ RrcAsn1Header()

ns3::RrcAsn1Header::RrcAsn1Header ( )

Definition at line 51 of file lte-rrc-header.cc.

Member Function Documentation

◆ BandwidthToEnum()

int ns3::RrcAsn1Header::BandwidthToEnum ( uint16_t  bandwidth) const
protected

Convert from bandwidth (in RBs) to ENUMERATED value.

Parameters
bandwidthBandwidth in RBs: 6, 15, 25, 50, 75, 100
Returns
ENUMERATED value: 0, 1, 2, 3, 4, 5

Definition at line 75 of file lte-rrc-header.cc.

References NS_FATAL_ERROR.

Referenced by ns3::RrcConnectionReconfigurationHeader::PreSerialize(), ns3::HandoverPreparationInfoHeader::PreSerialize(), SerializeMeasConfig(), and SerializeSystemInformationBlockType2().

+ Here is the caller graph for this function:

◆ Deserialize()

uint32_t ns3::RrcAsn1Header::Deserialize ( Buffer::Iterator  start)
overrideprotectedpure virtual
Parameters
startan iterator which points to where the header should read from.
Returns
the number of bytes read.

This method is used by Packet::RemoveHeader to re-create a header from the byte buffer of a packet. The data read is expected to match bit-for-bit the representation of this header in real networks.

Note that data is not actually removed from the buffer to which the iterator points. Both Packet::RemoveHeader() and Packet::PeekHeader() call Deserialize(), but only the RemoveHeader() has additional statements to remove the header bytes from the underlying buffer and associated metadata.

Implements ns3::Asn1Header.

Implemented in ns3::RrcUlDcchMessage, ns3::RrcDlDcchMessage, ns3::RrcUlCcchMessage, ns3::RrcDlCcchMessage, ns3::RrcConnectionRequestHeader, ns3::RrcConnectionSetupHeader, ns3::RrcConnectionSetupCompleteHeader, ns3::RrcConnectionReconfigurationCompleteHeader, ns3::RrcConnectionReconfigurationHeader, ns3::HandoverPreparationInfoHeader, ns3::RrcConnectionReestablishmentRequestHeader, ns3::RrcConnectionReestablishmentHeader, ns3::RrcConnectionReestablishmentCompleteHeader, ns3::RrcConnectionReestablishmentRejectHeader, ns3::RrcConnectionReleaseHeader, ns3::RrcConnectionRejectHeader, and ns3::MeasurementReportHeader.

◆ DeserializeCellIdentification()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeCellIdentification ( LteRrcSap::CellIdentification ci,
Buffer::Iterator  bIterator 
)
protected

Deserialize cell identification function.

Parameters
ciLteRrcSap::CellIdentification *
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 2795 of file lte-rrc-header.cc.

References ns3::Asn1Header::DeserializeInteger(), ns3::Asn1Header::DeserializeSequence(), ns3::LteRrcSap::CellIdentification::dlCarrierFreq, MAX_EARFCN, NS_ASSERT, NS_LOG_FUNCTION, and ns3::LteRrcSap::CellIdentification::physCellId.

Referenced by DeserializeNonCriticalExtensionConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializeDrbToAddModList()

◆ DeserializeLogicalChannelConfig()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeLogicalChannelConfig ( LteRrcSap::LogicalChannelConfig logicalChannelConfig,
Buffer::Iterator  bIterator 
)
protected

Deserialize logical channel config function.

Parameters
logicalChannelConfigLteRrcSap::LogicalChannelConfig *
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 2453 of file lte-rrc-header.cc.

References ns3::LteRrcSap::LogicalChannelConfig::bucketSizeDurationMs, ns3::Asn1Header::DeserializeEnum(), ns3::Asn1Header::DeserializeInteger(), ns3::Asn1Header::DeserializeSequence(), ns3::LteRrcSap::LogicalChannelConfig::logicalChannelGroup, ns3::LteRrcSap::LogicalChannelConfig::prioritizedBitRateKbps, and ns3::LteRrcSap::LogicalChannelConfig::priority.

Referenced by DeserializeDrbToAddModList(), and DeserializeSrbToAddModList().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializeMeasConfig()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeMeasConfig ( LteRrcSap::MeasConfig measConfig,
Buffer::Iterator  bIterator 
)
protected

Deserialize measure config function.

Parameters
measConfigLteRrcSap::MeasConfig *
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 3950 of file lte-rrc-header.cc.

References ns3::LteRrcSap::ReportConfigEutra::a3Offset, ns3::LteRrcSap::MeasObjectEutra::allowedMeasBandwidth, ns3::LteRrcSap::MeasObjectEutra::blackCellsToAddModList, ns3::LteRrcSap::MeasObjectEutra::blackCellsToRemoveList, ns3::LteRrcSap::ReportConfigEutra::BOTH, ns3::LteRrcSap::MeasObjectEutra::carrierFreq, ns3::LteRrcSap::MeasObjectEutra::cellForWhichToReportCGI, ns3::LteRrcSap::CellsToAddMod::cellIndex, ns3::LteRrcSap::BlackCellsToAddMod::cellIndex, ns3::LteRrcSap::CellsToAddMod::cellIndividualOffset, ns3::LteRrcSap::MeasObjectEutra::cellsToAddModList, ns3::LteRrcSap::MeasObjectEutra::cellsToRemoveList, ns3::Asn1Header::DeserializeBitstring(), ns3::Asn1Header::DeserializeBoolean(), ns3::Asn1Header::DeserializeChoice(), ns3::Asn1Header::DeserializeEnum(), ns3::Asn1Header::DeserializeInteger(), ns3::Asn1Header::DeserializeNull(), DeserializeQoffsetRange(), ns3::Asn1Header::DeserializeSequence(), ns3::Asn1Header::DeserializeSequenceOf(), DeserializeThresholdEutra(), EnumToBandwidth(), ns3::LteRrcSap::ReportConfigEutra::EVENT, ns3::LteRrcSap::ReportConfigEutra::EVENT_A1, ns3::LteRrcSap::ReportConfigEutra::EVENT_A2, ns3::LteRrcSap::ReportConfigEutra::EVENT_A3, ns3::LteRrcSap::ReportConfigEutra::EVENT_A4, ns3::LteRrcSap::ReportConfigEutra::EVENT_A5, ns3::LteRrcSap::ReportConfigEutra::eventId, ns3::LteRrcSap::QuantityConfig::filterCoefficientRSRP, ns3::LteRrcSap::QuantityConfig::filterCoefficientRSRQ, ns3::LteRrcSap::MeasGapConfig::gapOffsetChoice, ns3::LteRrcSap::MeasGapConfig::gapOffsetValue, ns3::LteRrcSap::MeasGapConfig::GP0, ns3::LteRrcSap::MeasGapConfig::GP1, ns3::LteRrcSap::MeasObjectEutra::haveCellForWhichToReportCGI, ns3::LteRrcSap::MeasConfig::haveMeasGapConfig, ns3::LteRrcSap::MeasConfig::haveQuantityConfig, ns3::LteRrcSap::PhysCellIdRange::haveRange, ns3::LteRrcSap::MeasConfig::haveSmeasure, ns3::LteRrcSap::MeasConfig::haveSpeedStatePars, ns3::LteRrcSap::ReportConfigEutra::hysteresis, MAX_CELL_MEAS, MAX_CELL_REPORT, MAX_EARFCN, MAX_MEAS_ID, MAX_OBJECT_ID, MAX_REPORT_CONFIG_ID, ns3::LteRrcSap::ReportConfigEutra::maxReportCells, ns3::LteRrcSap::MeasConfig::measGapConfig, ns3::LteRrcSap::MeasIdToAddMod::measId, ns3::LteRrcSap::MeasConfig::measIdToAddModList, ns3::LteRrcSap::MeasConfig::measIdToRemoveList, ns3::LteRrcSap::MeasObjectToAddMod::measObjectEutra, ns3::LteRrcSap::MeasObjectToAddMod::measObjectId, ns3::LteRrcSap::MeasIdToAddMod::measObjectId, ns3::LteRrcSap::MeasConfig::measObjectToAddModList, ns3::LteRrcSap::MeasConfig::measObjectToRemoveList, ns3::LteRrcSap::ReportConfigEutra::MIN1, ns3::LteRrcSap::ReportConfigEutra::MIN12, ns3::LteRrcSap::ReportConfigEutra::MIN30, ns3::LteRrcSap::ReportConfigEutra::MIN6, ns3::LteRrcSap::ReportConfigEutra::MIN60, ns3::LteRrcSap::SpeedStatePars::mobilityStateParameters, ns3::LteRrcSap::ReportConfigEutra::MS1024, ns3::LteRrcSap::ReportConfigEutra::MS10240, ns3::LteRrcSap::ReportConfigEutra::MS120, ns3::LteRrcSap::ReportConfigEutra::MS2048, ns3::LteRrcSap::ReportConfigEutra::MS240, ns3::LteRrcSap::ReportConfigEutra::MS480, ns3::LteRrcSap::ReportConfigEutra::MS5120, ns3::LteRrcSap::ReportConfigEutra::MS640, ns3::LteRrcSap::MobilityStateParameters::nCellChangeHigh, ns3::LteRrcSap::MobilityStateParameters::nCellChangeMedium, ns3::LteRrcSap::MeasObjectEutra::neighCellConfig, ns3::LteRrcSap::MeasObjectEutra::offsetFreq, ns3::LteRrcSap::ReportConfigEutra::PERIODICAL, ns3::LteRrcSap::CellsToAddMod::physCellId, ns3::LteRrcSap::BlackCellsToAddMod::physCellIdRange, ns3::LteRrcSap::MeasObjectEutra::presenceAntennaPort1, ns3::LteRrcSap::ReportConfigEutra::purpose, ns3::LteRrcSap::MeasConfig::quantityConfig, ns3::LteRrcSap::PhysCellIdRange::range, ns3::LteRrcSap::ReportConfigEutra::REPORT_CGI, ns3::LteRrcSap::ReportConfigEutra::REPORT_STRONGEST_CELLS, ns3::LteRrcSap::ReportConfigEutra::reportAmount, ns3::LteRrcSap::ReportConfigToAddMod::reportConfigEutra, ns3::LteRrcSap::ReportConfigToAddMod::reportConfigId, ns3::LteRrcSap::MeasIdToAddMod::reportConfigId, ns3::LteRrcSap::MeasConfig::reportConfigToAddModList, ns3::LteRrcSap::MeasConfig::reportConfigToRemoveList, ns3::LteRrcSap::ReportConfigEutra::reportInterval, ns3::LteRrcSap::ReportConfigEutra::reportOnLeave, ns3::LteRrcSap::ReportConfigEutra::reportQuantity, ns3::LteRrcSap::MeasGapConfig::RESET, ns3::LteRrcSap::SpeedStatePars::RESET, ns3::LteRrcSap::ReportConfigEutra::RSRP, ns3::LteRrcSap::ReportConfigEutra::RSRQ, ns3::LteRrcSap::ReportConfigEutra::SAME_AS_TRIGGER_QUANTITY, ns3::LteRrcSap::MeasGapConfig::SETUP, ns3::LteRrcSap::SpeedStatePars::SETUP, ns3::LteRrcSap::SpeedStateScaleFactors::sfHigh, ns3::LteRrcSap::SpeedStateScaleFactors::sfMedium, ns3::LteRrcSap::MeasConfig::sMeasure, ns3::LteRrcSap::ReportConfigEutra::SPARE1, ns3::LteRrcSap::ReportConfigEutra::SPARE2, ns3::LteRrcSap::ReportConfigEutra::SPARE3, ns3::LteRrcSap::MeasConfig::speedStatePars, ns3::LteRrcSap::PhysCellIdRange::start, ns3::LteRrcSap::MobilityStateParameters::tEvaluation, ns3::LteRrcSap::ReportConfigEutra::threshold1, ns3::LteRrcSap::ReportConfigEutra::threshold2, ns3::LteRrcSap::MobilityStateParameters::tHystNormal, ns3::LteRrcSap::ReportConfigEutra::timeToTrigger, ns3::LteRrcSap::SpeedStatePars::timeToTriggerSf, ns3::LteRrcSap::ReportConfigEutra::triggerQuantity, ns3::LteRrcSap::ReportConfigEutra::triggerType, ns3::LteRrcSap::MeasGapConfig::type, and ns3::LteRrcSap::SpeedStatePars::type.

Referenced by ns3::RrcConnectionReconfigurationHeader::Deserialize(), and ns3::HandoverPreparationInfoHeader::Deserialize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializeMeasResults()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeMeasResults ( LteRrcSap::MeasResults measResults,
Buffer::Iterator  bIterator 
)
protected

Deserialize measure results function.

Parameters
measResultsLteRrcSap::MeasResults *
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 3739 of file lte-rrc-header.cc.

References ns3::LteRrcSap::CgiInfo::cellIdentity, ns3::LteRrcSap::MeasResultEutra::cgiInfo, ns3::Asn1Header::DeserializeBitstring(), ns3::Asn1Header::DeserializeChoice(), ns3::Asn1Header::DeserializeInteger(), DeserializePlmnIdentity(), ns3::Asn1Header::DeserializeSequence(), ns3::Asn1Header::DeserializeSequenceOf(), ns3::LteRrcSap::MeasResultEutra::haveCgiInfo, ns3::LteRrcSap::MeasResultServFreq::haveMeasResultBestNeighCell, ns3::LteRrcSap::MeasResults::haveMeasResultNeighCells, ns3::LteRrcSap::MeasResultServFreq::haveMeasResultSCell, ns3::LteRrcSap::MeasResults::haveMeasResultServFreqList, ns3::LteRrcSap::MeasResultEutra::haveRsrpResult, ns3::LteRrcSap::MeasResultEutra::haveRsrqResult, MAX_CELL_REPORT, MAX_MEAS_ID, MAX_SCELL_REPORT, ns3::LteRrcSap::MeasResults::measId, ns3::LteRrcSap::MeasResultServFreq::measResultBestNeighCell, ns3::LteRrcSap::MeasResults::measResultListEutra, ns3::LteRrcSap::MeasResults::measResultPCell, ns3::LteRrcSap::MeasResultServFreq::measResultSCell, ns3::LteRrcSap::MeasResults::measResultServFreqList, ns3::LteRrcSap::MeasResultEutra::physCellId, ns3::LteRrcSap::MeasResultBestNeighCell::physCellId, ns3::LteRrcSap::CgiInfo::plmnIdentity, ns3::LteRrcSap::CgiInfo::plmnIdentityList, ns3::LteRrcSap::MeasResultPCell::rsrpResult, ns3::LteRrcSap::MeasResultEutra::rsrpResult, ns3::LteRrcSap::MeasResultSCell::rsrpResult, ns3::LteRrcSap::MeasResultBestNeighCell::rsrpResult, ns3::LteRrcSap::MeasResultPCell::rsrqResult, ns3::LteRrcSap::MeasResultEutra::rsrqResult, ns3::LteRrcSap::MeasResultSCell::rsrqResult, ns3::LteRrcSap::MeasResultBestNeighCell::rsrqResult, ns3::LteRrcSap::MeasResultServFreq::servFreqId, and ns3::LteRrcSap::CgiInfo::trackingAreaCode.

Referenced by ns3::MeasurementReportHeader::Deserialize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializeNonCriticalExtensionConfig()

◆ DeserializePhysicalConfigDedicated()

Buffer::Iterator ns3::RrcAsn1Header::DeserializePhysicalConfigDedicated ( LteRrcSap::PhysicalConfigDedicated physicalConfigDedicated,
Buffer::Iterator  bIterator 
)
protected

◆ DeserializePhysicalConfigDedicatedSCell()

Buffer::Iterator ns3::RrcAsn1Header::DeserializePhysicalConfigDedicatedSCell ( LteRrcSap::PhysicalConfigDedicatedSCell pcdsc,
Buffer::Iterator  bIterator 
)
protected

Deserialize physical config dedicated SCell function.

Parameters
pcdscLteRrcSap::PhysicalConfigDedicatedSCell *
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 2885 of file lte-rrc-header.cc.

References ns3::LteRrcSap::PhysicalConfigDedicatedSCell::antennaInfo, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::antennaInfoUl, ns3::Asn1Header::DeserializeBoolean(), ns3::Asn1Header::DeserializeChoice(), ns3::Asn1Header::DeserializeEnum(), ns3::Asn1Header::DeserializeInteger(), ns3::Asn1Header::DeserializeNull(), ns3::Asn1Header::DeserializeSequence(), ns3::LteRrcSap::PhysicalConfigDedicatedSCell::haveAntennaInfoDedicated, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::haveAntennaInfoUlDedicated, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::haveNonUlConfiguration, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::havePdschConfigDedicated, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::haveSoundingRsUlConfigDedicated, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::haveUlConfiguration, NS_ASSERT, NS_FATAL_ERROR, NS_LOG_FUNCTION, ns3::LteRrcSap::PdschConfigDedicated::pa, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::pdschConfigDedicated, ns3::LteRrcSap::SoundingRsUlConfigDedicated::RESET, ns3::LteRrcSap::SoundingRsUlConfigDedicated::SETUP, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::soundingRsUlConfigDedicated, ns3::LteRrcSap::SoundingRsUlConfigDedicated::srsBandwidth, ns3::LteRrcSap::SoundingRsUlConfigDedicated::srsConfigIndex, ns3::LteRrcSap::AntennaInfoDedicated::transmissionMode, and ns3::LteRrcSap::SoundingRsUlConfigDedicated::type.

Referenced by DeserializeRadioResourceConfigDedicatedSCell().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializePlmnIdentity()

Buffer::Iterator ns3::RrcAsn1Header::DeserializePlmnIdentity ( uint32_t plmnId,
Buffer::Iterator  bIterator 
)
protected

Deserialize PLMN identity function.

Parameters
plmnIdthe PLMN ID
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 3919 of file lte-rrc-header.cc.

References ns3::Asn1Header::DeserializeEnum(), ns3::Asn1Header::DeserializeInteger(), ns3::Asn1Header::DeserializeSequence(), and ns3::Asn1Header::DeserializeSequenceOf().

Referenced by DeserializeMeasResults(), and DeserializeSystemInformationBlockType1().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializeQoffsetRange()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeQoffsetRange ( int8_t qOffsetRange,
Buffer::Iterator  bIterator 
)
protected

Deserialize Qoffset range function.

Parameters
qOffsetRangeQoffset range
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 2127 of file lte-rrc-header.cc.

References ns3::Asn1Header::DeserializeEnum().

Referenced by DeserializeMeasConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializeRachConfigCommon()

◆ DeserializeRadioResourceConfigCommon()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeRadioResourceConfigCommon ( LteRrcSap::RadioResourceConfigCommon radioResourceConfigCommon,
Buffer::Iterator  bIterator 
)
protected

Deserialize radio resource config common function.

Parameters
radioResourceConfigCommonLteRrcSap::RadioResourceConfigCommon *
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 3328 of file lte-rrc-header.cc.

References ns3::Asn1Header::DeserializeBoolean(), ns3::Asn1Header::DeserializeEnum(), ns3::Asn1Header::DeserializeInteger(), DeserializeRachConfigCommon(), ns3::Asn1Header::DeserializeSequence(), and ns3::LteRrcSap::RadioResourceConfigCommon::rachConfigCommon.

Referenced by ns3::RrcConnectionReconfigurationHeader::Deserialize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializeRadioResourceConfigCommonSCell()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeRadioResourceConfigCommonSCell ( LteRrcSap::RadioResourceConfigCommonSCell rrccsc,
Buffer::Iterator  bIterator 
)
protected

◆ DeserializeRadioResourceConfigCommonSib()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeRadioResourceConfigCommonSib ( LteRrcSap::RadioResourceConfigCommonSib radioResourceConfigCommonSib,
Buffer::Iterator  bIterator 
)
protected

Deserialize radio resource config common SIB function.

Parameters
radioResourceConfigCommonSibLteRrcSap::RadioResourceConfigCommonSib *
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 3627 of file lte-rrc-header.cc.

References ns3::Asn1Header::DeserializeBoolean(), ns3::Asn1Header::DeserializeChoice(), ns3::Asn1Header::DeserializeEnum(), ns3::Asn1Header::DeserializeInteger(), ns3::Asn1Header::DeserializeNull(), DeserializeRachConfigCommon(), ns3::Asn1Header::DeserializeSequence(), and ns3::LteRrcSap::RadioResourceConfigCommonSib::rachConfigCommon.

Referenced by DeserializeSystemInformationBlockType2().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializeRadioResourceConfigDedicated()

◆ DeserializeRadioResourceConfigDedicatedSCell()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeRadioResourceConfigDedicatedSCell ( LteRrcSap::RadioResourceConfigDedicatedSCell rrcdsc,
Buffer::Iterator  bIterator 
)
protected

Deserialize radio resource config dedicated SCell function.

Parameters
rrcdscLteRrcSap::RadioResourceConfigDedicatedSCell *
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 2871 of file lte-rrc-header.cc.

References DeserializePhysicalConfigDedicatedSCell(), ns3::Asn1Header::DeserializeSequence(), NS_LOG_FUNCTION, and ns3::LteRrcSap::RadioResourceConfigDedicatedSCell::physicalConfigDedicatedSCell.

Referenced by DeserializeNonCriticalExtensionConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializeSrbToAddModList()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeSrbToAddModList ( std::list< LteRrcSap::SrbToAddMod > *  srbToAddModList,
Buffer::Iterator  bIterator 
)
protected

Deserialize SRB to add mod list function.

Parameters
srbToAddModListstd::list<LteRrcSap::SrbToAddMod> *
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 2291 of file lte-rrc-header.cc.

References ns3::Asn1Header::DeserializeChoice(), ns3::Asn1Header::DeserializeInteger(), DeserializeLogicalChannelConfig(), ns3::Asn1Header::DeserializeNull(), ns3::Asn1Header::DeserializeSequence(), ns3::Asn1Header::DeserializeSequenceOf(), ns3::LteRrcSap::SrbToAddMod::logicalChannelConfig, and ns3::LteRrcSap::SrbToAddMod::srbIdentity.

Referenced by DeserializeRadioResourceConfigDedicated().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DeserializeSystemInformationBlockType1()

◆ DeserializeSystemInformationBlockType2()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeSystemInformationBlockType2 ( LteRrcSap::SystemInformationBlockType2 systemInformationBlockType2,
Buffer::Iterator  bIterator 
)
protected

◆ DeserializeThresholdEutra()

Buffer::Iterator ns3::RrcAsn1Header::DeserializeThresholdEutra ( LteRrcSap::ThresholdEutra thresholdEutra,
Buffer::Iterator  bIterator 
)
protected

Deserialize threshold eutra function.

Parameters
thresholdEutraLteRrcSap::ThresholdEutra *
bIteratorbuffer iterator
Returns
buffer iterator

Definition at line 2102 of file lte-rrc-header.cc.

References ns3::LteRrcSap::ThresholdEutra::choice, ns3::Asn1Header::DeserializeChoice(), ns3::Asn1Header::DeserializeInteger(), ns3::LteRrcSap::ThresholdEutra::range, ns3::LteRrcSap::ThresholdEutra::THRESHOLD_RSRP, and ns3::LteRrcSap::ThresholdEutra::THRESHOLD_RSRQ.

Referenced by DeserializeMeasConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ EnumToBandwidth()

uint16_t ns3::RrcAsn1Header::EnumToBandwidth ( int  n) const
protected

Convert from ENUMERATED value to bandwidth (in RBs)

Parameters
nENUMERATED value: 0, 1, 2, 3, 4, 5
Returns
bandwidth Bandwidth in RBs: 6, 15, 25, 50, 75, 100

Definition at line 105 of file lte-rrc-header.cc.

References NS_FATAL_ERROR.

Referenced by ns3::RrcConnectionReconfigurationHeader::Deserialize(), ns3::HandoverPreparationInfoHeader::Deserialize(), DeserializeMeasConfig(), and DeserializeSystemInformationBlockType2().

+ Here is the caller graph for this function:

◆ GetInstanceTypeId()

TypeId ns3::RrcAsn1Header::GetInstanceTypeId ( ) const
overrideprotectedvirtual

Get the most derived TypeId for this Object.

This method is typically implemented by ns3::Object::GetInstanceTypeId but some classes which derive from ns3::ObjectBase directly have to implement it themselves.

Returns
The TypeId associated to the most-derived type of this instance.

Reimplemented from ns3::Asn1Header.

Definition at line 63 of file lte-rrc-header.cc.

References GetTypeId().

+ Here is the call graph for this function:

◆ GetMessageType()

int ns3::RrcAsn1Header::GetMessageType ( ) const

Get message type.

Returns
the message type

Definition at line 69 of file lte-rrc-header.cc.

References m_messageType.

Referenced by ns3::LteUeRrcProtocolReal::DoReceivePdcpPdu(), ns3::LteEnbRrcProtocolReal::DoReceivePdcpPdu(), ns3::LteUeRrcProtocolReal::DoReceivePdcpSdu(), and ns3::LteEnbRrcProtocolReal::DoReceivePdcpSdu().

+ Here is the caller graph for this function:

◆ GetTypeId()

TypeId ns3::RrcAsn1Header::GetTypeId ( )
staticprotected

Get the type ID.

Returns
the object TypeId

Definition at line 56 of file lte-rrc-header.cc.

References ns3::TypeId::SetParent().

Referenced by GetInstanceTypeId().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ PreSerialize()

void ns3::RrcAsn1Header::PreSerialize ( ) const
overrideprotectedpure virtual

This function serializes class attributes to m_serializationResult local Buffer.

As ASN1 encoding produces a bitstream that does not have a fixed length, this function is needed to store the result, so its length can be retrieved with Header::GetSerializedSize() function. This method is pure virtual in this class (needs to be implemented in child classes) as the meaningful information elements are in the subclasses.

Implements ns3::Asn1Header.

Implemented in ns3::RrcUlDcchMessage, ns3::RrcDlDcchMessage, ns3::RrcUlCcchMessage, ns3::RrcDlCcchMessage, ns3::RrcConnectionRequestHeader, ns3::RrcConnectionSetupHeader, ns3::RrcConnectionSetupCompleteHeader, ns3::RrcConnectionReconfigurationCompleteHeader, ns3::RrcConnectionReconfigurationHeader, ns3::HandoverPreparationInfoHeader, ns3::RrcConnectionReestablishmentRequestHeader, ns3::RrcConnectionReestablishmentHeader, ns3::RrcConnectionReestablishmentCompleteHeader, ns3::RrcConnectionReestablishmentRejectHeader, ns3::RrcConnectionReleaseHeader, ns3::RrcConnectionRejectHeader, and ns3::MeasurementReportHeader.

◆ Print() [1/2]

◆ Print() [2/2]

◆ SerializeDrbToAddModList()

void ns3::RrcAsn1Header::SerializeDrbToAddModList ( std::list< LteRrcSap::DrbToAddMod drbToAddModList) const
protected

◆ SerializeLogicalChannelConfig()

void ns3::RrcAsn1Header::SerializeLogicalChannelConfig ( LteRrcSap::LogicalChannelConfig  logicalChannelConfig) const
protected

◆ SerializeMeasConfig()

void ns3::RrcAsn1Header::SerializeMeasConfig ( LteRrcSap::MeasConfig  measConfig) const
protected

Serialize measure config function.

Parameters
measConfigLteRrcSap::MeasConfig

Definition at line 1124 of file lte-rrc-header.cc.

References BandwidthToEnum(), ns3::LteRrcSap::ReportConfigEutra::EVENT, ns3::LteRrcSap::ReportConfigEutra::EVENT_A1, ns3::LteRrcSap::ReportConfigEutra::EVENT_A2, ns3::LteRrcSap::ReportConfigEutra::EVENT_A3, ns3::LteRrcSap::ReportConfigEutra::EVENT_A4, ns3::LteRrcSap::ReportConfigEutra::EVENT_A5, ns3::LteRrcSap::QuantityConfig::filterCoefficientRSRP, ns3::LteRrcSap::QuantityConfig::filterCoefficientRSRQ, ns3::LteRrcSap::MeasGapConfig::gapOffsetChoice, ns3::LteRrcSap::MeasGapConfig::gapOffsetValue, ns3::LteRrcSap::MeasGapConfig::GP0, ns3::LteRrcSap::MeasGapConfig::GP1, ns3::LteRrcSap::MeasConfig::haveMeasGapConfig, ns3::LteRrcSap::MeasConfig::haveQuantityConfig, ns3::LteRrcSap::MeasConfig::haveSmeasure, ns3::LteRrcSap::MeasConfig::haveSpeedStatePars, MAX_CELL_MEAS, MAX_CELL_REPORT, MAX_EARFCN, MAX_MEAS_ID, MAX_OBJECT_ID, MAX_REPORT_CONFIG_ID, ns3::LteRrcSap::MeasConfig::measGapConfig, ns3::LteRrcSap::MeasConfig::measIdToAddModList, ns3::LteRrcSap::MeasConfig::measIdToRemoveList, ns3::LteRrcSap::MeasConfig::measObjectToAddModList, ns3::LteRrcSap::MeasConfig::measObjectToRemoveList, ns3::LteRrcSap::ReportConfigEutra::MIN1, ns3::LteRrcSap::ReportConfigEutra::MIN12, ns3::LteRrcSap::ReportConfigEutra::MIN30, ns3::LteRrcSap::ReportConfigEutra::MIN6, ns3::LteRrcSap::ReportConfigEutra::MIN60, ns3::LteRrcSap::SpeedStatePars::mobilityStateParameters, ns3::LteRrcSap::ReportConfigEutra::MS1024, ns3::LteRrcSap::ReportConfigEutra::MS10240, ns3::LteRrcSap::ReportConfigEutra::MS120, ns3::LteRrcSap::ReportConfigEutra::MS2048, ns3::LteRrcSap::ReportConfigEutra::MS240, ns3::LteRrcSap::ReportConfigEutra::MS480, ns3::LteRrcSap::ReportConfigEutra::MS5120, ns3::LteRrcSap::ReportConfigEutra::MS640, ns3::LteRrcSap::MobilityStateParameters::nCellChangeHigh, ns3::LteRrcSap::MobilityStateParameters::nCellChangeMedium, ns3::LteRrcSap::ReportConfigEutra::PERIODICAL, ns3::LteRrcSap::MeasConfig::quantityConfig, ns3::LteRrcSap::ReportConfigEutra::REPORT_CGI, ns3::LteRrcSap::ReportConfigEutra::REPORT_STRONGEST_CELLS, ns3::LteRrcSap::MeasConfig::reportConfigToAddModList, ns3::LteRrcSap::MeasConfig::reportConfigToRemoveList, ns3::LteRrcSap::MeasGapConfig::RESET, ns3::LteRrcSap::SpeedStatePars::RESET, ns3::LteRrcSap::ReportConfigEutra::RSRP, ns3::LteRrcSap::ReportConfigEutra::SAME_AS_TRIGGER_QUANTITY, ns3::Asn1Header::SerializeBitstring(), ns3::Asn1Header::SerializeBoolean(), ns3::Asn1Header::SerializeChoice(), ns3::Asn1Header::SerializeEnum(), ns3::Asn1Header::SerializeInteger(), ns3::Asn1Header::SerializeNull(), SerializeQoffsetRange(), ns3::Asn1Header::SerializeSequence(), ns3::Asn1Header::SerializeSequenceOf(), SerializeThresholdEutra(), ns3::LteRrcSap::MeasGapConfig::SETUP, ns3::LteRrcSap::SpeedStatePars::SETUP, ns3::LteRrcSap::SpeedStateScaleFactors::sfHigh, ns3::LteRrcSap::SpeedStateScaleFactors::sfMedium, ns3::LteRrcSap::MeasConfig::sMeasure, ns3::LteRrcSap::ReportConfigEutra::SPARE1, ns3::LteRrcSap::ReportConfigEutra::SPARE2, ns3::LteRrcSap::ReportConfigEutra::SPARE3, ns3::LteRrcSap::MeasConfig::speedStatePars, ns3::LteRrcSap::MobilityStateParameters::tEvaluation, ns3::LteRrcSap::MobilityStateParameters::tHystNormal, ns3::LteRrcSap::SpeedStatePars::timeToTriggerSf, ns3::LteRrcSap::MeasGapConfig::type, and ns3::LteRrcSap::SpeedStatePars::type.

Referenced by ns3::RrcConnectionReconfigurationHeader::PreSerialize(), and ns3::HandoverPreparationInfoHeader::PreSerialize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SerializeMeasResults()

◆ SerializeNonCriticalExtensionConfiguration()

void ns3::RrcAsn1Header::SerializeNonCriticalExtensionConfiguration ( LteRrcSap::NonCriticalExtensionConfiguration  nonCriticalExtensionConfiguration) const
protected

◆ SerializePhysicalConfigDedicated()

◆ SerializePhysicalConfigDedicatedSCell()

void ns3::RrcAsn1Header::SerializePhysicalConfigDedicatedSCell ( LteRrcSap::PhysicalConfigDedicatedSCell  pcdsc) const
protected

Serialize physical config dedicated function.

Parameters
pcdscLteRrcSap::PhysicalConfigDedicatedSCell

Definition at line 1970 of file lte-rrc-header.cc.

References ns3::LteRrcSap::PhysicalConfigDedicatedSCell::antennaInfo, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::antennaInfoUl, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::haveAntennaInfoDedicated, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::haveAntennaInfoUlDedicated, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::haveNonUlConfiguration, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::havePdschConfigDedicated, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::haveSoundingRsUlConfigDedicated, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::haveUlConfiguration, ns3::LteRrcSap::PdschConfigDedicated::pa, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::pdschConfigDedicated, ns3::LteRrcSap::SoundingRsUlConfigDedicated::RESET, ns3::Asn1Header::SerializeBoolean(), ns3::Asn1Header::SerializeChoice(), ns3::Asn1Header::SerializeEnum(), ns3::Asn1Header::SerializeInteger(), ns3::Asn1Header::SerializeNull(), ns3::Asn1Header::SerializeSequence(), ns3::LteRrcSap::SoundingRsUlConfigDedicated::SETUP, ns3::LteRrcSap::PhysicalConfigDedicatedSCell::soundingRsUlConfigDedicated, ns3::LteRrcSap::SoundingRsUlConfigDedicated::srsBandwidth, ns3::LteRrcSap::SoundingRsUlConfigDedicated::srsConfigIndex, ns3::LteRrcSap::AntennaInfoDedicated::transmissionMode, and ns3::LteRrcSap::SoundingRsUlConfigDedicated::type.

Referenced by SerializeRadioResourceDedicatedSCell().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SerializePlmnIdentity()

void ns3::RrcAsn1Header::SerializePlmnIdentity ( uint32_t  plmnId) const
protected

Serialize PLMN identity function.

Parameters
plmnIdthe PLMN ID

Definition at line 821 of file lte-rrc-header.cc.

References ns3::Asn1Header::SerializeEnum(), ns3::Asn1Header::SerializeInteger(), ns3::Asn1Header::SerializeSequence(), and ns3::Asn1Header::SerializeSequenceOf().

Referenced by SerializeMeasResults(), and SerializeSystemInformationBlockType1().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SerializeQoffsetRange()

void ns3::RrcAsn1Header::SerializeQoffsetRange ( int8_t  qOffsetRange) const
protected

Serialize Q offset range function.

Parameters
qOffsetRangeq offset range

Definition at line 1005 of file lte-rrc-header.cc.

References ns3::Asn1Header::SerializeEnum().

Referenced by SerializeMeasConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SerializeRachConfigCommon()

◆ SerializeRadioResourceConfigCommon()

void ns3::RrcAsn1Header::SerializeRadioResourceConfigCommon ( LteRrcSap::RadioResourceConfigCommon  radioResourceConfigCommon) const
protected

Serialize system information block type 2 function.

Parameters
radioResourceConfigCommonLteRrcSap::RadioResourceConfigCommon

Definition at line 546 of file lte-rrc-header.cc.

References ns3::LteRrcSap::RadioResourceConfigCommon::rachConfigCommon, ns3::Asn1Header::SerializeBoolean(), ns3::Asn1Header::SerializeEnum(), ns3::Asn1Header::SerializeInteger(), SerializeRachConfigCommon(), and ns3::Asn1Header::SerializeSequence().

Referenced by ns3::RrcConnectionReconfigurationHeader::PreSerialize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SerializeRadioResourceConfigCommonSCell()

◆ SerializeRadioResourceConfigCommonSib()

void ns3::RrcAsn1Header::SerializeRadioResourceConfigCommonSib ( LteRrcSap::RadioResourceConfigCommonSib  radioResourceConfigCommonSib) const
protected

◆ SerializeRadioResourceConfigDedicated()

◆ SerializeRadioResourceDedicatedSCell()

void ns3::RrcAsn1Header::SerializeRadioResourceDedicatedSCell ( LteRrcSap::RadioResourceConfigDedicatedSCell  rrcdsc) const
protected

Serialize radio resource dedicated SCell function.

Parameters
rrcdscLteRrcSap::RadioResourceConfigDedicatedSCell

Definition at line 1957 of file lte-rrc-header.cc.

References ns3::LteRrcSap::RadioResourceConfigDedicatedSCell::physicalConfigDedicatedSCell, SerializePhysicalConfigDedicatedSCell(), and ns3::Asn1Header::SerializeSequence().

Referenced by SerializeNonCriticalExtensionConfiguration().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SerializeSrbToAddModList()

void ns3::RrcAsn1Header::SerializeSrbToAddModList ( std::list< LteRrcSap::SrbToAddMod srbToAddModList) const
protected

Serialize SRB to add mod list function.

Parameters
srbToAddModListstd::list<LteRrcSap::SrbToAddMod>

Definition at line 223 of file lte-rrc-header.cc.

References ns3::Asn1Header::SerializeChoice(), ns3::Asn1Header::SerializeInteger(), SerializeLogicalChannelConfig(), ns3::Asn1Header::SerializeSequence(), and ns3::Asn1Header::SerializeSequenceOf().

Referenced by SerializeRadioResourceConfigDedicated().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SerializeSystemInformationBlockType1()

◆ SerializeSystemInformationBlockType2()

void ns3::RrcAsn1Header::SerializeSystemInformationBlockType2 ( LteRrcSap::SystemInformationBlockType2  systemInformationBlockType2) const
protected

◆ SerializeThresholdEutra()

void ns3::RrcAsn1Header::SerializeThresholdEutra ( LteRrcSap::ThresholdEutra  thresholdEutra) const
protected

Serialize threshold eutra function.

Parameters
thresholdEutraLteRrcSap::ThresholdEutra

Definition at line 1108 of file lte-rrc-header.cc.

References ns3::LteRrcSap::ThresholdEutra::choice, ns3::LteRrcSap::ThresholdEutra::range, ns3::Asn1Header::SerializeChoice(), ns3::Asn1Header::SerializeInteger(), ns3::LteRrcSap::ThresholdEutra::THRESHOLD_RSRP, and ns3::LteRrcSap::ThresholdEutra::THRESHOLD_RSRQ.

Referenced by SerializeMeasConfig().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ m_messageType


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