Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes

ns3::WifiInformationElementVector Class Reference

Information element vector. More...

#include <wifi-information-element-vector.h>

Inheritance diagram for ns3::WifiInformationElementVector:
Inheritance graph
[legend]
Collaboration diagram for ns3::WifiInformationElementVector:
Collaboration graph
[legend]

List of all members.

Public Types

typedef std::vector< Ptr
< WifiInformationElement >
>::iterator 
Iterator
 As soon as this is a vector, we define an Iterator.

Public Member Functions

virtual uint32_t DeserializeSingleIe (Buffer::Iterator start)
 Needed when you try to deserialize a lonely IE inside other header.
void SetMaxSize (uint16_t size)
 Set maximum size to control overflow of the max packet length.
Iterator Begin ()
 Returns Begin of the vector.
Iterator End ()
 Returns End of the vector.
bool AddInformationElement (Ptr< WifiInformationElement > element)
 add an IE, if maxSize has exceeded, returns false
Ptr< WifiInformationElementFindFirst (WifiInformationElementId id) const
 vector of pointers to information elements is the body of IeVector
virtual bool operator== (const WifiInformationElementVector &a) const

Protected Types

typedef std::vector< Ptr
< WifiInformationElement > > 
IE_VECTOR

Protected Member Functions

uint32_t GetSize () const
 Current number of bytes.

Protected Attributes

IE_VECTOR m_elements
uint16_t m_maxSize
 Size in bytes (actually, max packet length).

Inherited from Header



TypeId GetInstanceTypeId () const
virtual uint32_t GetSerializedSize () const
virtual void Serialize (Buffer::Iterator start) const
virtual uint32_t Deserialize (Buffer::Iterator start)
virtual void Print (std::ostream &os) const
static TypeId GetTypeId ()
 This method returns the TypeId associated to ns3::WifiInformationElementVector.

Detailed Description

Information element vector.

Implements a vector of WifiInformationElement's


Member Function Documentation

virtual uint32_t ns3::WifiInformationElementVector::Deserialize ( Buffer::Iterator  start  )  [virtual]
Attention:
When you use RemoveHeader, WifiInformationElementVector supposes, that all buffer consists of information elements
Parameters:
start 
Returns:

Implements ns3::Header.

virtual uint32_t ns3::WifiInformationElementVector::DeserializeSingleIe ( Buffer::Iterator  start  )  [virtual]

Needed when you try to deserialize a lonely IE inside other header.

Parameters:
start is the start of the buffer
Returns:
deserialized bytes

Reimplemented in ns3::MeshInformationElementVector.

TypeId ns3::WifiInformationElementVector::GetInstanceTypeId (  )  const [virtual]
Returns:
the TypeId associated to the most-derived type of this instance.

This method is typically implemented by ns3::Object::GetInstanceTypeId but some classes which derive from ns3::ObjectBase directly have to implement it themselves.

Implements ns3::ObjectBase.

virtual uint32_t ns3::WifiInformationElementVector::GetSerializedSize (  )  const [virtual]
Returns:
the expected size of the header.

This method is used by Packet::AddHeader to store a header into the byte buffer of a packet. This method should return the number of bytes which are needed to store the full header data by Serialize.

Implements ns3::Header.

static TypeId ns3::WifiInformationElementVector::GetTypeId ( void   )  [static]

This method returns the TypeId associated to ns3::WifiInformationElementVector.

No Attributes defined for this type.
No TraceSources defined for this type.

Reimplemented from ns3::Header.

virtual void ns3::WifiInformationElementVector::Print ( std::ostream &  os  )  const [virtual]
Parameters:
os output stream This method is used by Packet::Print to print the content of a trailer as ascii data to a c++ output stream. Although the trailer is free to format its output as it wishes, it is recommended to follow a few rules to integrate with the packet pretty printer: start with flags, small field values located between a pair of parens. Values should be separated by whitespace. Follow the parens with the important fields, separated by whitespace. i.e.: (field1 val1 field2 val2 field3 val3) field4 val4 field5 val5

Implements ns3::Header.

virtual void ns3::WifiInformationElementVector::Serialize ( Buffer::Iterator  start  )  const [virtual]
Parameters:
start an iterator which points to where the header should be written.

This method is used by Packet::AddHeader to store a header into the byte buffer of a packet. The data written is expected to match bit-for-bit the representation of this header in a real network.

Implements ns3::Header.


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