34 #ifndef EMANEMODELSIEEE802ABGMODETIMINGPARAMTERS_HEADER_ 35 #define EMANEMODELSIEEE802ABGMODETIMINGPARAMTERS_HEADER_ 48 namespace IEEE80211ABG
69 std::uint16_t u16RtsBitLength_;
70 std::uint16_t u16CtsBitLength_;
71 std::uint16_t u16AckBitLength_;
82 preambleMicroseconds_{}
99 Microseconds getPropagationMicroseconds(std::uint32_t)
const;
102 Microseconds getBroadcastMessageDurationMicroseconds(
size_t)
const;
104 Microseconds getUnicastMessageDurationMicroseconds(
size_t)
const;
134 #endif //EMANEMODELSIEEE802ABGMODETIMINGPARAMTERS_HEADER_
class used to define the mac layer configuration items
class used to define timing parameters
~ModeTimingParameters()
destructor
int getContentionWindow(std::uint8_t, std::uint8_t) const
get the contention window
bool packetTimedOut(const Microseconds &txOpMicroseconds, const TimePoint &) const
check if a packet has timed out
ModeTimingParameters(const MACConfig &macConfig)
constructor
Microseconds getOverheadMicroseconds(std::uint8_t u8Category) const
get the overhead time
std::chrono::microseconds Microseconds
TimePoint getSotTime() const
Microseconds getSlotSizeMicroseconds() const
get the slot duration for a given mode and distance
Clock::time_point TimePoint
Microseconds getDeferIntervalMicroseconds(std::uint8_t) const
get the defer time
Microseconds getMessageDurationMicroseconds(std::uint8_t, size_t) const
get the message duration
const std::uint8_t MODULATION_TYPE_INDEX_MAX