Ptr< WaveNetDevice > m_device
the device
Simulation virtual time values and global simulation resolution.
static const uint32_t VSA_REPEAT_PERIOD
A number of VSA frames will be transmitted repeatedly during the period of 5s.
refer to 1609.4-2010 chapter 6.4 Vendor Specific Action (VSA) frames transmission.
virtual ~VsaManager(void)
void SendVsa(const VsaInfo &vsaInfo)
VsaTransmitInterval
indicate which interval the VSA frames will be transmitted in.
void SetWaveVsaCallback(Callback< bool, Ptr< const Packet >, const Address &, uint32_t, uint32_t > vsaCallback)
set wave vsa callback function
a polymophic address class
void DoSendVsa(enum VsaTransmitInterval interval, uint32_t channel, Ptr< Packet > vsc, OrganizationIdentifier oi, Mac48Address peer)
static TypeId GetTypeId(void)
Get the type ID.
enum VsaTransmitInterval sentInterval
VSA transmit interval.
uint8_t managementId
management ID
void DoInitialize(void)
Initialize() implementation.
the organization identifier is a public organizationally unique identifier assigned by the IEEE...
void DoDispose(void)
Destructor implementation.
void SetWaveNetDevice(Ptr< WaveNetDevice > device)
void DoRepeat(VsaWork *vsa)
std::vector< VsaWork * > m_vsas
VSAs.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
uint32_t channelNumber
channel number
Time repeatPeriod
repeat period
uint8_t repeatRate
repeat rate
VsaInfo(Mac48Address peer, OrganizationIdentifier identifier, uint8_t manageId, Ptr< Packet > vscPacket, uint32_t channel, uint8_t repeat, enum VsaTransmitInterval interval)
Initializer.
void RemoveByChannel(uint32_t channelNumber)
An identifier for simulation events.
OrganizationIdentifier oi
OI.
OrganizationIdentifier oi
OI.
uint32_t channelNumber
channel number
A base class which provides memory management and object aggregation.
Callback< bool, Ptr< const Packet >, const Address &, uint32_t, uint32_t > m_vsaReceived
VSA received callback.
a unique identifier for an interface.
void RemoveAll(void)
cancel all VSA transmissions
bool ReceiveVsc(Ptr< WifiMac > mac, const OrganizationIdentifier &oi, Ptr< const Packet > vsc, const Address &src)
void RemoveByOrganizationIdentifier(const OrganizationIdentifier &oi)
enum VsaTransmitInterval sendInterval
send interval