13#ifndef _LTE_LTEHARQUNITTX_H_
14#define _LTE_LTEHARQUNITTX_H_
16#include "simu5g/stack/mac/packet/LteMacPdu.h"
17#include "simu5g/common/LteControlInfo.h"
18#include "simu5g/common/LteCommon.h"
19#include "simu5g/stack/mac/LteMacBase.h"
23using namespace omnetpp;
63 TxHarqPduStatus status_ = TXHARQ_PDU_EMPTY;
69 opp_component_ptr<cModule> nodeB_;
71 opp_component_ptr<LteMacBase> macOwner_;
73 opp_component_ptr<LteMacBase> dstMac_;
75 unsigned int maxHarqRtx_;
79 Direction dir_ = UNKNOWN_DIRECTION;
81 static simsignal_t macCellPacketLossSignal_[2];
82 static simsignal_t macPacketLossSignal_[2];
83 static simsignal_t harqErrorRateSignal_[2];
84 static simsignal_t harqErrorRate_1Signal_[2];
85 static simsignal_t harqErrorRate_2Signal_[2];
86 static simsignal_t harqErrorRate_3Signal_[2];
87 static simsignal_t harqErrorRate_4Signal_[2];
88 static simsignal_t harqTxAttemptsSignal_[2];
159 virtual void forceDropUnit();
161 virtual Packet *getPdu();
163 virtual unsigned char getAcid()
173 virtual unsigned char getTransmissions()
178 virtual int64_t getPduLength()
183 virtual simtime_t getTxTime()
188 virtual bool isMarked()
190 return status_ == TXHARQ_PDU_SELECTED;
193 virtual long getMacPduId()
198 virtual TxHarqPduStatus getStatus()
207 virtual void resetUnit();
virtual Packet * extractPdu()
virtual void insertPdu(Packet *pdu)
long pduId_
Omnet ID of the pdu.
Definition LteHarqUnitTx.h:49
virtual bool pduFeedback(HarqAcknowledgment fb)
Codeword cw_
H-ARQ codeword identifier.
Definition LteHarqUnitTx.h:58
simtime_t txTime_
TTI at which the pdu has been transmitted.
Definition LteHarqUnitTx.h:66
int64_t pduLength_
PDU size in bytes.
Definition LteHarqUnitTx.h:52
Packet * pdu_
Carried sub-burst.
Definition LteHarqUnitTx.h:46
unsigned char transmissions_
Number of (re)transmissions for current pdu (N.B.: values are 1,2,3,4)
Definition LteHarqUnitTx.h:61
virtual void markSelected()
LteHarqUnitTx(Binder *binder, unsigned char acid, Codeword cw, LteMacBase *macOwner, LteMacBase *dstMac)
MAC Layer.
Definition LteMacBase.h:80
Definition AlertReceiver.h:24
unsigned short Codeword
Codeword.
Definition LteCommon.h:202