21 #ifndef SATELLITE_INTERFERENCE_ELIMINATION_H
22 #define SATELLITE_INTERFERENCE_ELIMINATION_H
24 #include <ns3/object.h>
29 class SatSignalParameters;
66 Ptr<SatSignalParameters> processedPacket,
68 bool isRegenerative) = 0;
80 Ptr<SatSignalParameters> processedPacket,
89 virtual double GetResidualPower(Ptr<SatSignalParameters> processedPacket,
double EsNo) = 0;
Abstract class defining interface for interference elimination calculation objects.
virtual ~SatInterferenceElimination()
Destructor for Satellite interference elimination base class.
virtual void EliminateInterferences(Ptr< SatSignalParameters > packetInterferedWith, Ptr< SatSignalParameters > processedPacket, double EsNo, bool isRegenerative, double startTime, double endTime)=0
Calculate residual power of interference for the given packets.
static TypeId GetTypeId(void)
Derived from Object.
virtual void EliminateInterferences(Ptr< SatSignalParameters > packetInterferedWith, Ptr< SatSignalParameters > processedPacket, double EsNo, bool isRegenerative)=0
Calculate residual power of interference for the given packets.
TypeId GetInstanceTypeId(void) const
Derived from Object.
SatInterferenceElimination()
Constructor for Satellite interference elimination base class.
virtual double GetResidualPower(Ptr< SatSignalParameters > processedPacket, double EsNo)=0
Calculate the residual power of interference for a given packet.
SatArqSequenceNumber is handling the sequence numbers for the ARQ process.