wifi: fix other doxygen warnings in src/wifi/model

3 warnings remaining with templated WifiTxTimer::FeedTraceSource
This commit is contained in:
Rediet
2021-05-25 17:11:06 +02:00
parent 337851d75e
commit 2cd288b24d
40 changed files with 179 additions and 78 deletions

View File

@@ -307,7 +307,7 @@ private:
Ptr<UniformRandomVariable> m_beaconJitter; //!< UniformRandomVariable used to randomize the time of the first beacon
bool m_enableBeaconJitter; //!< Flag whether the first beacon should be generated at random time
std::map<uint16_t, Mac48Address> m_staList; //!< Map of all stations currently associated to the AP with their association ID
//!< Maps MAC addresses of associated stations to their association ID
/// Maps MAC addresses of associated stations to their association ID
std::unordered_map<Mac48Address, uint16_t, WifiAddressHash> m_addressIdMap;
uint16_t m_numNonErpStations; //!< Number of non-ERP stations currently associated to the AP
uint16_t m_numNonHtStations; //!< Number of non-HT stations currently associated to the AP
@@ -315,9 +315,13 @@ private:
bool m_shortPreambleEnabled; //!< Flag whether short preamble is enabled in the BSS
bool m_enableNonErpProtection; //!< Flag whether protection mechanism is used or not when non-ERP STAs are present within the BSS
Time m_bsrLifetime; //!< Lifetime of Buffer Status Reports
//!< store value and timestamp for each Buffer Status Report
typedef struct { uint8_t value; Time timestamp; } bsrType;
//!< Per (MAC address, TID) buffer status reports
/// store value and timestamp for each Buffer Status Report
typedef struct
{
uint8_t value; //!< value of BSR
Time timestamp; //!< timestamp of BSR
} bsrType;
/// Per (MAC address, TID) buffer status reports
std::unordered_map<WifiAddressTidPair, bsrType, WifiAddressTidHash> m_bufferStatus;
};

View File

@@ -419,6 +419,7 @@ public:
/**
* \param recipient the recipient
* \param tid the TID
* \return the BlockAckRequest header for the established BA agreement
*
* Get the BlockAckRequest header for the established BA agreement
* (<i>recipient</i>,<i>tid</i>).

View File

@@ -47,9 +47,23 @@ struct BlockAckType
enum Variant m_variant; //!< Block Ack variant
std::vector<uint8_t> m_bitmapLen; //!< Length (bytes) of included bitmaps
/// Constructors
/**
* Default constructor for BlockAckType.
*/
BlockAckType ();
/**
* Constructor for BlockAckType with given variant.
*
* \param v the Block Ack variant
*/
BlockAckType (Variant v);
/**
* Constructor for BlockAckType with given variant
* and bitmap length.
*
* \param v the Block Ack variant
* \param l the length (bytes) of included bitmaps
*/
BlockAckType (Variant v, std::vector<uint8_t> l);
};
@@ -74,9 +88,23 @@ struct BlockAckReqType
uint8_t m_nSeqControls; //!< Number of included Starting Sequence Control fields.
//!< This member is added for future support of Multi-TID BARs
/// Constructors
/**
* Default constructor for BlockAckReqType.
*/
BlockAckReqType ();
/**
* Constructor for BlockAckReqType with given variant.
*
* \param v the Block Ack Request variant
*/
BlockAckReqType (Variant v);
/**
* Constructor for BlockAckReqType with given variant
* and number of SSC fields.
*
* \param v the Block Ack Request variant
* \param nSeqControls the number of included Starting Sequence Control fields
*/
BlockAckReqType (Variant v, uint8_t nSeqControls);
};

View File

