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

#include <lte-rlc.h>

+ Inheritance diagram for ns3::LteRlc:
+ Collaboration diagram for ns3::LteRlc:

Public Member Functions

 LteRlc ()
virtual ~LteRlc ()
LteMacSapUserGetLteMacSapUser ()
LteRlcSapProviderGetLteRlcSapProvider ()
void SetLcId (uint8_t lcId)
void SetLteMacSapProvider (LteMacSapProvider *s)
void SetLteRlcSapUser (LteRlcSapUser *s)
void SetRnti (uint16_t rnti)
- Public Member Functions inherited from ns3::Object
 Object ()
virtual ~Object ()
void AggregateObject (Ptr< Object > other)
void Dispose (void)
AggregateIterator GetAggregateIterator (void) const
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
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)

Static Public Member Functions

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

Protected Member Functions

virtual void DoNotifyHarqDeliveryFailure ()=0
virtual void DoNotifyTxOpportunity (uint32_t bytes, uint8_t layer)=0
virtual void DoReceivePdu (Ptr< Packet > p)=0
virtual void DoTransmitPdcpPdu (Ptr< Packet > p)=0
- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
virtual void DoDispose (void)
virtual void DoStart (void)
virtual void NotifyNewAggregate (void)

Protected Attributes

uint8_t m_lcid
LteMacSapProviderm_macSapProvider
LteMacSapUserm_macSapUser
LteRlcSapProviderm_rlcSapProvider
LteRlcSapUserm_rlcSapUser
uint16_t m_rnti
TracedCallback< uint16_t,
uint8_t, uint32_t, uint64_t > 
m_rxPdu
TracedCallback< uint16_t,
uint8_t, uint32_t > 
m_txPdu

Friends

class LteRlcSpecificLteMacSapUser
class LteRlcSpecificLteRlcSapProvider< LteRlc >

Detailed Description

This abstract base class defines the API to interact with the Radio Link Control (LTE_RLC) in LTE, see 3GPP TS 36.322

Definition at line 50 of file lte-rlc.h.

Constructor & Destructor Documentation

ns3::LteRlc::LteRlc ( )
ns3::LteRlc::~LteRlc ( )
virtual

Definition at line 125 of file lte-rlc.cc.

References m_macSapUser, m_rlcSapProvider, and NS_LOG_FUNCTION.

Member Function Documentation

virtual void ns3::LteRlc::DoNotifyHarqDeliveryFailure ( )
protectedpure virtual

Implemented in ns3::LteRlcSm, ns3::LteRlcAm, and ns3::LteRlcUm.

Referenced by ns3::LteRlcSpecificLteMacSapUser::NotifyHarqDeliveryFailure().

+ Here is the caller graph for this function:

virtual void ns3::LteRlc::DoNotifyTxOpportunity ( uint32_t  bytes,
uint8_t  layer 
)
protectedpure virtual

Implemented in ns3::LteRlcSm, ns3::LteRlcAm, and ns3::LteRlcUm.

Referenced by ns3::LteRlcSpecificLteMacSapUser::NotifyTxOpportunity().

+ Here is the caller graph for this function:

virtual void ns3::LteRlc::DoReceivePdu ( Ptr< Packet p)
protectedpure virtual

Implemented in ns3::LteRlcSm, ns3::LteRlcAm, and ns3::LteRlcUm.

Referenced by ns3::LteRlcSpecificLteMacSapUser::ReceivePdu().

+ Here is the caller graph for this function:

virtual void ns3::LteRlc::DoTransmitPdcpPdu ( Ptr< Packet p)
protectedpure virtual

Implemented in ns3::LteRlcSm, ns3::LteRlcAm, and ns3::LteRlcUm.

LteMacSapUser * ns3::LteRlc::GetLteMacSapUser ( )
Parameters
sthe MAC SAP User interface offered to the MAC by this LTE_RLC

Definition at line 154 of file lte-rlc.cc.

References m_macSapUser, and NS_LOG_FUNCTION.

Referenced by ns3::LteSimpleHelper::InstallSingleEnbDevice(), ns3::LteSimpleHelper::InstallSingleUeDevice(), ns3::LteUeRrc::SetupRadioBearer(), and ns3::LteEnbRrc::SetupRadioBearer().

+ Here is the caller graph for this function:

LteRlcSapProvider * ns3::LteRlc::GetLteRlcSapProvider ( )
Parameters
sthe RLC SAP Provider interface offered to the PDCP by this LTE_RLC

Definition at line 140 of file lte-rlc.cc.

References m_rlcSapProvider, and NS_LOG_FUNCTION.

