13#ifndef _NRPDCPRXENTITY_H_
14#define _NRPDCPRXENTITY_H_
16#include "simu5g/stack/pdcp/LtePdcpRxEntity.h"
17#include "simu5g/stack/dcX2Forwarder/DcX2Forwarder.h"
18#include "simu5g/common/timer/TTimer.h"
26struct PdcpRxWindowDesc
31 unsigned int windowSize_ = 16;
35 unsigned int rxDeliv_;
37 unsigned int rxReord_;
39 void clear(
unsigned int i = 0)
53inline std::ostream& operator<<(std::ostream& os,
const PdcpRxWindowDesc& w)
55 os <<
"windowSize=" << w.windowSize_ <<
" rxNext=" << w.rxNext_
56 <<
" rxDeliv=" << w.rxDeliv_ <<
" rxReord=" << w.rxReord_;
76 bool reorderingEnabled_ =
false;
80 bool outOfOrderDelivery_;
86 std::vector<bool> received_;
89 PdcpRxWindowDesc rxWindowDesc_;
98 void handlePdcpSdu(Packet *pdcpSdu,
unsigned int sequenceNumber)
override;
103 void initialize(
int stage)
override;
105 void handleMessage(cMessage *msg)
override;
107 bool isEmpty()
const override {
return sduBuffer_.size() == 0; }
Entity for PDCP Layer.
Definition LtePdcpRxEntity.h:35
Entity for New Radio PDCP Layer.
Definition NrPdcpRxEntity.h:72
Generic timer interface.
Definition TTimer.h:26
Definition AlertReceiver.h:24