21 #ifndef SATELLITE_UPLINK_INFO_TAG_H
22 #define SATELLITE_UPLINK_INFO_TAG_H
24 #include <ns3/nstime.h>
68 double additionalInterference,
77 virtual void Serialize(TagBuffer i)
const;
95 virtual void Print(std::ostream& os)
const;
120 void SetSinr(
double sinr,
double additionalInterference);
Tag to store uplink phy info that need to be forwarded to the downlink.
void SetSinr(double sinr, double additionalInterference)
Set uplink SINR.
virtual void Print(std::ostream &os) const
Print time stamp of this instance of SatUplinkInfoTag.
void SetBeamId(uint32_t beamId)
Set the UT beam ID.
virtual void Serialize(TagBuffer i) const
Serializes information to buffer from this instance of SatUplinkInfoTag.
bool IsControl(void) const
Get if packet is a control packet.
static TypeId GetTypeId(void)
Get the type ID.
uint32_t GetBeamId(void) const
Get the UT beam ID.
double GetAdditionalInterference(void) const
Get additional interference to add to compute final SINR.
SatUplinkInfoTag()
Default constructor.
double GetSinr(void) const
Get uplink SINR.
void SetSatelliteReceptionTime(Time satelliteReceptionTime)
Set satellite reception time of packet.
bool IsSinrComputed(void) const
Tell if SINR already computed.
uint32_t GetSatId(void) const
Get the UT sat ID.
virtual uint32_t GetSerializedSize() const
Get serialized size of SatUplinkInfoTag.
void SetSatId(uint32_t satId)
Set the UT sat ID.
virtual void Deserialize(TagBuffer i)
Deserializes information from buffer to this instance of SatUplinkInfoTag.
Time m_satelliteReceptionTime
virtual TypeId GetInstanceTypeId(void) const
Get the type ID of instance.
double m_additionalInterference
Time GetSatelliteReceptionTime(void) const
Get satellite reception time of packet.
void SetIsControl(bool isControl)
Set if packet is a control packet.
SatArqSequenceNumber is handling the sequence numbers for the ARQ process.