36 RlcUmRxWindowDesc rxWindowDesc_;
39 std::vector<bool> received_;
41 inet::Packet *pkt =
nullptr;
43 unsigned int currentPduSno = 0;
45 friend std::ostream& operator<<(std::ostream& os,
const Buffered& e) {
46 os <<
"pkt=" << (e.pkt ? e.pkt->getName() :
"null") <<
" size=" << e.size
47 <<
" currentPduSno=" << e.currentPduSno;
51 unsigned int lastPduReassembled_ = 0;
53 unsigned int totalPduRcvdBytes_ = 0;
54 unsigned int totalRcvdBytes_ = 0;
55 Direction dir_ = UNKNOWN_DIRECTION;
59 ~LteRlcUmRxEntity()
override;
61 void enque(cPacket *pkt)
override;
62 bool isEmpty()
const override;
64 void handleMessage(cMessage *msg)
override;
75 virtual void onFirstPduEnqueued(
unsigned int pduSno);
83 virtual bool consumeReassemblyReset(
unsigned int pduSno);
89 virtual void emitPduStats(Direction dir,
double tputSample, simtime_t creationTime);
95 virtual void emitSduStats(Direction dir,
double tputSample, simtime_t creationTime);
97 virtual void moveRxWindow(
int pos);
98 virtual void reassemble(
unsigned int index);
99 virtual void toPdcpLte(inet::Packet *rlcSdu);
100 virtual void clearBufferedSdu();