@@ -453,6 +453,8 @@ public:
/**
* Reset the bitmap to 0. For Multi-STA Block Acks, reset the bitmap included
* in the Per AID TID Info subfield identified by <i>index</i>.
*
* \param index the index of the Per AID TID Info subfield (Multi-STA Block Ack only)
*/
void ResetBitmap (std::size_t index = 0);
@@ -588,6 +590,9 @@ public:
/**
* Copy assignment operator.
*
* \param userInfo the User Info field to copy
* \return a reference to the copied object
*
* Checks that the given User Info fields is included in the same type
* of Trigger Frame.
*/
@@ -901,6 +906,9 @@ public:
/**
* Copy assignment operator.
*
* \param trigger the Trigger frame to copy
* \return a reference to the copied object
*
* Ensure that the type of this Trigger Frame is set to the type of the given
* Trigger Frame before copying the User Info fields.
*/

View File

@@ -33,7 +33,13 @@ class ApWifiMac;
class StaWifiMac;
class CtrlTriggerHeader;
/**
* Map of PSDUs indexed by STA-ID
*/
typedef std::unordered_map <uint16_t /* staId */, Ptr<WifiPsdu> /* PSDU */> WifiPsduMap;
/**
* Map of const PSDUs indexed by STA-ID
*/
typedef std::unordered_map <uint16_t /* staId */, Ptr<const WifiPsdu> /* PSDU */> WifiConstPsduMap;
/**
@@ -71,6 +77,7 @@ public:
*
* \param to the MAC address
* \param psduMap the PSDU map
* \return the PSDU, if any, or a null pointer, otherwise
*/
static Ptr<WifiPsdu> GetPsduTo (Mac48Address to, const WifiPsduMap& psduMap);

View File

@@ -153,7 +153,7 @@ public:
/// map (bandwidth, number of tones) pairs to the group of subcarrier ranges
typedef std::map<BwTonesPair, std::vector<SubcarrierGroup> > SubcarrierGroups;
//!< Subcarrier groups for all RUs (with indices being applicable to primary 80 MHz channel)
/// Subcarrier groups for all RUs (with indices being applicable to primary 80 MHz channel)
static const SubcarrierGroups m_heRuSubcarrierGroups;
};

View File

@@ -66,6 +66,7 @@ public:
/**
* Return true if the SNR value for the given STA-ID is present
*
* \param staId the STA-ID
* \return true if the SNR value for the given STA-ID is present
*/
bool IsPresent (uint16_t staId) const;

View File

@@ -236,6 +236,7 @@ protected:
*
* \param txDuration the duration of the PSDU transmission
* \param txParams the TX parameters used to send the PSDU
* \return the value for the Duration/ID field
*/
virtual Time GetPsduDurationId (Time txDuration, const WifiTxParameters& txParams) const;
@@ -286,13 +287,15 @@ protected:
* \param initialFrame true if the frame being transmitted is the initial frame
* of the TXOP. This is used to determine whether the TXOP
* limit can be exceeded
* \return true if frame is transmitted, false otherwise
*/
virtual bool SendMpduFromBaManager (Ptr<QosTxop> edca, Time availableTime, bool initialFrame);
/**
* TODO Transmit a data frame, if data is available and its trasmission plus the
* response fits within the given available time, if the latter is not
* Time::Min() and this is not the initial frame of a TXOP.
* Given a non-broadcast QoS data frame, prepare the PSDU to transmit by attempting
* A-MSDU and A-MPDU aggregation (if enabled), while making sure that the frame
* exchange (possibly including protection and acknowledgment) is completed within
* the given available time.
*
* \param peekedItem the given non-broadcast QoS data frame
* \param availableTime the amount of time allowed for the frame exchange. Equals
@@ -300,6 +303,7 @@ protected:
* \param initialFrame true if the frame being transmitted is the initial frame
* of the TXOP. This is used to determine whether the TXOP
* limit can be exceeded
* \return true if frame is transmitted, false otherwise
*/
virtual bool SendDataFrame (Ptr<const WifiMacQueueItem> peekedItem,
Time availableTime, bool initialFrame);
@@ -312,6 +316,8 @@ protected:
* - MPDU aggregation is enabled and there is more than one packet in the queue OR
* - the station is a VHT station
*
* \param recipient address of the recipient.
* \param tid traffic ID.
* \return true if a Block Ack agreement needs to be established, false otherwise.
*/
virtual bool NeedSetupBlockAck (Mac48Address recipient, uint8_t tid);

