This class manages the serialization/deserialization of RrcConnectionSetup IE. More...
#include <lte-rrc-header.h>
Public Member Functions | |
RrcConnectionSetupHeader () | |
~RrcConnectionSetupHeader () | |
uint32_t | Deserialize (Buffer::Iterator bIterator) |
std::list< LteRrcSap::DrbToAddMod > | GetDrbToAddModList () const |
Gets m_radioResourceConfigDedicated.drbToAddModList. More... | |
std::list< uint8_t > | GetDrbToReleaseList () const |
Gets m_radioResourceConfigDedicated.drbToReleaseList. More... | |
LteRrcSap::RrcConnectionSetup | GetMessage () const |
Returns a RrcConnectionSetup IE from the values in the class attributes. More... | |
LteRrcSap::PhysicalConfigDedicated | GetPhysicalConfigDedicated () const |
Gets m_radioResourceConfigDedicated.physicalConfigDedicated. More... | |
LteRrcSap::RadioResourceConfigDedicated | GetRadioResourceConfigDedicated () const |
Getter for m_radioResourceConfigDedicated. More... | |
uint8_t | GetRrcTransactionIdentifier () const |
Getter for m_rrcTransactionIdentifier. More... | |
std::list< LteRrcSap::SrbToAddMod > | GetSrbToAddModList () const |
Gets m_radioResourceConfigDedicated.srbToAddModList. More... | |
bool | HavePhysicalConfigDedicated () const |
Gets m_radioResourceConfigDedicated.havePhysicalConfigDedicated. More... | |
void | PreSerialize () const |
This function serializes class attributes to m_serializationResult local Buffer. More... | |
void | Print (std::ostream &os) const |
void | SetMessage (LteRrcSap::RrcConnectionSetup msg) |
Receives a RrcConnectionSetup IE and stores the contents into the class attributes. More... | |
Public Member Functions inherited from ns3::RrcAsn1Header | |
RrcAsn1Header () | |
int | GetMessageType () |
Public Member Functions inherited from ns3::Asn1Header | |
Asn1Header () | |
virtual | ~Asn1Header () |
uint32_t | GetSerializedSize (void) const |
void | Serialize (Buffer::Iterator bIterator) const |
Public Member Functions inherited from ns3::Header | |
virtual | ~Header () |
Public Member Functions inherited from ns3::ObjectBase | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Private Attributes | |
LteRrcSap::RadioResourceConfigDedicated | m_radioResourceConfigDedicated |
uint8_t | m_rrcTransactionIdentifier |
Additional Inherited Members | |
Static Public Member Functions inherited from ns3::Asn1Header | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::Header | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::Chunk | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::ObjectBase | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Protected Member Functions inherited from ns3::RrcAsn1Header | |
Buffer::Iterator | DeserializeDrbToAddModList (std::list< LteRrcSap::DrbToAddMod > *drbToAddModLis, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeLogicalChannelConfig (LteRrcSap::LogicalChannelConfig *logicalChannelConfig, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeMeasConfig (LteRrcSap::MeasConfig *measConfig, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeMeasResults (LteRrcSap::MeasResults *measResults, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializePhysicalConfigDedicated (LteRrcSap::PhysicalConfigDedicated *physicalConfigDedicated, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializePlmnIdentity (uint32_t *plmnId, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeQoffsetRange (int8_t *qOffsetRange, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeRachConfigCommon (LteRrcSap::RachConfigCommon *rachConfigCommon, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeRadioResourceConfigCommon (LteRrcSap::RadioResourceConfigCommon *radioResourceConfigCommon, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeRadioResourceConfigCommonSib (LteRrcSap::RadioResourceConfigCommonSib *radioResourceConfigCommonSib, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeRadioResourceConfigDedicated (LteRrcSap::RadioResourceConfigDedicated *radioResourceConfigDedicated, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSrbToAddModList (std::list< LteRrcSap::SrbToAddMod > *srbToAddModList, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSystemInformationBlockType1 (LteRrcSap::SystemInformationBlockType1 *systemInformationBlockType1, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSystemInformationBlockType2 (LteRrcSap::SystemInformationBlockType2 *systemInformationBlockType2, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeThresholdEutra (LteRrcSap::ThresholdEutra *thresholdEutra, Buffer::Iterator bIterator) |
virtual TypeId | GetInstanceTypeId (void) const |
void | Print (std::ostream &os, LteRrcSap::RadioResourceConfigDedicated radioResourceConfigDedicated) const |
This function prints RadioResourceConfigDedicated IE, for debugging purposes. More... | |
void | SerializeDrbToAddModList (std::list< LteRrcSap::DrbToAddMod > drbToAddModList) const |
void | SerializeLogicalChannelConfig (LteRrcSap::LogicalChannelConfig logicalChannelConfig) const |
void | SerializeMeasConfig (LteRrcSap::MeasConfig measConfig) const |
void | SerializeMeasResults (LteRrcSap::MeasResults measResults) const |
void | SerializePhysicalConfigDedicated (LteRrcSap::PhysicalConfigDedicated physicalConfigDedicated) const |
void | SerializePlmnIdentity (uint32_t plmnId) const |
void | SerializeQoffsetRange (int8_t qOffsetRange) const |
void | SerializeRachConfigCommon (LteRrcSap::RachConfigCommon rachConfigCommon) const |
void | SerializeRadioResourceConfigCommon (LteRrcSap::RadioResourceConfigCommon radioResourceConfigCommon) const |
void | SerializeRadioResourceConfigCommonSib (LteRrcSap::RadioResourceConfigCommonSib radioResourceConfigCommonSib) const |
void | SerializeRadioResourceConfigDedicated (LteRrcSap::RadioResourceConfigDedicated radioResourceConfigDedicated) const |
void | SerializeSrbToAddModList (std::list< LteRrcSap::SrbToAddMod > srbToAddModList) const |
void | SerializeSystemInformationBlockType1 (LteRrcSap::SystemInformationBlockType1 systemInformationBlockType1) const |
void | SerializeSystemInformationBlockType2 (LteRrcSap::SystemInformationBlockType2 systemInformationBlockType2) const |
void | SerializeThresholdEutra (LteRrcSap::ThresholdEutra thresholdEutra) const |
Protected Member Functions inherited from ns3::Asn1Header | |
template<int N> | |
Buffer::Iterator | DeserializeBitset (std::bitset< N > *data, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeBitset (std::bitset< 8 > *data, Buffer::Iterator bIterator) |
template<int N> | |
Buffer::Iterator | DeserializeBitstring (std::bitset< N > *bitstring, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeBitstring (std::bitset< 1 > *bitstring, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeBitstring (std::bitset< 2 > *bitstring, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeBitstring (std::bitset< 8 > *bitstring, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeBitstring (std::bitset< 10 > *bitstring, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeBitstring (std::bitset< 16 > *bitstring, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeBitstring (std::bitset< 27 > *bitstring, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeBitstring (std::bitset< 28 > *bitstring, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeBitstring (std::bitset< 32 > *bitstring, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeBoolean (bool *value, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeChoice (int numOptions, bool isExtensionMarkerPresent, int *selectedOption, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeEnum (int numElems, int *selectedElem, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeInteger (int *n, int nmin, int nmax, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeNull (Buffer::Iterator bIterator) |
template<int N> | |
Buffer::Iterator | DeserializeSequence (std::bitset< N > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequence (std::bitset< 0 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequence (std::bitset< 1 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequence (std::bitset< 2 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequence (std::bitset< 3 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequence (std::bitset< 4 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequence (std::bitset< 5 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequence (std::bitset< 6 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequence (std::bitset< 9 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequence (std::bitset< 10 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequence (std::bitset< 11 > *optionalOrDefaultMask, bool isExtensionMarkerPresent, Buffer::Iterator bIterator) |
Buffer::Iterator | DeserializeSequenceOf (int *numElems, int nMax, int nMin, Buffer::Iterator bIterator) |
void | FinalizeSerialization () const |
template<int N> | |
void | SerializeBitset (std::bitset< N > data) const |
template<int N> | |
void | SerializeBitstring (std::bitset< N > bitstring) const |
void | SerializeBitstring (std::bitset< 1 > bitstring) const |
void | SerializeBitstring (std::bitset< 2 > bitstring) const |
void | SerializeBitstring (std::bitset< 8 > bitstring) const |
void | SerializeBitstring (std::bitset< 10 > bitstring) const |
void | SerializeBitstring (std::bitset< 16 > bitstring) const |
void | SerializeBitstring (std::bitset< 27 > bitstring) const |
void | SerializeBitstring (std::bitset< 28 > bitstring) const |
void | SerializeBitstring (std::bitset< 32 > bitstring) const |
void | SerializeBoolean (bool value) const |
void | SerializeChoice (int numOptions, int selectedOption, bool isExtensionMarkerPresent) const |
void | SerializeEnum (int numElems, int selectedElem) const |
void | SerializeInteger (int n, int nmin, int nmax) const |
void | SerializeNull () const |
void | SerializeOctetstring (std::string s) const |
template<int N> | |
void | SerializeSequence (std::bitset< N > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequence (std::bitset< 0 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequence (std::bitset< 1 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequence (std::bitset< 2 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequence (std::bitset< 3 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequence (std::bitset< 4 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequence (std::bitset< 5 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequence (std::bitset< 6 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequence (std::bitset< 9 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequence (std::bitset< 10 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequence (std::bitset< 11 > optionalOrDefaultMask, bool isExtensionMarkerPresent) const |
void | SerializeSequenceOf (int numElems, int nMax, int nMin) const |
void | WriteOctet (uint8_t octet) const |
Protected Member Functions inherited from ns3::ObjectBase | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
This method is invoked once all member attributes have been initialized. More... | |
Static Protected Member Functions inherited from ns3::RrcAsn1Header | |
static TypeId | GetTypeId (void) |
Protected Attributes inherited from ns3::RrcAsn1Header | |
int | m_messageType |
Stores RRC message type, according to 3GPP TS 36.331. More... | |
Protected Attributes inherited from ns3::Asn1Header | |
bool | m_isDataSerialized |
uint8_t | m_numSerializationPendingBits |
uint8_t | m_serializationPendingBits |
Buffer | m_serializationResult |
This class manages the serialization/deserialization of RrcConnectionSetup IE.
Definition at line 231 of file lte-rrc-header.h.
ns3::RrcConnectionSetupHeader::RrcConnectionSetupHeader | ( | ) |
Definition at line 4009 of file lte-rrc-header.cc.
ns3::RrcConnectionSetupHeader::~RrcConnectionSetupHeader | ( | ) |
Definition at line 4013 of file lte-rrc-header.cc.
|
virtual |
start | an iterator which points to where the header should written. |
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.
Reimplemented from ns3::RrcDlCcchMessage.
Definition at line 4066 of file lte-rrc-header.cc.
References ns3::Asn1Header::DeserializeChoice(), ns3::RrcDlCcchMessage::DeserializeDlCcchMessage(), ns3::Asn1Header::DeserializeInteger(), ns3::Asn1Header::DeserializeNull(), ns3::RrcAsn1Header::DeserializeRadioResourceConfigDedicated(), ns3::Asn1Header::DeserializeSequence(), ns3::Asn1Header::GetSerializedSize(), m_radioResourceConfigDedicated, and m_rrcTransactionIdentifier.
std::list< LteRrcSap::DrbToAddMod > ns3::RrcConnectionSetupHeader::GetDrbToAddModList | ( | ) | const |
Gets m_radioResourceConfigDedicated.drbToAddModList.
Definition at line 4163 of file lte-rrc-header.cc.
References ns3::LteRrcSap::RadioResourceConfigDedicated::drbToAddModList, and m_radioResourceConfigDedicated.
std::list< uint8_t > ns3::RrcConnectionSetupHeader::GetDrbToReleaseList | ( | ) | const |
Gets m_radioResourceConfigDedicated.drbToReleaseList.
Definition at line 4169 of file lte-rrc-header.cc.
References ns3::LteRrcSap::RadioResourceConfigDedicated::drbToReleaseList, and m_radioResourceConfigDedicated.
LteRrcSap::RrcConnectionSetup ns3::RrcConnectionSetupHeader::GetMessage | ( | ) | const |
Returns a RrcConnectionSetup IE from the values in the class attributes.
Definition at line 4136 of file lte-rrc-header.cc.
References m_radioResourceConfigDedicated, m_rrcTransactionIdentifier, ns3::LteRrcSap::RrcConnectionSetup::radioResourceConfigDedicated, and ns3::LteRrcSap::RrcConnectionSetup::rrcTransactionIdentifier.
Referenced by ns3::LteUeRrcProtocolReal::DoReceivePdcpPdu().
LteRrcSap::PhysicalConfigDedicated ns3::RrcConnectionSetupHeader::GetPhysicalConfigDedicated | ( | ) | const |
Gets m_radioResourceConfigDedicated.physicalConfigDedicated.
Definition at line 4175 of file lte-rrc-header.cc.
References m_radioResourceConfigDedicated, and ns3::LteRrcSap::RadioResourceConfigDedicated::physicalConfigDedicated.
LteRrcSap::RadioResourceConfigDedicated ns3::RrcConnectionSetupHeader::GetRadioResourceConfigDedicated | ( | ) | const |
Getter for m_radioResourceConfigDedicated.
Definition at line 4181 of file lte-rrc-header.cc.
References m_radioResourceConfigDedicated.
uint8_t ns3::RrcConnectionSetupHeader::GetRrcTransactionIdentifier | ( | ) | const |
Getter for m_rrcTransactionIdentifier.
Definition at line 4145 of file lte-rrc-header.cc.
References m_rrcTransactionIdentifier.
std::list< LteRrcSap::SrbToAddMod > ns3::RrcConnectionSetupHeader::GetSrbToAddModList | ( | ) | const |
Gets m_radioResourceConfigDedicated.srbToAddModList.
Definition at line 4157 of file lte-rrc-header.cc.
References m_radioResourceConfigDedicated, and ns3::LteRrcSap::RadioResourceConfigDedicated::srbToAddModList.
bool ns3::RrcConnectionSetupHeader::HavePhysicalConfigDedicated | ( | ) | const |
Gets m_radioResourceConfigDedicated.havePhysicalConfigDedicated.
Definition at line 4151 of file lte-rrc-header.cc.
References ns3::LteRrcSap::RadioResourceConfigDedicated::havePhysicalConfigDedicated, and m_radioResourceConfigDedicated.
|
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 meningful information elements are in the subclasses.
Reimplemented from ns3::RrcDlCcchMessage.
Definition at line 4026 of file lte-rrc-header.cc.
References ns3::Asn1Header::FinalizeSerialization(), m_radioResourceConfigDedicated, m_rrcTransactionIdentifier, ns3::Asn1Header::m_serializationResult, ns3::Asn1Header::SerializeChoice(), ns3::RrcDlCcchMessage::SerializeDlCcchMessage(), ns3::Asn1Header::SerializeInteger(), ns3::RrcAsn1Header::SerializeRadioResourceConfigDedicated(), and ns3::Asn1Header::SerializeSequence().
|
virtual |
os | output stream This method is used by Packet::Print to print the content of a trailer as ascii data to a c++ output stream. Although the trailer is free to format its output as it wishes, it is recommended to follow a few rules to integrate with the packet pretty printer: start with flags, small field values located between a pair of parens. Values should be separated by whitespace. Follow the parens with the important fields, separated by whitespace. i.e.: (field1 val1 field2 val2 field3 val3) field4 val4 field5 val5 |
Reimplemented from ns3::RrcDlCcchMessage.
Definition at line 4018 of file lte-rrc-header.cc.
References m_radioResourceConfigDedicated, m_rrcTransactionIdentifier, and ns3::RrcAsn1Header::Print().
void ns3::RrcConnectionSetupHeader::SetMessage | ( | LteRrcSap::RrcConnectionSetup | msg | ) |
Receives a RrcConnectionSetup IE and stores the contents into the class attributes.
msg | The information element to parse |
Definition at line 4128 of file lte-rrc-header.cc.
References ns3::Asn1Header::m_isDataSerialized, m_radioResourceConfigDedicated, m_rrcTransactionIdentifier, ns3::LteRrcSap::RrcConnectionSetup::radioResourceConfigDedicated, and ns3::LteRrcSap::RrcConnectionSetup::rrcTransactionIdentifier.
Referenced by ns3::RrcConnectionSetupTestCase::DoRun(), and ns3::LteEnbRrcProtocolReal::DoSendRrcConnectionSetup().
|
mutableprivate |
Definition at line 298 of file lte-rrc-header.h.
Referenced by Deserialize(), GetDrbToAddModList(), GetDrbToReleaseList(), GetMessage(), GetPhysicalConfigDedicated(), GetRadioResourceConfigDedicated(), GetSrbToAddModList(), HavePhysicalConfigDedicated(), PreSerialize(), Print(), and SetMessage().
|
private |
Definition at line 297 of file lte-rrc-header.h.
Referenced by Deserialize(), GetMessage(), GetRrcTransactionIdentifier(), PreSerialize(), Print(), and SetMessage().