Referenced by ns3::LteSimpleHelper::InstallSingleEnbDevice(), ns3::LteSimpleHelper::InstallSingleUeDevice(), ns3::LteUeRrc::SetupRadioBearer(), and ns3::LteEnbRrc::SetupRadioBearer().

+ Here is the caller graph for this function:

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

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

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
  • /NodeList/[i]/DeviceList/[i]/$ns3::LteNetDevice/$ns3::LteEnbNetDevice/LteEnbRrc/UeMap/[i]/RadioBearerMap/[i]/LteRlc
  • /NodeList/[i]/DeviceList/[i]/$ns3::LteNetDevice/$ns3::LteUeNetDevice/LteUeRrc/RadioBearerMap/[i]/LteRlc
  • /NodeList/[i]/DeviceList/[i]/$ns3::LteUeNetDevice/LteUeRrc/RadioBearerMap/[i]/LteRlc

No Attributes defined for this type.
TraceSources defined for this type:

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

Reimplemented from ns3::Object.

Reimplemented in ns3::LteRlcSm, ns3::LteRlcAm, and ns3::LteRlcUm.

Definition at line 97 of file lte-rlc.cc.

References m_rxPdu, m_txPdu, ns3::MakeTraceSourceAccessor(), and ns3::TypeId::SetParent().

+ Here is the call graph for this function:

void ns3::LteRlc::SetLcId ( uint8_t  lcId)
Parameters
lcId

Definition at line 119 of file lte-rlc.cc.

References m_lcid, and NS_LOG_FUNCTION.

Referenced by ns3::LteSimpleHelper::InstallSingleEnbDevice(), ns3::LteSimpleHelper::InstallSingleUeDevice(), ns3::LteUeRrc::SetupRadioBearer(), and ns3::LteEnbRrc::SetupRadioBearer().

+ Here is the caller graph for this function:

void ns3::LteRlc::SetLteMacSapProvider ( LteMacSapProvider s)
Parameters
sthe MAC SAP Provider to be used by this LTE_RLC

Definition at line 147 of file lte-rlc.cc.

References m_macSapProvider, and NS_LOG_FUNCTION.

Referenced by ns3::LteSimpleHelper::InstallSingleEnbDevice(), ns3::LteSimpleHelper::InstallSingleUeDevice(), ns3::LteUeRrc::SetupRadioBearer(), and ns3::LteEnbRrc::SetupRadioBearer().

+ Here is the caller graph for this function:

void ns3::LteRlc::SetLteRlcSapUser ( LteRlcSapUser s)
Parameters
sthe RLC SAP user to be used by this LTE_RLC

Definition at line 133 of file lte-rlc.cc.

References m_rlcSapUser, and NS_LOG_FUNCTION.

Referenced by ns3::LteSimpleHelper::InstallSingleEnbDevice(), ns3::LteSimpleHelper::InstallSingleUeDevice(), ns3::LteUeRrc::SetupRadioBearer(), and ns3::LteEnbRrc::SetupRadioBearer().

+ Here is the caller graph for this function:

void ns3::LteRlc::SetRnti ( uint16_t  rnti)

Friends And Related Function Documentation

friend class LteRlcSpecificLteMacSapUser
friend

Definition at line 52 of file lte-rlc.h.

Referenced by LteRlc().

friend class LteRlcSpecificLteRlcSapProvider< LteRlc >
friend

Definition at line 53 of file lte-rlc.h.

Member Data Documentation

LteMacSapUser* ns3::LteRlc::m_macSapUser
protected

Definition at line 118 of file lte-rlc.h.

Referenced by GetLteMacSapUser(), LteRlc(), and ~LteRlc().

LteRlcSapProvider* ns3::LteRlc::m_rlcSapProvider
protected

Definition at line 111 of file lte-rlc.h.

Referenced by GetLteRlcSapProvider(), LteRlc(), and ~LteRlc().

LteRlcSapUser* ns3::LteRlc::m_rlcSapUser
protected
TracedCallback<uint16_t, uint8_t, uint32_t, uint64_t> ns3::LteRlc::m_rxPdu
protected

Used to inform of a PDU reception from the MAC SAP user

Definition at line 131 of file lte-rlc.h.

Referenced by ns3::LteRlcUm::DoReceivePdu(), ns3::LteRlcAm::DoReceivePdu(), ns3::LteRlcSm::DoReceivePdu(), and GetTypeId().

TracedCallback<uint16_t, uint8_t, uint32_t> ns3::LteRlc::m_txPdu
protected

Used to inform of a PDU delivery to the MAC SAP provider

Definition at line 127 of file lte-rlc.h.

Referenced by ns3::LteRlcUm::DoNotifyTxOpportunity(), ns3::LteRlcAm::DoNotifyTxOpportunity(), ns3::LteRlcSm::DoNotifyTxOpportunity(), and GetTypeId().


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