View File

@@ -508,7 +508,7 @@ protected:
*
* \param symbolDuration the symbol duration (in us) excluding guard interval
* \param guardInterval the considered guard interval duration in nanoseconds
* \param usableSubarriers the number of usable subcarriers for data
* \param usableSubCarriers the number of usable subcarriers for data
* \param numberOfBitsPerSubcarrier the number of data bits per subcarrier
* \param codingRate the coding rate
* \param nss the considered number of streams

View File

@@ -101,7 +101,7 @@ public:
* Update the received power (W) for all bands, i.e. add up the received power
* to the current received power, for each band.
*
* \param the received power (W) for all bands.
* \param rxPower the received power (W) for all bands.
*/
void UpdateRxPowerW (RxPowerWattPerChannelBand rxPower);

View File

@@ -150,6 +150,7 @@ public:
*
* \param mpduSize size of the MPDU in bytes.
* \param isSingle true if S-MPDU.
* \return the A-MPDU subframe header
*/
static AmpduSubframeHeader GetAmpduSubframeHeader (uint16_t mpduSize, bool isSingle);

View File

@@ -56,9 +56,14 @@ const PhyEntity::ModulationLookupTable DsssPhy::m_dsssModulationLookupTable {
};
/* *NS_CHECK_STYLE_ON* */
// DSSS rates in bits per second
/// DSSS rates in bits per second
static const std::array<uint64_t, 4> s_dsssRatesBpsList = {1000000, 2000000, 5500000, 11000000};
/**
* Get the array of possible DSSS rates.
*
* \return the DSSS rates in bits per second
*/
const std::array<uint64_t, 4>& GetDsssRatesBpsList (void)
{
return s_dsssRatesBpsList;

View File

@@ -49,13 +49,18 @@ const PhyEntity::ModulationLookupTable ErpOfdmPhy::m_erpOfdmModulationLookupTabl
{ "ErpOfdmRate54Mbps", { WIFI_CODE_RATE_3_4, 64 } }
};
// ERP OFDM rates in bits per second
/// ERP OFDM rates in bits per second
static const std::array<uint64_t, 8> s_erpOfdmRatesBpsList =
{ 6000000, 9000000, 12000000, 18000000,
24000000, 36000000, 48000000, 54000000};
/* *NS_CHECK_STYLE_ON* */
/**
* Get the array of possible ERP OFDM rates.
*
* \return the ERP OFDM rates in bits per second
*/
const std::array<uint64_t, 8>& GetErpOfdmRatesBpsList (void)
{
return s_erpOfdmRatesBpsList;

View File

@@ -72,7 +72,7 @@ const PhyEntity::ModulationLookupTable OfdmPhy::m_ofdmModulationLookupTable {
{ "OfdmRate13_5MbpsBW5MHz", { WIFI_CODE_RATE_3_4, 64 } }
};
// OFDM rates in bits per second
/// OFDM rates in bits per second for each bandwidth (MHz)
const std::map<uint16_t, std::array<uint64_t, 8> > s_ofdmRatesBpsList =
{{ 20, // MHz
{ 6000000, 9000000, 12000000, 18000000,
@@ -86,6 +86,11 @@ const std::map<uint16_t, std::array<uint64_t, 8> > s_ofdmRatesBpsList =
/* *NS_CHECK_STYLE_ON* */
/**
* Get the array of possible OFDM rates for each bandwidth (MHz).
*
* \return the OFDM rates in bits per second
*/
const std::map<uint16_t, std::array<uint64_t, 8> >& GetOfdmRatesBpsList (void)
{
return s_ofdmRatesBpsList;

View File

@@ -411,7 +411,7 @@ protected:
*
* \param symbolDuration the symbol duration (in us) excluding guard interval
* \param guardInterval the considered guard interval duration in nanoseconds
* \param usableSubarriers the number of usable subcarriers for data
* \param usableSubCarriers the number of usable subcarriers for data
* \param numberOfBitsPerSubcarrier the number of data bits per subcarrier
* \param codingRate the coding rate
*

View File

@@ -728,14 +728,14 @@ protected:
* Create an event using WifiPhy's InterferenceHelper class.
* Wrapper used by child classes.
*
* \copydoc InterferenceHelper::Add(Ptr<const WifiPpdu>, WifiTxVector, Time, RxPowerWattPerChannelBand, bool)
* \copydoc InterferenceHelper::Add
*/
Ptr<Event> CreateInterferenceEvent (Ptr<const WifiPpdu> ppdu, const WifiTxVector& txVector, Time duration, RxPowerWattPerChannelBand rxPower, bool isStartOfdmaRxing = false);
/**
* Update an event in WifiPhy's InterferenceHelper class.
* Wrapper used by child classes.
*
* \copydoc InterferenceHelper::UpdateEvent(Ptr<Event>, RxPowerWattPerChannelBand)
* \copydoc InterferenceHelper::UpdateEvent
*/
void UpdateInterferenceEvent (Ptr<Event> event, RxPowerWattPerChannelBand rxPower);
/**

View File

@@ -163,6 +163,7 @@ public:
/**
* \param recipient Address of recipient.
* \param tid traffic ID.
* \return the BlockAckRequest to send
*
* Prepare a BlockAckRequest to be sent to <i>recipient</i> for Traffic ID
* <i>tid</i>. The header for the BlockAckRequest is requested to the QosTxop

View File

@@ -183,12 +183,6 @@ QosUtilsIsOldPacket (uint16_t startingSeq, uint16_t seqNumber)
return (distance >= 2048);
}
/**
* \brief Extraction operator for TypeId
* \param [in] packet is the packet
* \param [in] hdr is Wifi MAC header
* \returns the TypeId of the MAC header
*/
uint8_t
GetTid (Ptr<const Packet> packet, const WifiMacHeader hdr)
{

View File

@@ -38,6 +38,12 @@ typedef std::pair<Mac48Address, uint8_t> WifiAddressTidPair; //!< (MAC address,
*/
struct WifiAddressTidHash
{
/**
* Functional operator for (MAC address, TID) hash computation.
*
* \param addressTidPair the (MAC address, TID) pair
* \return the hash
*/
std::size_t operator() (const WifiAddressTidPair& addressTidPair) const;
};
@@ -46,6 +52,12 @@ struct WifiAddressTidHash
*/
struct WifiAddressHash
{
/**
* Functional operator for MAC address hash computation.
*
* \param address the MAC address
* \return the hash
*/
std::size_t operator() (const Mac48Address& address) const;
};
@@ -235,12 +247,11 @@ bool QosUtilsIsOldPacket (uint16_t startingSeq, uint16_t seqNumber);
/**
* \ingroup wifi
* Next function is useful to get traffic id of different packet types.
* This function is useful to get traffic id of different packet types.
*
* \param packet packet to check
* \param hdr 802.11 header for packet to check
*
* Returns TID of different packet types
* \return the TID of different packet types
*/
uint8_t GetTid (Ptr<const Packet> packet, const WifiMacHeader hdr);

View File

@@ -77,6 +77,8 @@ private:
/**
* Reset the station, invoked if the maximum amount of retries has failed.
*
* \param station the station for which statistics should be reset
*/
void Reset (WifiRemoteStation *station) const;

View File

@@ -471,17 +471,6 @@ private:
*/
void UpdateRate (MinstrelHtWifiRemoteStation *station);
/**
* For managing rates from different groups, a global index for
* all rates in all groups is used.
* The group order is fixed by BW -> SGI -> streams.
* Following functions convert from groupId and rateId to
* global index and vice versa.
*
* \param index the index
* \returns the rate ID
*/
/**
* Return the rateId inside a group, from the global index.
*
@@ -501,6 +490,10 @@ private:
/**
* Returns the global index corresponding to the groupId and rateId.
*
* For managing rates from different groups, a global index for
* all rates in all groups is used.
* The group order is fixed by BW -> SGI -> streams.
*
* \param groupId the group ID
* \param rateId the rate ID
* \returns the index

View File

@@ -102,6 +102,7 @@ private:
*
* \param st Remote STA.
* \param mode The WifiMode.
* \return the guard interval in nanoseconds
*/
uint16_t GetModeGuardInterval (WifiRemoteStation *st, WifiMode mode) const;
@@ -113,9 +114,9 @@ private:
*/
double SampleBetaVariable (uint64_t alpha, uint64_t beta) const;
Ptr<GammaRandomVariable> m_gammaRandomVariable; //< Variable used to sample beta-distributed random variables
Ptr<GammaRandomVariable> m_gammaRandomVariable; //!< Variable used to sample beta-distributed random variables
double m_decay; //< Exponential decay coefficient, Hz
double m_decay; //!< Exponential decay coefficient, Hz
TracedValue<uint64_t> m_currentRate; //!< Trace rate changes
};

View File

@@ -118,6 +118,13 @@ private:
/// Comparison functor used to sort the buffered MPDUs
struct Compare
{
/**
* Functional operator for sorting the buffered MPDUs.
*
* \param a the key of first buffered MPDU (\see Key)
* \param b the key of second buffered MPDU (\see Key)
* \return true if first key is smaller than second
*/
bool operator() (const Key& a, const Key& b) const;
};

View File

@@ -28,14 +28,16 @@
namespace ns3 {
const uint16_t ERROR_TABLE_BCC_SMALL_FRAME_SIZE = 32;
const uint16_t ERROR_TABLE_BCC_LARGE_FRAME_SIZE = 1458;
const uint16_t ERROR_TABLE_LDPC_FRAME_SIZE = 1458;
const uint8_t ERROR_TABLE_BCC_MAX_NUM_MCS = 9;
const uint8_t ERROR_TABLE_LDPC_MAX_NUM_MCS = 11;
const uint16_t ERROR_TABLE_BCC_SMALL_FRAME_SIZE = 32; //!< reference size (bytes) of small frames for BCC
const uint16_t ERROR_TABLE_BCC_LARGE_FRAME_SIZE = 1458; //!< reference size (bytes) of large frames for BCC
const uint16_t ERROR_TABLE_LDPC_FRAME_SIZE = 1458; //!< reference size (bytes) for LDPC
const uint8_t ERROR_TABLE_BCC_MAX_NUM_MCS = 9; //!< maximum number of MCSs for BCC
const uint8_t ERROR_TABLE_LDPC_MAX_NUM_MCS = 11; //!< maximum number of MCSs for LDPC
/// Table of SNR (dB) and PER pairs
typedef std::vector<std::pair<double /* SNR (dB) */, double /* PER */> > SnrPerTable;
/// AWGN error table for BCC with reference size of 32 bytes
static const SnrPerTable AwgnErrorTableBcc32 [ERROR_TABLE_BCC_MAX_NUM_MCS + 1] = {
// MCS-0
{
@@ -113,6 +115,7 @@ static const SnrPerTable AwgnErrorTableBcc32 [ERROR_TABLE_BCC_MAX_NUM_MCS + 1] =
},
};
/// AWGN error table for BCC with reference size of 1458 bytes
static const SnrPerTable AwgnErrorTableBcc1458 [ERROR_TABLE_BCC_MAX_NUM_MCS + 1] = {
// MCS-0
{
@@ -179,6 +182,7 @@ static const SnrPerTable AwgnErrorTableBcc1458 [ERROR_TABLE_BCC_MAX_NUM_MCS + 1]
},
};
/// AWGN error table for LDPC with reference size of 1458 bytes
static const SnrPerTable AwgnErrorTableLdpc1458 [ERROR_TABLE_LDPC_MAX_NUM_MCS + 1] = {
// MCS-0
{

View File

@@ -193,7 +193,7 @@ private:
Ptr<AntennaModel> m_antenna; //!< antenna model
mutable Ptr<const SpectrumModel> m_rxSpectrumModel; //!< receive spectrum model
///< Map a spectrum band associated with an RU to the RU specification
/// Map a spectrum band associated with an RU to the RU specification
typedef std::map<WifiSpectrumBand, HeRu::RuSpec> RuBand;
std::map<uint16_t, RuBand> m_ruBands; /**< For each channel width, store all the distinct spectrum

View File

@@ -97,8 +97,12 @@ class SupportedRates : public WifiInformationElement
public:
SupportedRates ();
/// type conversion operator
SupportedRates (const SupportedRates &);
/**
* Type conversion operator
*
* \param rates the reference const SupportedRates
*/
SupportedRates (const SupportedRates & rates);
// Implementations of pure virtual methods of WifiInformationElement
WifiInformationElementId ElementId () const;
@@ -108,7 +112,7 @@ public:
uint8_t length);
/**
* assignment operator
* Assignment operator
*
* \param rates the rates to assign
* \returns the assigned value

View File

@@ -33,8 +33,8 @@
namespace ns3 {
static const double SNR_PRECISION = 2;
static const double TABLED_BASED_ERROR_MODEL_PRECISION = 1e-5;
static const double SNR_PRECISION = 2; //!< precision for SNR
static const double TABLED_BASED_ERROR_MODEL_PRECISION = 1e-5; //!< precision for PER
NS_OBJECT_ENSURE_REGISTERED (TableBasedErrorRateModel);

View File

@@ -416,9 +416,9 @@ VhtCapabilities::GetRxHighestSupportedLgiDataRate () const
}
std::ostream &
operator << (std::ostream &os, const VhtCapabilities &VhtCapabilities)
operator << (std::ostream &os, const VhtCapabilities &vhtCapabilities)
{
os << VhtCapabilities.GetVhtCapabilitiesInfo () << "|" << VhtCapabilities.GetSupportedMcsAndNssSet ();
os << vhtCapabilities.GetVhtCapabilitiesInfo () << "|" << vhtCapabilities.GetSupportedMcsAndNssSet ();
return os;
}

View File

@@ -259,11 +259,11 @@ private:
* output stream output operator
*
* \param os the output stream
* \param VhtCapabilities the VHT capabilities
* \param vhtCapabilities the VHT capabilities
*
* \returns output stream
*/
std::ostream &operator << (std::ostream &os, const VhtCapabilities &vhtcapabilities);
std::ostream &operator << (std::ostream &os, const VhtCapabilities &vhtCapabilities);
} //namespace ns3

View File

@@ -226,11 +226,11 @@ struct WifiDlMuBarBaSequence : public WifiAcknowledgment
BlockAckType baType; //!< BlockAck type
};
///< Set of stations replying with an Ack frame (no more than one)
/// Set of stations replying with an Ack frame (no more than one)
std::map<Mac48Address, AckInfo> stationsReplyingWithNormalAck;
///< Set of stations replying with a BlockAck frame (no more than one)
/// Set of stations replying with a BlockAck frame (no more than one)
std::map<Mac48Address, BlockAckInfo> stationsReplyingWithBlockAck;
///< Set of stations receiving a BlockAckReq frame and replying with a BlockAck frame
/// Set of stations receiving a BlockAckReq frame and replying with a BlockAck frame
std::map<Mac48Address, BlockAckReqInfo> stationsSendBlockAckReqTo;
};
@@ -258,7 +258,7 @@ struct WifiDlMuTfMuBar : public WifiAcknowledgment
BlockAckType baType; //!< BlockAck type
};
///< Set of stations replying with a BlockAck frame
/// Set of stations replying with a BlockAck frame
std::map<Mac48Address, BlockAckInfo> stationsReplyingWithBlockAck;
std::list<BlockAckReqType> barTypes; //!< BAR types
uint16_t ulLength; //!< the UL Length field of the MU-BAR Trigger Frame
@@ -290,7 +290,7 @@ struct WifiDlMuAggregateTf : public WifiAcknowledgment
BlockAckType baType; //!< BlockAck type
};
///< Set of stations replying with a BlockAck frame
/// Set of stations replying with a BlockAck frame
std::map<Mac48Address, BlockAckInfo> stationsReplyingWithBlockAck;
uint16_t ulLength; //!< the UL Length field of the MU-BAR Trigger Frames
};
@@ -310,7 +310,7 @@ struct WifiUlMuMultiStaBa : public WifiAcknowledgment
bool CheckQosAckPolicy (Mac48Address receiver, uint8_t tid, WifiMacHeader::QosAckPolicy ackPolicy) const override;
void Print (std::ostream &os) const override;
///< Map (originator, tid) pairs to the their index in baType
/// Map (originator, tid) pairs to the their index in baType
std::map<std::pair<Mac48Address, uint8_t>, std::size_t> stationsReceivingMultiStaBa;
BlockAckType baType; //!< BlockAck type
WifiTxVector tbPpduTxVector; //!< TXVECTOR for a TB PPDU

View File

@@ -161,6 +161,8 @@ public:
* of the items in the queue. The list is empty if the item is not stored in
* a queue. The list contains multiple iterators in case of A-MSDU that is not
* stored in the Block Ack Manager retransmit queue.
*
* \return the list of iterators pointing to the positions of the items in the queue
*/
const std::list<QueueIteratorPair>& GetQueueIteratorPairs (void) const;

View File

@@ -75,7 +75,7 @@ WifiMacQueue::~WifiMacQueue ()
m_nQueuedBytes.clear ();
}
static std::list<Ptr<WifiMacQueueItem>> g_emptyWifiMacQueue;
static std::list<Ptr<WifiMacQueueItem>> g_emptyWifiMacQueue; //!< empty Wi-Fi MAC queue
const WifiMacQueue::ConstIterator WifiMacQueue::EMPTY = g_emptyWifiMacQueue.end ();

