A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::WifiProtection Struct Referenceabstract

WifiProtection is an abstract base struct. More...

#include "wifi-protection.h"

+ Inheritance diagram for ns3::WifiProtection:
+ Collaboration diagram for ns3::WifiProtection:

Public Types

enum  Method { NONE = 0 , RTS_CTS , CTS_TO_SELF , MU_RTS_CTS }
 Available protection methods. More...
 

Public Member Functions

 WifiProtection (Method m)
 Constructor.
 
virtual ~WifiProtection ()
 
virtual std::unique_ptr< WifiProtectionCopy () const =0
 Clone this object.
 
virtual void Print (std::ostream &os) const =0
 Print the object contents.
 

Public Attributes

const Method method
 protection method
 
std::optional< TimeprotectionTime
 time required by the protection method
 

Detailed Description

WifiProtection is an abstract base struct.

Each derived struct defines a protection method and stores the information needed to perform protection according to that method.

Definition at line 30 of file wifi-protection.h.

Member Enumeration Documentation

◆ Method

Available protection methods.

Enumerator
NONE 
RTS_CTS 
CTS_TO_SELF 
MU_RTS_CTS 

Definition at line 36 of file wifi-protection.h.

Constructor & Destructor Documentation

◆ WifiProtection()

ns3::WifiProtection::WifiProtection ( Method m)

Constructor.

Parameters
mthe protection method for this object

Definition at line 20 of file wifi-protection.cc.

◆ ~WifiProtection()

ns3::WifiProtection::~WifiProtection ( )
virtual

Definition at line 25 of file wifi-protection.cc.

Member Function Documentation

◆ Copy()

virtual std::unique_ptr< WifiProtection > ns3::WifiProtection::Copy ( ) const
pure virtual

Clone this object.

Returns
a pointer to the cloned object

Implemented in ns3::WifiCtsToSelfProtection, ns3::WifiMuRtsCtsProtection, ns3::WifiNoProtection, and ns3::WifiRtsCtsProtection.

◆ Print()

virtual void ns3::WifiProtection::Print ( std::ostream & os) const
pure virtual

Print the object contents.

Parameters
osoutput stream in which the data should be printed.

Implemented in ns3::WifiCtsToSelfProtection, ns3::WifiMuRtsCtsProtection, ns3::WifiNoProtection, and ns3::WifiRtsCtsProtection.

Referenced by ns3::operator<<().

+ Here is the caller graph for this function:

Member Data Documentation

◆ method

const Method ns3::WifiProtection::method

◆ protectionTime

std::optional<Time> ns3::WifiProtection::protectionTime

time required by the protection method

Definition at line 64 of file wifi-protection.h.

Referenced by ns3::WifiNoProtection::WifiNoProtection(), and ns3::FrameExchangeManager::CalculateProtectionTime().


The documentation for this struct was generated from the following files: