15#include "ns3/event-id.h"
An identifier for simulation events.
LTE RLC Acknowledged Mode (AM), see 3GPP TS 36.322.
ReassemblingState_t m_reassemblingState
reassembling state
void ExpireStatusProhibitTimer()
method called when the T_status_prohibit timer expires
SequenceNumber10 m_vrMr
VR(MR)
Time m_statusProhibitTimerValue
status prohibit timer value
bool IsInsideReceivingWindow(SequenceNumber10 seqNumber)
method called when the T_status_prohibit timer expires
uint16_t m_windowSize
Constants.
Ptr< Packet > m_keepS0
keep S0
void DoNotifyHarqDeliveryFailure() override
Notify HARQ delivery failure.
SequenceNumber10 m_vrH
VR(H)
uint32_t m_txonBufferSize
transmit on buffer size
ReassemblingState_t
SDU Reassembling state.
std::vector< TxPdu > m_txonBuffer
Transmission buffer.
SequenceNumber10 m_vrMs
VR(MS)
uint16_t m_pollByte
poll byte
SequenceNumber10 m_vtS
VT(S)
void DoDispose() override
Destructor implementation.
SequenceNumber10 m_pollSn
POLL_SN.
SequenceNumber10 m_vtA
State variables.
void ExpireReorderingTimer()
This method will schedule a timeout at WaitReplyTimeout interval in the future, unless a timer is alr...
SequenceNumber10 m_vtMs
VT(MS)
EventId m_rbsTimer
RBS timer.
uint32_t m_statusPduBufferSize
status PDU buffer size
Ptr< Packet > m_controlPduBuffer
Control PDU buffer (just one PDU)
bool m_txOpportunityForRetxAlwaysBigEnough
transmit opportunity for retransmit?
bool m_pollRetransmitTimerJustExpired
poll retransmit timer just expired?
void DoTransmitPdcpPdu(Ptr< Packet > p) override
RLC SAP.
Time m_reorderingTimerValue
reordering timer value
uint32_t m_maxTxBufferSize
maximum transmission buffer size
void DoReceivePdu(LteMacSapUser::ReceivePduParameters rxPduParams) override
Receive PDU function.
std::list< Ptr< Packet > > m_sdusBuffer
List of SDUs in a packet (PDU)
EventId m_pollRetransmitTimer
Timers.
uint16_t m_maxRetxThreshold
Configurable parameters.
SequenceNumber10 m_vrX
VR(X)
std::vector< RetxPdu > m_retxBuffer
Buffer for PDUs considered for retransmission.
uint32_t m_byteWithoutPoll
byte without poll
void ExpireRbsTimer()
Expire RBS timer.
uint32_t m_pduWithoutPoll
Counters.
static TypeId GetTypeId()
Get the type ID.
void DoNotifyTxOpportunity(LteMacSapUser::TxOpportunityParameters txOpParams) override
MAC SAP.
Time m_pollRetransmitTimerValue
poll retransmit time value
void DoReportBufferStatus()
Report buffer status.
void ReassembleAndDeliver(Ptr< Packet > packet)
Reassemble and deliver.
std::map< uint16_t, PduBuffer > m_rxonBuffer
Reception buffer.
uint32_t m_txedBufferSize
transmit ed buffer size
uint16_t m_pollPdu
poll PDU
EventId m_reorderingTimer
reordering timer
void ExpirePollRetransmitTimer()
Expire poll retransmitter.
SequenceNumber10 m_vrR
VR(R)
SequenceNumber10 m_expectedSeqNumber
Expected Sequence Number.
uint32_t m_retxBufferSize
retransmit buffer size
EventId m_statusProhibitTimer
status prohibit timer
std::vector< RetxPdu > m_txedBuffer
Buffer for transmitted and retransmitted PDUs that have not been acked but are not considered for ret...
bool m_statusPduRequested
status PDU requested
Time m_rbsTimerValue
RBS timer value.
This abstract base class defines the API to interact with the Radio Link Control (LTE_RLC) in LTE,...
Smart pointer class similar to boost::intrusive_ptr.
Simulation virtual time values and global simulation resolution.
a unique identifier for an interface.
Ptr< T > Create(Ts &&... args)
Create class instances by constructors with varying numbers of arguments and return them by Ptr.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Parameters for LteMacSapUser::ReceivePdu.
Parameters for LteMacSapUser::NotifyTxOpportunity.
SequenceNumber10 m_seqNumber
sequence number
bool m_pduComplete
PDU complete?
std::list< Ptr< Packet > > m_byteSegments
byte segments
uint16_t m_retxCount
retransmit count
Time m_waitingSince
Layer arrival time.
Store an incoming (from layer above us) PDU, waiting to transmit it.
TxPdu(const Ptr< Packet > &pdu, const Time &time)
TxPdu default constructor.
Time m_waitingSince
Layer arrival time.