21 #include "ns3/simulator.h"
24 #include "ns3/lte-rlc-header.h"
25 #include "ns3/lte-rlc-am-header.h"
26 #include "ns3/lte-pdcp-header.h"
42 .AddConstructor<LteTestRrc> ()
165 uint32_t dataLen = p->
GetSize ();
166 uint8_t *buf =
new uint8_t[dataLen];
173 p->CopyData (buf, dataLen);
226 NS_LOG_LOGIC (
"Data(" << dataToSend.length () <<
") = " << dataToSend.data ());
227 p.
pdcpSdu = Create<Packet> ((uint8_t *) dataToSend.data (), dataToSend.length ());
240 .AddConstructor<LteTestPdcp> ()
297 uint32_t dataLen = p->
GetSize ();
298 uint8_t *buf =
new uint8_t[dataLen];
326 NS_LOG_LOGIC (
"Data(" << dataToSend.length () <<
") = " << dataToSend.data ());
327 p.pdcpPdu = Create<Packet> ((uint8_t *) dataToSend.data (), dataToSend.length ());
329 NS_LOG_LOGIC (
"Packet(" << p.pdcpPdu->GetSize () <<
")");
340 .AddConstructor<LteTestMac> ()
556 uint8_t *buf =
new uint8_t[dataLen];
614 : m_s1SapProvider (0)
640 .AddConstructor<EpcTestRrc> ()
uint32_t RemoveHeader(Header &header)
keep track of time values and allow control of global simulation resolution
LteRlcSapUser * m_rlcSapUser
uint32_t GetTxBytes(void)
#define NS_LOG_FUNCTION(parameters)
void SetPduSize(uint32_t pduSize)
std::string m_receivedData
static TypeId GetTypeId(void)
static TypeId GetTypeId(void)
void DoReportBufferStatus(LteMacSapProvider::ReportBufferStatusParameters)
virtual void DoDispose(void)
LteMacSapProvider * m_macSapProvider
#define NS_LOG_COMPONENT_DEFINE(name)
virtual void NotifyTxOpportunity(uint32_t bytes, uint8_t layer, uint8_t harqId)=0
uint32_t GetSize(void) const
virtual void DoDispose(void)
void SetTxOpportunityMode(uint8_t mode)
void SetLteMacLoopback(Ptr< LteTestMac > s)
Set the other side of the MAC Loopback.
virtual void DoReceivePdcpSdu(LtePdcpSapUser::ReceivePdcpSduParameters params)
static EventId Schedule(Time const &time, MEM mem_ptr, OBJ obj)
virtual void TransmitPdcpPdu(TransmitPdcpPduParameters params)=0
uint8_t m_txOpportunityMode
EpcEnbS1SapUser * m_s1SapUser
a polymophic address class
virtual ~LteTestPdcp(void)
EpcEnbS1SapProvider * m_s1SapProvider
void SetLteMacSapUser(LteMacSapUser *s)
Set the MAC SAP user.
LtePdcpSapUser * m_pdcpSapUser
LtePdcpSapProvider * m_pdcpSapProvider
static TypeId GetTypeId(void)
LtePdcpSapUser * GetLtePdcpSapUser(void)
Get the PDCP SAP user.
NS_OBJECT_ENSURE_REGISTERED(AntennaModel)
void SendData(Time at, std::string dataToSend)
void SetLteRlcSapProvider(LteRlcSapProvider *s)
Set the RLC SAP provider.
Ptr< NetDevice > m_device
uint32_t GetTxBytes(void)
void SetS1SapProvider(EpcEnbS1SapProvider *s)
#define NS_LOG_LOGIC(msg)
void SetTxOppTime(Time txOppTime)
EpcEnbS1SapUser * GetS1SapUser()
LteRlcSapProvider * m_rlcSapProvider
Ptr< Packet > Copy(void) const
virtual ~LteTestRrc(void)
LteMacSapProvider * GetLteMacSapProvider(void)
Get the MAC SAP provider.
virtual void DoDispose(void)
std::string m_receivedData
void SetArrivalTime(Time arrivalTime)
static EventId ScheduleNow(MEM mem_ptr, OBJ obj)
std::string m_receivedData
std::string GetDataReceived(void)
virtual void TransmitPdcpSdu(TransmitPdcpSduParameters params)=0
void SetTxOppSize(uint32_t txOppSize)
virtual void DoDispose(void)
void DoPathSwitchRequestAcknowledge(EpcEnbS1SapUser::PathSwitchRequestAcknowledgeParameters params)
#define NS_ASSERT_MSG(condition, message)
void SendTxOpportunity(Time, uint32_t)
std::string GetDataReceived(void)
void SetDevice(Ptr< NetDevice > device)
void SendData(Time time, std::string dataToSend)
virtual void ReceivePdu(Ptr< Packet > p)=0
std::string GetDataReceived(void)
uint32_t GetRxBytes(void)
uint32_t CopyData(uint8_t *buffer, uint32_t size) const
uint32_t GetRxBytes(void)
void DoTransmitPdu(LteMacSapProvider::TransmitPduParameters)
a base class which provides memory management and object aggregation
void DoDataRadioBearerSetupRequest(EpcEnbS1SapUser::DataRadioBearerSetupRequestParameters params)
virtual ~LteTestMac(void)
void SetPdcpHeaderPresent(bool present)
Ptr< LteTestMac > m_macLoopback
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
LteMacSapUser * m_macSapUser
virtual void DoReceivePdcpPdu(Ptr< Packet > p)
void SetLtePdcpSapProvider(LtePdcpSapProvider *s)
Set the PDCP SAP provider.
static TypeId GetTypeId(void)
void SetRlcHeaderType(uint8_t rlcHeaderType)
bool Receive(Ptr< NetDevice > nd, Ptr< const Packet > p, uint16_t protocol, const Address &addr)
LteRlcSapUser * GetLteRlcSapUser(void)
Get the RLC SAP user.