View File

@@ -373,9 +373,9 @@ private:
DropPolicy m_dropPolicy; //!< Drop behavior of queue
mutable bool m_expiredPacketsPresent; //!< True if expired packets are in the queue
//!< Per (MAC address, TID) pair queued packets
/// Per (MAC address, TID) pair queued packets
std::unordered_map<WifiAddressTidPair, uint32_t, WifiAddressTidHash> m_nQueuedPackets;
//!< Per (MAC address, TID) pair queued bytes
/// Per (MAC address, TID) pair queued bytes
std::unordered_map<WifiAddressTidPair, uint32_t, WifiAddressTidHash> m_nQueuedBytes;
/// Traced callback: fired when a packet is dropped due to lifetime expiration

View File

@@ -49,11 +49,11 @@ namespace ns3 {
* enum if pybindgen is upgraded to support Callback<WifiCodeRate>
*/
typedef uint16_t WifiCodeRate;
const uint16_t WIFI_CODE_RATE_UNDEFINED = 0;
const uint16_t WIFI_CODE_RATE_1_2 = 1;
const uint16_t WIFI_CODE_RATE_2_3 = 2;
const uint16_t WIFI_CODE_RATE_3_4 = 3;
const uint16_t WIFI_CODE_RATE_5_6 = 4;
const uint16_t WIFI_CODE_RATE_UNDEFINED = 0; //!< undefined coding rate
const uint16_t WIFI_CODE_RATE_1_2 = 1; //!< 1/2 coding rate
const uint16_t WIFI_CODE_RATE_2_3 = 2; //!< 2/3 coding rate
const uint16_t WIFI_CODE_RATE_3_4 = 3; //!< 3/4 coding rate
const uint16_t WIFI_CODE_RATE_5_6 = 4; //!< 5/6 coding rate
/**
* \ingroup wifi

View File

@@ -1098,7 +1098,7 @@ public:
protected:
virtual void DoDispose (void);
/*
/**
* Reset data upon end of TX or RX
*/
void Reset (void);
@@ -1130,7 +1130,7 @@ protected:
* HE TB PPDU solicited by the AP.
*
* \param ppdu the PPDU that is being received
* \param the channel width (in MHz) used for RSSI measurement
* \return the channel width (in MHz) used for RSSI measurement
*/
uint16_t GetMeasurementChannelWidth (const Ptr<const WifiPpdu> ppdu) const;

View File

@@ -125,13 +125,14 @@ public:
/**
* \brief Get a copy of the i-th A-MPDU subframe (includes subframe header, MPDU, and possibly padding)
* \param i the index in the list of A-MPDU subframes
* \return the i-th A-MPDU subframe.
*/
Ptr<Packet> GetAmpduSubframe (std::size_t i) const;
/**
* \brief Return the size of the i-th A-MPDU subframe.
*
* \param i the index in the list of A-MPDU subframes
* \return the size of the i-th A-MPDU subframe.
*/
std::size_t GetAmpduSubframeSize (std::size_t i) const;

View File

@@ -1069,6 +1069,10 @@ private:
* If the given TXVECTOR is used for a MU transmission, return the STAID of
* the station with the given address if we are an AP or our own STAID if we
* are a STA associated with some AP. Otherwise, return SU_STA_ID.
*
* \param address the address of the station
* \param txVector the TXVECTOR used for a MU transmission
* \return the STA-ID of the station
*/
uint16_t GetStaId (Mac48Address address, const WifiTxVector& txVector) const;

View File

@@ -189,9 +189,9 @@ inline std::ostream& operator<< (std::ostream& os, WifiStandard standard)
*/
struct WifiStandardInfo
{
WifiPhyStandard phyStandard;
WifiPhyBand phyBand;
WifiMacStandard macStandard;
WifiPhyStandard phyStandard; //!< the PHY standard
WifiPhyBand phyBand; //!< the PHY band
WifiMacStandard macStandard; //!< the MAC standard
};
/**

View File

@@ -45,11 +45,17 @@ class WifiTxParameters
{
public:
WifiTxParameters ();
/**
* Copy constructor.
*
* \param txParams the WifiTxParameters to copy
*/
WifiTxParameters (const WifiTxParameters& txParams);
/**
* Copy assignment operator.
* \param txParams the TX parameters to assign to this object
* \return the reference to this object
*/
WifiTxParameters& operator= (const WifiTxParameters& txParams);

View File

@@ -201,11 +201,11 @@ private:
Ptr<EventImpl> m_endRxEvent; //!< event to schedule upon RXSTART.indication
bool m_rescheduled; //!< whether the timer has been already rescheduled
//!< the MPDU response timeout callback
/// the MPDU response timeout callback
mutable MpduResponseTimeout m_mpduResponseTimeoutCallback;
//!< the PSDU response timeout callback
/// the PSDU response timeout callback
mutable PsduResponseTimeout m_psduResponseTimeoutCallback;
//!< the PSDU map response timeout callback
/// the PSDU map response timeout callback
mutable PsduMapResponseTimeout m_psduMapResponseTimeoutCallback;
};