21 #ifndef LTE_RLC_AM_HEADER_H
22 #define LTE_RLC_AM_HEADER_H
24 #include "ns3/header.h"
25 #include "ns3/lte-rlc-sequence-number.h"
51 void SetDataPdu (
void);
52 void SetControlPdu (uint8_t controlPduType);
53 bool IsDataPdu (
void)
const;
54 bool IsControlPdu (
void)
const;
72 void SetFramingInfo (uint8_t framingInfo);
73 uint8_t GetFramingInfo ()
const;
78 } FramingInfoFirstByte_t;
83 } FramingInfoLastByte_t;
85 void PushExtensionBit (uint8_t extensionBit);
86 void PushLengthIndicator (uint16_t lengthIndicator);
88 uint8_t PopExtensionBit (
void);
89 uint16_t PopLengthIndicator (
void);
92 DATA_FIELD_FOLLOWS = 0,
93 E_LI_FIELDS_FOLLOWS = 1
96 void SetResegmentationFlag (uint8_t resegFlag);
97 uint8_t GetResegmentationFlag ()
const;
102 } ResegmentationFlag_t;
104 void SetPollingBit (uint8_t pollingBit);
105 uint8_t GetPollingBit ()
const;
108 STATUS_REPORT_NOT_REQUESTED = 0,
109 STATUS_REPORT_IS_REQUESTED = 1
112 void SetLastSegmentFlag (uint8_t lsf);
113 uint8_t GetLastSegmentFlag ()
const;
116 NO_LAST_PDU_SEGMENT = 0,
120 void SetSegmentOffset (uint16_t segmentOffset);
121 uint16_t GetSegmentOffset ()
const;
122 uint16_t GetLastOffset ()
const;
132 static TypeId GetTypeId (
void);
134 virtual void Print (std::ostream &os)
const;
140 uint16_t m_headerLength;
141 uint8_t m_dataControlBit;
144 uint8_t m_resegmentationFlag;
145 uint8_t m_pollingBit;
146 uint8_t m_framingInfo;
148 uint8_t m_lastSegmentFlag;
149 uint16_t m_segmentOffset;
150 uint16_t m_lastOffset;
152 std::list <uint8_t> m_extensionBits;
153 std::list <uint16_t> m_lengthIndicators;
156 uint8_t m_controlPduType;
162 std::list <uint8_t> m_extensionBits1;
163 std::list <uint8_t> m_extensionBits2;
169 #endif // LTE_RLC_AM_HEADER_H
iterator in a Buffer instance
a unique identifier for an interface.