A Discrete-Event Network Simulator
API
lte-rrc-header.h
Go to the documentation of this file.
1 /* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
2 /*
3  * Copyright (c) 2012 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2 as
7  * published by the Free Software Foundation;
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17  *
18  * Author: Lluis Parcerisa <lparcerisa@cttc.cat>
19  * Modified by:
20  * Danilo Abrignani <danilo.abrignani@unibo.it> (Carrier Aggregation - GSoC 2015)
21  * Biljana Bojovic <biljana.bojovic@cttc.es> (Carrier Aggregation)
22  */
23 
24 #ifndef RRC_HEADER_H
25 #define RRC_HEADER_H
26 
27 #include "ns3/header.h"
28 
29 #include <bitset>
30 #include <string>
31 
32 #include "ns3/lte-rrc-sap.h"
33 #include "ns3/lte-asn1-header.h"
34 
35 namespace ns3 {
36 
45 class RrcAsn1Header : public Asn1Header
46 {
47 public:
48  RrcAsn1Header ();
54  int GetMessageType ();
55 
56 protected:
61  static TypeId GetTypeId (void);
62  // Inherited from Asn1Header
63  virtual TypeId GetInstanceTypeId (void) const;
64  uint32_t Deserialize (Buffer::Iterator bIterator) = 0;
65  virtual void PreSerialize (void) const = 0;
66 
67 
68  // Auxiliary functions
75  int BandwidthToEnum (uint8_t bandwidth) const;
82  uint8_t EnumToBandwidth (int n) const;
83 
84 
85  // Serialization functions
91  void SerializeSrbToAddModList (std::list<LteRrcSap::SrbToAddMod> srbToAddModList) const;
97  void SerializeDrbToAddModList (std::list<LteRrcSap::DrbToAddMod> drbToAddModList) const;
103  void SerializeLogicalChannelConfig (LteRrcSap::LogicalChannelConfig logicalChannelConfig) const;
109  void SerializeRadioResourceConfigDedicated (LteRrcSap::RadioResourceConfigDedicated radioResourceConfigDedicated) const;
115  void SerializePhysicalConfigDedicated (LteRrcSap::PhysicalConfigDedicated physicalConfigDedicated) const;
127  void SerializeSystemInformationBlockType1 (LteRrcSap::SystemInformationBlockType1 systemInformationBlockType1) const;
133  void SerializeSystemInformationBlockType2 (LteRrcSap::SystemInformationBlockType2 systemInformationBlockType2) const;
139  void SerializeRadioResourceConfigCommon (LteRrcSap::RadioResourceConfigCommon radioResourceConfigCommon) const;
145  void SerializeRadioResourceConfigCommonSib (LteRrcSap::RadioResourceConfigCommonSib radioResourceConfigCommonSib) const;
151  void SerializeMeasResults (LteRrcSap::MeasResults measResults) const;
157  void SerializePlmnIdentity (uint32_t plmnId) const;
163  void SerializeRachConfigCommon (LteRrcSap::RachConfigCommon rachConfigCommon) const;
169  void SerializeMeasConfig (LteRrcSap::MeasConfig measConfig) const;
193  void SerializeQoffsetRange (int8_t qOffsetRange) const;
199  void SerializeThresholdEutra (LteRrcSap::ThresholdEutra thresholdEutra) const;
200 
201  // Deserialization functions
209  Buffer::Iterator DeserializeDrbToAddModList (std::list<LteRrcSap::DrbToAddMod> *drbToAddModLis, Buffer::Iterator bIterator);
217  Buffer::Iterator DeserializeSrbToAddModList (std::list<LteRrcSap::SrbToAddMod> *srbToAddModList, Buffer::Iterator bIterator);
289  Buffer::Iterator DeserializePlmnIdentity (uint32_t *plmnId, Buffer::Iterator bIterator);
313  Buffer::Iterator DeserializeQoffsetRange (int8_t * qOffsetRange, Buffer::Iterator bIterator);
362 
367  void Print (std::ostream &os) const;
373  void Print (std::ostream &os, LteRrcSap::RadioResourceConfigDedicated radioResourceConfigDedicated) const;
374 
377 };
378 
379 
385 {
386 public:
387  RrcUlDcchMessage ();
389 
390  // Inherited from RrcAsn1Header
391  uint32_t Deserialize (Buffer::Iterator bIterator);
392  void Print (std::ostream &os) const;
393  void PreSerialize () const;
394 
395 protected:
401  void SerializeUlDcchMessage (int msgType) const;
409 };
410 
416 {
417 public:
418  RrcDlDcchMessage ();
420 
421  // Inherited from RrcAsn1Header
422  uint32_t Deserialize (Buffer::Iterator bIterator);
423  void Print (std::ostream &os) const;
424  void PreSerialize () const;
425 
426 protected:
432  void SerializeDlDcchMessage (int msgType) const;
440 };
441 
447 {
448 public:
449  RrcUlCcchMessage ();
451 
452  // Inherited from RrcAsn1Header
453  uint32_t Deserialize (Buffer::Iterator bIterator);
454  void Print (std::ostream &os) const;
455  void PreSerialize () const;
456 
457 protected:
463  void SerializeUlCcchMessage (int msgType) const;
471 };
472 
478 {
479 public:
480  RrcDlCcchMessage ();
482 
483  // Inherited from RrcAsn1Header
484  uint32_t Deserialize (Buffer::Iterator bIterator);
485  void Print (std::ostream &os) const;
486  void PreSerialize () const;
487 
488 protected:
494  void SerializeDlCcchMessage (int msgType) const;
502 };
503 
508 {
509 public:
512 
517  static TypeId GetTypeId (void);
518  // Inherited from RrcAsn1Header
519  void PreSerialize () const;
520  uint32_t Deserialize (Buffer::Iterator bIterator);
521  void Print (std::ostream &os) const;
522 
528 
534 
539  std::bitset<8> GetMmec () const;
540 
545  std::bitset<32> GetMtmsi () const;
546 
547 private:
548  std::bitset<8> m_mmec;
549  std::bitset<32> m_mTmsi;
550  enum
552  {
556  std::bitset<1> m_spare;
557 };
558 
563 {
564 public:
567 
568  // Inherited from RrcAsn1Header
569  void PreSerialize () const;
570  uint32_t Deserialize (Buffer::Iterator bIterator);
571  void Print (std::ostream &os) const;
572 
578 
584 
589  uint8_t GetRrcTransactionIdentifier () const;
590 
596 
601  bool HavePhysicalConfigDedicated () const;
602 
608 
613  std::list<LteRrcSap::SrbToAddMod> GetSrbToAddModList () const;
614 
619  std::list<LteRrcSap::DrbToAddMod> GetDrbToAddModList () const;
620 
625  std::list<uint8_t> GetDrbToReleaseList () const;
626 
627 private:
630 };
631 
636 {
637 public:
640 
641  // Inherited from RrcAsn1Header
642  void PreSerialize () const;
643  uint32_t Deserialize (Buffer::Iterator bIterator);
644  void Print (std::ostream &os) const;
645 
651 
657 
662  uint8_t GetRrcTransactionIdentifier () const;
663 
664 private:
666 
667 };
668 
673 {
674 public:
677 
678  // Inherited from RrcAsn1Header
679  void PreSerialize () const;
680  uint32_t Deserialize (Buffer::Iterator bIterator);
681  void Print (std::ostream &os) const;
682 
688 
694 
699  uint8_t GetRrcTransactionIdentifier () const;
700 
701 private:
703 
704 };
705 
710 {
711 public:
714 
715  // Inherited from RrcAsn1Header
716  void PreSerialize () const;
717  uint32_t Deserialize (Buffer::Iterator bIterator);
718  void Print (std::ostream &os) const;
719 
725 
731 
736  bool GetHaveMeasConfig ();
737 
743 
749 
755 
761 
767 
772  uint8_t GetRrcTransactionIdentifier () const;
773 
779 
785 
791 
796  bool HavePhysicalConfigDedicated () const;
797 
803 
808  std::list<LteRrcSap::SrbToAddMod> GetSrbToAddModList () const;
809 
814  std::list<LteRrcSap::DrbToAddMod> GetDrbToAddModList () const;
815 
820  std::list<uint8_t> GetDrbToReleaseList () const;
821 
822 private:
832 };
833 
838 {
839 public:
841 
842  // Inherited from RrcAsn1Header
843  void PreSerialize () const;
844  uint32_t Deserialize (Buffer::Iterator bIterator);
845  void Print (std::ostream &os) const;
846 
852 
858 
864 
865 private:
867 };
868 
873 {
874 public:
877 
878  // Inherited from RrcAsn1Header
879  void PreSerialize () const;
880  uint32_t Deserialize (Buffer::Iterator bIterator);
881  void Print (std::ostream &os) const;
882 
888 
894 
900 
906 
907 private:
910 };
911 
916 {
917 public:
920 
921  // Inherited from RrcAsn1Header
922  void PreSerialize () const;
923  uint32_t Deserialize (Buffer::Iterator bIterator);
924  void Print (std::ostream &os) const;
925 
931 
937 
942  uint8_t GetRrcTransactionIdentifier () const;
943 
949 
950 private:
953 };
954 
959 {
960 public:
962 
963  // Inherited from RrcAsn1Header
964  void PreSerialize () const;
965  uint32_t Deserialize (Buffer::Iterator bIterator);
966  void Print (std::ostream &os) const;
967 
973 
979 
984  uint8_t GetRrcTransactionIdentifier () const;
985 
986 private:
988 };
989 
994 {
995 public:
998 
999  // Inherited from RrcAsn1Header
1000  void PreSerialize () const;
1001  uint32_t Deserialize (Buffer::Iterator bIterator);
1002  void Print (std::ostream &os) const;
1003 
1009 
1015 
1016 private:
1018 };
1019 
1024 {
1025 public:
1028 
1029  // Inherited from RrcAsn1Header
1030  void PreSerialize () const;
1031  uint32_t Deserialize (Buffer::Iterator bIterator);
1032  void Print (std::ostream &os) const;
1033 
1039 
1045 
1046 private:
1048 };
1049 
1054 {
1055 public:
1058 
1059  // Inherited from RrcAsn1Header
1060  void PreSerialize () const;
1061  uint32_t Deserialize (Buffer::Iterator bIterator);
1062  void Print (std::ostream &os) const;
1063 
1069 
1075 
1076 private:
1078 };
1079 
1084 {
1085 public:
1088 
1089  // Inherited from RrcAsn1Header
1090  void PreSerialize () const;
1091  uint32_t Deserialize (Buffer::Iterator bIterator);
1092  void Print (std::ostream &os) const;
1093 
1099 
1105 
1106 private:
1108 
1109 };
1110 
1111 } // namespace ns3
1112 
1113 #endif // RRC_HEADER_H
1114 
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
This class only serves to discriminate which message type has been received in downlink (eNb to ue) f...
Buffer::Iterator DeserializeRadioResourceConfigCommonSCell(LteRrcSap::RadioResourceConfigCommonSCell *rrccsc, Buffer::Iterator bIterator)
Deserialize radio resource config common SCell function.
Buffer::Iterator DeserializeSystemInformationBlockType1(LteRrcSap::SystemInformationBlockType1 *systemInformationBlockType1, Buffer::Iterator bIterator)
Deserialize system information block type 1 function.
void SerializeSystemInformationBlockType2(LteRrcSap::SystemInformationBlockType2 systemInformationBlockType2) const
Serialize system information block type 2 function.
bool GetHaveMobilityControlInfo()
Getter for m_haveMobilityControlInfo.
RrcConnectionRequest structure.
Definition: lte-rrc-sap.h:692
LteRrcSap::RrcConnectionReject GetMessage() const
Returns a RrcConnectionReject IE from the values in the class attributes.
void SerializeLogicalChannelConfig(LteRrcSap::LogicalChannelConfig logicalChannelConfig) const
Serialize logicala channel config function.
PhysicalConfigDedicated structure.
Definition: lte-rrc-sap.h:216
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
void SerializeRadioResourceConfigCommonSCell(LteRrcSap::RadioResourceConfigCommonSCell rrccsc) const
Serialize radio resource config common SCell function.
uint8_t m_rrcTransactionIdentifier
RRC transaction identifier.
LteRrcSap::HandoverPreparationInfo GetMessage() const
Returns a HandoverPreparationInfo IE from the values in the class attributes.
CellIdentification structure.
Definition: lte-rrc-sap.h:712
Buffer::Iterator DeserializeRadioResourceConfigCommonSib(LteRrcSap::RadioResourceConfigCommonSib *radioResourceConfigCommonSib, Buffer::Iterator bIterator)
Deserialize radio resource config common SIB function.
LteRrcSap::RrcConnectionReestablishmentReject GetMessage() const
Returns a RrcConnectionReestablishmentReject IE from the values in the class attributes.
uint8_t m_rrcTransactionIdentifier
RRC transaction identifier.
MeasurementReport structure.
Definition: lte-rrc-sap.h:901
uint32_t Deserialize(Buffer::Iterator bIterator)
uint8_t m_rrcTransactionIdentifier
RRC transaction identifier.
Buffer::Iterator DeserializeUlCcchMessage(Buffer::Iterator bIterator)
Deserialize DL CCCH message function.
MobilityControlInfo structure.
Definition: lte-rrc-sap.h:558
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
std::bitset< 8 > GetMmec() const
Get MMEC attribute.
Buffer::Iterator DeserializeLogicalChannelConfig(LteRrcSap::LogicalChannelConfig *logicalChannelConfig, Buffer::Iterator bIterator)
Deserialize logical channel config function.
uint32_t Deserialize(Buffer::Iterator bIterator)
RadioResourceConfigCommon structure.
Definition: lte-rrc-sap.h:272
LteRrcSap::RadioResourceConfigDedicated GetRadioResourceConfigDedicated()
Getter for m_radioResourceConfigDedicated.
void SerializeThresholdEutra(LteRrcSap::ThresholdEutra thresholdEutra) const
Serialize threshold eutra function.
std::list< LteRrcSap::DrbToAddMod > GetDrbToAddModList() const
Gets m_radioResourceConfigDedicated.drbToAddModList.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
uint8_t GetRrcTransactionIdentifier() const
Getter for m_rrcTransactionIdentifier.
Buffer::Iterator DeserializeDrbToAddModList(std::list< LteRrcSap::DrbToAddMod > *drbToAddModLis, Buffer::Iterator bIterator)
Deserialize DRB to add mod list function.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
std::list< uint8_t > GetDrbToReleaseList() const
Gets m_radioResourceConfigDedicated.drbToReleaseList.
MeasConfig structure.
Definition: lte-rrc-sap.h:518
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
Buffer::Iterator DeserializeNonCriticalExtensionConfig(LteRrcSap::NonCriticalExtensionConfiguration *nonCriticalExtension, Buffer::Iterator bIterator)
Deserialize non critical extension config function.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
void SetMessage(LteRrcSap::RrcConnectionRequest msg)
Receives a RrcConnectionRequest IE and stores the contents into the class attributes.
void SetMessage(LteRrcSap::RrcConnectionSetupCompleted msg)
Receives a RrcConnectionSetupCompleted IE and stores the contents into the class attributes.
Buffer::Iterator DeserializeMeasConfig(LteRrcSap::MeasConfig *measConfig, Buffer::Iterator bIterator)
Deserialize measure config function.
void SetMessage(LteRrcSap::RrcConnectionReestablishmentRequest msg)
Receives a RrcConnectionReestablishmentRequest IE and stores the contents into the class attributes...
static TypeId GetTypeId(void)
Get the type ID.
uint32_t Deserialize(Buffer::Iterator bIterator)
LteRrcSap::RrcConnectionReestablishmentReject m_rrcConnectionReestablishmentReject
RRC connection reestablishmnet reject.
LteRrcSap::MobilityControlInfo m_mobilityControlInfo
the modility control info
void SerializeMeasResults(LteRrcSap::MeasResults measResults) const
Serialize measure results function.
LteRrcSap::MeasConfig m_measConfig
the measure config
uint8_t GetRrcTransactionIdentifier() const
Getter for m_rrcTransactionIdentifier.
uint32_t Deserialize(Buffer::Iterator bIterator)
void SetMessage(LteRrcSap::RrcConnectionReestablishmentComplete msg)
Receives a RrcConnectionReestablishmentComplete IE and stores the contents into the class attributes...
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
void SerializeSrbToAddModList(std::list< LteRrcSap::SrbToAddMod > srbToAddModList) const
Serialize SRB to add mod list function.
void SetMessage(LteRrcSap::RrcConnectionReestablishment msg)
Receives a RrcConnectionReestablishment IE and stores the contents into the class attributes...
std::bitset< 8 > m_mmec
MMEC.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
LteRrcSap::ReestablishmentCause GetReestablishmentCause() const
Getter for m_reestablishmentCause.
LteRrcSap::ReestablishmentCause m_reestablishmentCause
reestablishment cause
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
std::list< LteRrcSap::SrbToAddMod > GetSrbToAddModList() const
Gets m_radioResourceConfigDedicated.srbToAddModList.
LteRrcSap::MeasConfig GetMeasConfig()
Getter for m_measConfig.
uint8_t EnumToBandwidth(int n) const
Convert from ENUMERATED value to bandwidth (in RBs)
Buffer::Iterator DeserializePhysicalConfigDedicated(LteRrcSap::PhysicalConfigDedicated *physicalConfigDedicated, Buffer::Iterator bIterator)
Deserialize physical config dedicated function.
uint32_t Deserialize(Buffer::Iterator bIterator)=0
uint8_t m_rrcTransactionIdentifier
RRC transaction identifier.
int GetMessageType()
Get message type.
uint8_t m_rrcTransactionIdentifier
RRC transaction identifier.
uint32_t Deserialize(Buffer::Iterator bIterator)
LteRrcSap::RadioResourceConfigDedicated m_radioResourceConfigDedicated
the radio resource config dedicated
LteRrcSap::PhysicalConfigDedicated GetPhysicalConfigDedicated() const
Gets m_radioResourceConfigDedicated.physicalConfigDedicated.
void SerializeRadioResourceConfigCommon(LteRrcSap::RadioResourceConfigCommon radioResourceConfigCommon) const
Serialize system information block type 2 function.
uint8_t GetRrcTransactionIdentifier() const
Getter for m_rrcTransactionIdentifier.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
uint32_t Deserialize(Buffer::Iterator bIterator)
iterator in a Buffer instance
Definition: buffer.h:98
bool HavePhysicalConfigDedicated() const
Gets m_radioResourceConfigDedicated.havePhysicalConfigDedicated.
uint8_t m_rrcTransactionIdentifier
RRC transaction identifier.
LteRrcSap::AsConfig m_asConfig
AS config.
LteRrcSap::AsConfig GetAsConfig() const
Getter for m_asConfig.
Buffer::Iterator DeserializeDlCcchMessage(Buffer::Iterator bIterator)
Deserialize DL CCCH message function.
Buffer::Iterator DeserializeRadioResourceConfigDedicated(LteRrcSap::RadioResourceConfigDedicated *radioResourceConfigDedicated, Buffer::Iterator bIterator)
Deserialize radio resource config dedicated function.
This class manages the serialization/deserialization of RrcConnectionSetupComplete IE...
Buffer::Iterator DeserializeDlDcchMessage(Buffer::Iterator bIterator)
Deserialize DL DCCH message function.
LteRrcSap::RrcConnectionSetupCompleted GetMessage() const
Returns a RrcConnectionSetupCompleted IE from the values in the class attributes. ...
LteRrcSap::MeasurementReport m_measurementReport
measurement report
void SetMessage(LteRrcSap::RrcConnectionRelease msg)
Receives a RrcConnectionRelease IE and stores the contents into the class attributes.
LteRrcSap::RrcConnectionReestablishment GetMessage() const
Returns a RrcConnectionReestablishment IE from the values in the class attributes.
Buffer::Iterator DeserializePlmnIdentity(uint32_t *plmnId, Buffer::Iterator bIterator)
Deserialize PLMN identity function.
uint32_t Deserialize(Buffer::Iterator bIterator)
Buffer::Iterator DeserializeRachConfigCommon(LteRrcSap::RachConfigCommon *rachConfigCommon, Buffer::Iterator bIterator)
Deserialize RACH config common function.
This class manages the serialization/deserialization of RrcConnectionSetup IE.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
void SetMessage(LteRrcSap::RrcConnectionReestablishmentReject msg)
Receives a RrcConnectionReestablishmentReject IE and stores the contents into the class attributes...
PhysicalConfigDedicatedSCell structure.
Definition: lte-rrc-sap.h:783
bool m_haveRadioResourceConfigDedicated
have radio resource config dedicated?
This class only serves to discriminate which message type has been received in uplink (ue to eNb) for...
uint32_t Deserialize(Buffer::Iterator bIterator)
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
MeasResults structure.
Definition: lte-rrc-sap.h:678
RrcConnectionReestablishment structure.
Definition: lte-rrc-sap.h:865
void SerializeDlDcchMessage(int msgType) const
Serialize DL DCCH message function.
Buffer::Iterator DeserializeSystemInformationBlockType2(LteRrcSap::SystemInformationBlockType2 *systemInformationBlockType2, Buffer::Iterator bIterator)
Deserialize system information block type 2 function.
LteRrcSap::RrcConnectionRelease m_rrcConnectionRelease
RRC connection release.
LteRrcSap::RrcConnectionReestablishmentComplete GetMessage() const
Returns a RrcConnectionReestablishmentComplete IE from the values in the class attributes.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
uint32_t Deserialize(Buffer::Iterator bIterator)
bool m_haveNonCriticalExtension
Have critical extension.
void SerializeRadioResourceConfigCommonSib(LteRrcSap::RadioResourceConfigCommonSib radioResourceConfigCommonSib) const
Serialize radio resource config common SIB function.
This class manages the serialization/deserialization of RrcConnectionReject IE.
RrcConnectionReconfiguration structure.
Definition: lte-rrc-sap.h:836
This class only serves to discriminate which message type has been received in downlink (eNb to ue) f...
LteRrcSap::PhysicalConfigDedicated GetPhysicalConfigDedicated() const
Gets m_radioResourceConfigDedicated.physicalConfigDedicated.
void SetMessage(LteRrcSap::RrcConnectionReject msg)
Receives a RrcConnectionReject IE and stores the contents into the class attributes.
void SerializePlmnIdentity(uint32_t plmnId) const
Serialize PLMN identity function.
RrcConnectionReconfigurationCompleted structure.
Definition: lte-rrc-sap.h:851
uint32_t Deserialize(Buffer::Iterator bIterator)
LteRrcSap::RrcConnectionSetup GetMessage() const
Returns a RrcConnectionSetup IE from the values in the class attributes.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
Buffer::Iterator DeserializeMeasResults(LteRrcSap::MeasResults *measResults, Buffer::Iterator bIterator)
Deserialize measure results function.
This class manages the serialization/deserialization of RRCConnectionReestablishmentRequest IE...
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
RrcConnectionSetupCompleted structure.
Definition: lte-rrc-sap.h:705
HandoverPreparationInfo structure.
Definition: lte-rrc-sap.h:895
RrcConnectionSetup structure.
Definition: lte-rrc-sap.h:698
This class extends Asn1Header functions, adding serialization/deserialization of some Information ele...
void SetMessage(LteRrcSap::MeasurementReport msg)
Receives a MeasurementReport IE and stores the contents into the class attributes.
RadioResourceConfigCommonSib structure.
Definition: lte-rrc-sap.h:278
RrcConnectionReestablishmentRequest structure.
Definition: lte-rrc-sap.h:858
std::list< LteRrcSap::SrbToAddMod > GetSrbToAddModList() const
Gets m_radioResourceConfigDedicated.srbToAddModList.
void SerializeRadioResourceConfigDedicated(LteRrcSap::RadioResourceConfigDedicated radioResourceConfigDedicated) const
Serialize radio resource config function.
SystemInformationBlockType1 structure.
Definition: lte-rrc-sap.h:594
LteRrcSap::RadioResourceConfigDedicated m_radioResourceConfigDedicated
radio resource config dedicated
void SetMessage(LteRrcSap::RrcConnectionReconfigurationCompleted msg)
Receives a RrcConnectionReconfigurationCompleted IE and stores the contents into the class attributes...
uint32_t Deserialize(Buffer::Iterator bIterator)
Buffer::Iterator DeserializeQoffsetRange(int8_t *qOffsetRange, Buffer::Iterator bIterator)
Deserialize Qoffset range function.
LteRrcSap::RrcConnectionReestablishmentRequest GetMessage() const
Returns a RrcConnectionReestablishmentRequest IE from the values in the class attributes.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
RrcConnectionReject structure.
Definition: lte-rrc-sap.h:889
void SerializeRadioResourceDedicatedSCell(LteRrcSap::RadioResourceConfigDedicatedSCell rrcdsc) const
Serialize radio resource dedicated SCell function.
void SerializeUlCcchMessage(int msgType) const
Serialize UL CCCH message function.
uint32_t Deserialize(Buffer::Iterator bIterator)
void SerializeNonCriticalExtensionConfiguration(LteRrcSap::NonCriticalExtensionConfiguration nonCriticalExtensionConfiguration) const
Serialize non critical extension config function.
ReestablishmentCause
ReestablishmentCause enumeration.
Definition: lte-rrc-sap.h:579
void SerializeDlCcchMessage(int msgType) const
Serialize DL CCCH message function.
virtual void PreSerialize(void) const =0
This function serializes class attributes to m_serializationResult local Buffer.
This class manages the serialization/deserialization of RrcConnectionRequest IE.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
Buffer::Iterator DeserializeRadioResourceConfigCommon(LteRrcSap::RadioResourceConfigCommon *radioResourceConfigCommon, Buffer::Iterator bIterator)
Deserialize radio resource config common function.
This class manages the serialization/deserialization of HandoverPreparationInfo IE.
RachConfigCommon structure.
Definition: lte-rrc-sap.h:264
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
Buffer::Iterator DeserializeRadioResourceConfigDedicatedSCell(LteRrcSap::RadioResourceConfigDedicatedSCell *rrcdsc, Buffer::Iterator bIterator)
Deserialize radio resource config dedicated SCell function.
static TypeId GetTypeId(void)
Get the type ID.
bool GetHaveMeasConfig()
Getter for m_haveMeasConfig.
This class manages the serialization/deserialization of RrcConnectionRelease IE.
RrcConnectionReestablishmentReject structure.
Definition: lte-rrc-sap.h:878
uint8_t GetRrcTransactionIdentifier() const
Getter for m_rrcTransactionIdentifier attribute.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
void SetMessage(LteRrcSap::HandoverPreparationInfo msg)
Receives a HandoverPreparationInfo IE and stores the contents into the class attributes.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
virtual TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
This class manages the serialization/deserialization of MeasurementReport IE.
LteRrcSap::RrcConnectionRequest GetMessage() const
Returns a RrcConnectionRequest IE from the values in the class attributes.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
std::list< uint8_t > GetDrbToReleaseList() const
Gets m_radioResourceConfigDedicated.drbToReleaseList.
uint8_t GetRrcTransactionIdentifier() const
Getter for m_rrcTransactionIdentifier attribute.
LteRrcSap::MeasurementReport GetMessage() const
Returns a MeasurementReport IE from the values in the class attributes.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
bool m_haveMobilityControlInfo
have mobility control info?
enum ns3::RrcConnectionRequestHeader::@62 m_establishmentCause
EstablishmentCause enumeration.
AsConfig structure.
Definition: lte-rrc-sap.h:615
This class manages the serialization/deserialization of RrcConnectionReconfiguration IE...
ReestabUeIdentity structure.
Definition: lte-rrc-sap.h:572
void SerializeDrbToAddModList(std::list< LteRrcSap::DrbToAddMod > drbToAddModList) const
Serialize DRB to add mod list function.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
void SerializeMeasConfig(LteRrcSap::MeasConfig measConfig) const
Serialize measure config function.
std::bitset< 32 > GetMtmsi() const
Get M-TMSI attribute.
bool GetHaveNonCriticalExtensionConfig()
Getter for m_haveNonCriticalExtension.
bool GetHaveRadioResourceConfigDedicated()
Getter for m_haveRadioResourceConfigDedicated.
void SetMessage(LteRrcSap::RrcConnectionSetup msg)
Receives a RrcConnectionSetup IE and stores the contents into the class attributes.
uint32_t Deserialize(Buffer::Iterator bIterator)
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
Buffer::Iterator DeserializePhysicalConfigDedicatedSCell(LteRrcSap::PhysicalConfigDedicatedSCell *pcdsc, Buffer::Iterator bIterator)
Deserialize physical config dedicated SCell function.
int BandwidthToEnum(uint8_t bandwidth) const
Convert from bandwidth (in RBs) to ENUMERATED value.
int m_messageType
Stores RRC message type, according to 3GPP TS 36.331.
RadioResourceConfigDedicatedSCell structure.
Definition: lte-rrc-sap.h:813
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
SystemInformationBlockType2 structure.
Definition: lte-rrc-sap.h:601
void SerializeSystemInformationBlockType1(LteRrcSap::SystemInformationBlockType1 systemInformationBlockType1) const
Serialize system information block type 1 function.
This class manages the serialization/deserialization of RrcConnectionReestablishmentReject IE...
Buffer::Iterator DeserializeCellIdentification(LteRrcSap::CellIdentification *ci, Buffer::Iterator bIterator)
Deserialize cell identification function.
This class has the purpose to encode Information Elements according to ASN.1 syntax, as defined in ITU-T X-691.
This class manages the serialization/deserialization of RrcConnectionReestablishmentComplete IE...
bool m_haveMeasConfig
have measure config?
RrcConnectionReestablishmentComplete structure.
Definition: lte-rrc-sap.h:872
void SerializePhysicalConfigDedicated(LteRrcSap::PhysicalConfigDedicated physicalConfigDedicated) const
Serialize physical config dedicated function.
LteRrcSap::RadioResourceConfigDedicated m_radioResourceConfigDedicated
radio resource config dedicated
LteRrcSap::RadioResourceConfigDedicated GetRadioResourceConfigDedicated() const
Getter for m_radioResourceConfigDedicated attribute.
uint32_t Deserialize(Buffer::Iterator bIterator)
void SerializeUlDcchMessage(int msgType) const
Serialize UL DCCH message function.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
void SerializeQoffsetRange(int8_t qOffsetRange) const
Serialize Q offset range function.
void SetMessage(LteRrcSap::RrcConnectionReconfiguration msg)
Receives a RrcConnectionReconfiguration IE and stores the contents into the class attributes...
uint8_t GetRrcTransactionIdentifier() const
Getter for m_rrcTransactionIdentifier.
This class manages the serialization/deserialization of RrcConnectionReestablishment IE...
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
void PreSerialize() const
This function serializes class attributes to m_serializationResult local Buffer.
LteRrcSap::RrcConnectionReconfiguration GetMessage() const
Returns a RrcConnectionReconfiguration IE from the values in the class attributes.
LteRrcSap::ReestabUeIdentity GetUeIdentity() const
Getter for m_ueIdentity.
std::bitset< 32 > m_mTmsi
TMSI.
NonCriticalExtensionConfiguration structure.
Definition: lte-rrc-sap.h:829
RrcConnectionRelease structure.
Definition: lte-rrc-sap.h:883
LteRrcSap::NonCriticalExtensionConfiguration GetNonCriticalExtensionConfig()
Getter for m_nonCriticalExtension.
uint32_t Deserialize(Buffer::Iterator bIterator)
LogicalChannelConfig structure.
Definition: lte-rrc-sap.h:108
Threshold for event evaluation.
Definition: lte-rrc-sap.h:349
This class only serves to discriminate which message type has been received in uplink (ue to eNb) for...
LteRrcSap::RrcConnectionReconfigurationCompleted GetMessage() const
Returns a RrcConnectionReconfigurationCompleted IE from the values in the class attributes.
LteRrcSap::RrcConnectionRelease GetMessage() const
Returns a RrcConnectionRelease IE from the values in the class attributes.
LteRrcSap::RrcConnectionReject m_rrcConnectionReject
RRC connection reject.
a unique identifier for an interface.
Definition: type-id.h:58
Buffer::Iterator DeserializeSrbToAddModList(std::list< LteRrcSap::SrbToAddMod > *srbToAddModList, Buffer::Iterator bIterator)
Deserialize SRB to add mod list function.
LteRrcSap::MobilityControlInfo GetMobilityControlInfo()
Getter for m_mobilityControlInfo.
LteRrcSap::NonCriticalExtensionConfiguration m_nonCriticalExtension
the critical extension
uint32_t Deserialize(Buffer::Iterator bIterator)
std::bitset< 1 > m_spare
spare bit
bool HavePhysicalConfigDedicated() const
Gets m_radioResourceConfigDedicated.havePhysicalConfigDedicated.
LteRrcSap::RadioResourceConfigDedicated GetRadioResourceConfigDedicated() const
Getter for m_radioResourceConfigDedicated.
Buffer::Iterator DeserializeUlDcchMessage(Buffer::Iterator bIterator)
Deserialize UL DCCH message function.
std::list< LteRrcSap::DrbToAddMod > GetDrbToAddModList() const
Gets m_radioResourceConfigDedicated.drbToAddModList.
void Print(std::ostream &os) const
This function prints the object, for debugging purposes.
This class manages the serialization/deserialization of RrcConnectionSetupComplete IE...
LteRrcSap::ReestabUeIdentity m_ueIdentity
UE identity.
RadioResourceConfigCommonSCell.
Definition: lte-rrc-sap.h:804
RadioResourceConfigDedicated structure.
Definition: lte-rrc-sap.h:285
void SerializePhysicalConfigDedicatedSCell(LteRrcSap::PhysicalConfigDedicatedSCell pcdsc) const
Serialize physical config dedicated function.
Buffer::Iterator DeserializeThresholdEutra(LteRrcSap::ThresholdEutra *thresholdEutra, Buffer::Iterator bIterator)
Deserialize threshold eutra function.
void SerializeRachConfigCommon(LteRrcSap::RachConfigCommon rachConfigCommon) const
Serialize RACH config common function.
uint32_t Deserialize(Buffer::Iterator bIterator)