A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::HandoverPreparationInfoHeader Class Reference

This class manages the serialization/deserialization of HandoverPreparationInfo IE. More...

#include <lte-rrc-header.h>

+ Inheritance diagram for ns3::HandoverPreparationInfoHeader:
+ Collaboration diagram for ns3::HandoverPreparationInfoHeader:

Public Member Functions

 HandoverPreparationInfoHeader ()
 
uint32_t Deserialize (Buffer::Iterator bIterator)
 
LteRrcSap::AsConfig GetAsConfig () const
 Getter for m_asConfig. More...
 
LteRrcSap::HandoverPreparationInfo GetMessage () const
 Returns a HandoverPreparationInfo IE from the values in the class attributes. More...
 
void PreSerialize () const
 This function serializes class attributes to m_serializationResult local Buffer. More...
 
void Print (std::ostream &os) const
 
void SetMessage (LteRrcSap::HandoverPreparationInfo msg)
 Receives a HandoverPreparationInfo 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::AsConfig m_asConfig
 

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
 

Detailed Description

This class manages the serialization/deserialization of HandoverPreparationInfo IE.

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

Constructor & Destructor Documentation

ns3::HandoverPreparationInfoHeader::HandoverPreparationInfoHeader ( )

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

Member Function Documentation

uint32_t ns3::HandoverPreparationInfoHeader::Deserialize ( Buffer::Iterator  start)
virtual
Parameters
startan iterator which points to where the header should written.
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.

Implements ns3::RrcAsn1Header.

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

References ns3::Asn1Header::DeserializeBitstring(), ns3::Asn1Header::DeserializeChoice(), ns3::Asn1Header::DeserializeEnum(), ns3::Asn1Header::DeserializeInteger(), ns3::RrcAsn1Header::DeserializeMeasConfig(), ns3::Asn1Header::DeserializeNull(), ns3::RrcAsn1Header::DeserializeRadioResourceConfigDedicated(), ns3::Asn1Header::DeserializeSequence(), ns3::Asn1Header::DeserializeSequenceOf(), ns3::RrcAsn1Header::DeserializeSystemInformationBlockType1(), ns3::RrcAsn1Header::DeserializeSystemInformationBlockType2(), ns3::LteRrcSap::MasterInformationBlock::dlBandwidth, ns3::Asn1Header::GetSerializedSize(), m_asConfig, MAX_EARFCN, MAX_RAT_CAPABILITIES, ns3::LteRrcSap::AsConfig::sourceDlCarrierFreq, ns3::LteRrcSap::AsConfig::sourceMasterInformationBlock, ns3::LteRrcSap::AsConfig::sourceMeasConfig, ns3::LteRrcSap::AsConfig::sourceRadioResourceConfig, ns3::LteRrcSap::AsConfig::sourceSystemInformationBlockType1, ns3::LteRrcSap::AsConfig::sourceSystemInformationBlockType2, ns3::LteRrcSap::AsConfig::sourceUeIdentity, and ns3::LteRrcSap::MasterInformationBlock::systemFrameNumber.

+ Here is the call graph for this function:

LteRrcSap::AsConfig ns3::HandoverPreparationInfoHeader::GetAsConfig ( ) const

Getter for m_asConfig.

Returns
m_asConfig

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

References m_asConfig.

LteRrcSap::HandoverPreparationInfo ns3::HandoverPreparationInfoHeader::GetMessage ( ) const

Returns a HandoverPreparationInfo IE from the values in the class attributes.

Returns
A HandoverPreparationInfo, as defined in LteRrcSap

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

References ns3::LteRrcSap::HandoverPreparationInfo::asConfig, and m_asConfig.

Referenced by ns3::LteEnbRrcProtocolReal::DoDecodeHandoverPreparationInformation().

+ Here is the caller graph for this function:

void ns3::HandoverPreparationInfoHeader::PreSerialize ( ) const
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.

Implements ns3::RrcAsn1Header.

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

References ns3::LteRrcSap::MasterInformationBlock::dlBandwidth, ns3::Asn1Header::FinalizeSerialization(), m_asConfig, ns3::Asn1Header::m_serializationResult, MAX_EARFCN, MAX_RAT_CAPABILITIES, ns3::Asn1Header::SerializeBitstring(), ns3::Asn1Header::SerializeChoice(), ns3::Asn1Header::SerializeEnum(), ns3::Asn1Header::SerializeInteger(), ns3::RrcAsn1Header::SerializeMeasConfig(), ns3::RrcAsn1Header::SerializeRadioResourceConfigDedicated(), ns3::Asn1Header::SerializeSequence(), ns3::Asn1Header::SerializeSequenceOf(), ns3::RrcAsn1Header::SerializeSystemInformationBlockType1(), ns3::RrcAsn1Header::SerializeSystemInformationBlockType2(), ns3::LteRrcSap::AsConfig::sourceDlCarrierFreq, ns3::LteRrcSap::AsConfig::sourceMasterInformationBlock, ns3::LteRrcSap::AsConfig::sourceMeasConfig, ns3::LteRrcSap::AsConfig::sourceRadioResourceConfig, ns3::LteRrcSap::AsConfig::sourceSystemInformationBlockType1, ns3::LteRrcSap::AsConfig::sourceSystemInformationBlockType2, ns3::LteRrcSap::AsConfig::sourceUeIdentity, and ns3::LteRrcSap::MasterInformationBlock::systemFrameNumber.

+ Here is the call graph for this function:

void ns3::HandoverPreparationInfoHeader::Print ( std::ostream &  os) const
virtual
Parameters
osoutput 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::RrcAsn1Header.

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

References ns3::LteRrcSap::SystemInformationBlockType1::cellAccessRelatedInfo, ns3::LteRrcSap::CellAccessRelatedInfo::cellIdentity, ns3::LteRrcSap::CellAccessRelatedInfo::csgIdentity, ns3::LteRrcSap::CellAccessRelatedInfo::csgIndication, ns3::LteRrcSap::MasterInformationBlock::dlBandwidth, m_asConfig, ns3::LteRrcSap::PlmnIdentityInfo::plmnIdentity, ns3::LteRrcSap::CellAccessRelatedInfo::plmnIdentityInfo, ns3::RrcAsn1Header::Print(), ns3::LteRrcSap::AsConfig::sourceDlCarrierFreq, ns3::LteRrcSap::AsConfig::sourceMasterInformationBlock, ns3::LteRrcSap::AsConfig::sourceRadioResourceConfig, ns3::LteRrcSap::AsConfig::sourceSystemInformationBlockType1, ns3::LteRrcSap::AsConfig::sourceUeIdentity, and ns3::LteRrcSap::MasterInformationBlock::systemFrameNumber.

+ Here is the call graph for this function:

void ns3::HandoverPreparationInfoHeader::SetMessage ( LteRrcSap::HandoverPreparationInfo  msg)

Receives a HandoverPreparationInfo IE and stores the contents into the class attributes.

Parameters
msgThe information element to parse

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

References ns3::LteRrcSap::HandoverPreparationInfo::asConfig, m_asConfig, and ns3::Asn1Header::m_isDataSerialized.

Referenced by ns3::LteEnbRrcProtocolReal::DoEncodeHandoverPreparationInformation(), and ns3::HandoverPreparationInfoTestCase::DoRun().

+ Here is the caller graph for this function:

Member Data Documentation

LteRrcSap::AsConfig ns3::HandoverPreparationInfoHeader::m_asConfig
private

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

Referenced by Deserialize(), GetAsConfig(), GetMessage(), PreSerialize(), Print(), and SetMessage().


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