ns-3
ns3::LteRlcAm Class Reference

#include <lte-rlc-am.h>

Inheritance diagram for ns3::LteRlcAm:
Collaboration diagram for ns3::LteRlcAm:

List of all members.

Classes

struct  PduBuffer
struct  RetxBuffer

Public Member Functions

virtual void DoTransmitPdcpPdu (Ptr< Packet > p)
virtual void DoNotifyTxOpportunity (uint32_t bytes, uint8_t layer)
virtual void DoNotifyHarqDeliveryFailure ()
virtual void DoReceivePdu (Ptr< Packet > p)
void Start ()
- Public Member Functions inherited from ns3::LteRlc
void SetRnti (uint16_t rnti)
void SetLcId (uint8_t lcId)
void SetLteRlcSapUser (LteRlcSapUser *s)
LteRlcSapProviderGetLteRlcSapProvider ()
void SetLteMacSapProvider (LteMacSapProvider *s)
LteMacSapUserGetLteMacSapUser ()
- Public Member Functions inherited from ns3::Object
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Dispose (void)
void AggregateObject (Ptr< Object > other)
AggregateIterator GetAggregateIterator (void) const
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount (const SimpleRefCount &o)
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
uint32_t GetReferenceCount (void) const
- Public Member Functions inherited from ns3::ObjectBase
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
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)

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::LteRlcAm.

Additional Inherited Members

- Protected Attributes inherited from ns3::LteRlc
LteRlcSapUserm_rlcSapUser
LteRlcSapProviderm_rlcSapProvider
LteMacSapUserm_macSapUser
LteMacSapProviderm_macSapProvider
uint16_t m_rnti
uint8_t m_lcid
TracedCallback< uint16_t,
uint8_t, uint32_t > 
m_txPdu
TracedCallback< uint16_t,
uint8_t, uint32_t, uint64_t > 
m_rxPdu

Detailed Description

LTE RLC Acknowledged Mode (AM), see 3GPP TS 36.322


Member Function Documentation

TypeId ns3::LteRlcAm::GetTypeId ( void  )
static

This method returns the TypeId associated to ns3::LteRlcAm.

This object is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3::LteEnbNetDevice/LteEnbRrc/UeMap/[i]/RadioBearerMap/[i]/LteRlc/$ns3::LteRlcAm
  • /NodeList/[i]/DeviceList/[i]/$ns3::LteNetDevice/$ns3::LteEnbNetDevice/LteEnbRrc/UeMap/[i]/RadioBearerMap/[i]/LteRlc/$ns3::LteRlcAm
  • /NodeList/[i]/DeviceList/[i]/$ns3::LteNetDevice/$ns3::LteUeNetDevice/LteUeRrc/RadioBearerMap/[i]/LteRlc/$ns3::LteRlcAm
  • /NodeList/[i]/DeviceList/[i]/$ns3::LteUeNetDevice/LteUeRrc/RadioBearerMap/[i]/LteRlc/$ns3::LteRlcAm

No Attributes defined for this type.
No TraceSources defined for this type.
TraceSources defined in parent class ns3::LteRlc:

  • TxPDU: PDU transmission notified to the MAC.
  • RxPDU: PDU received.

Reimplemented from ns3::LteRlc.

References ns3::TypeId::SetParent().

void ns3::LteRlcAm::Start ( void  )

This method calls the virtual DoStart method on all the objects aggregated to this object. DoStart will be called only once over the lifetime of an object, just like DoDispose is called only once.

See also:
DoStart

Note: the code here is a bit tricky because we need to protect ourselves from modifications in the aggregate array while DoStart is called. The user's implementation of the DoStart method could call GetObject (which could reorder the array) and it could call AggregateObject which would add an object at the end of the array. To be safe, we restart iteration over the array whenever we call some user code, just in case.

Reimplemented from ns3::Object.

References ns3::LteMacSapProvider::ReportBufferStatusParameters::lcid, NS_LOG_FUNCTION, ns3::LteMacSapProvider::ReportBufferStatus(), ns3::LteMacSapProvider::ReportBufferStatusParameters::retxQueueHolDelay, ns3::LteMacSapProvider::ReportBufferStatusParameters::retxQueueSize, ns3::LteMacSapProvider::ReportBufferStatusParameters::rnti, ns3::LteMacSapProvider::ReportBufferStatusParameters::statusPduSize, ns3::LteMacSapProvider::ReportBufferStatusParameters::txQueueHolDelay, and ns3::LteMacSapProvider::ReportBufferStatusParameters::txQueueSize.


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