A Discrete-Event Network Simulator
API
ns3::VectorTlvValue Class Referenceabstract

this class is used to implement a vector of values in one tlv value field More...

#include "wimax-tlv.h"

+ Inheritance diagram for ns3::VectorTlvValue:
+ Collaboration diagram for ns3::VectorTlvValue:

Public Types

typedef std::vector< Tlv * >::const_iterator Iterator
 TLV vector iterator typedef. More...
 

Public Member Functions

 VectorTlvValue ()
 
 ~VectorTlvValue () override
 
void Add (const Tlv &val)
 Add a TLV. More...
 
Iterator Begin () const
 Begin iterator. More...
 
VectorTlvValueCopy () const override=0
 Copy. More...
 
uint32_t Deserialize (Buffer::Iterator start, uint64_t valueLength) override=0
 Deserialize from a buffer. More...
 
Iterator End () const
 End iterator. More...
 
uint32_t GetSerializedSize () const override
 Get serialized size in bytes. More...
 
void Serialize (Buffer::Iterator start) const override
 Serialize to a buffer. More...
 
- Public Member Functions inherited from ns3::TlvValue
virtual ~TlvValue ()
 

Private Attributes

std::vector< Tlv * > * m_tlvList
 tlv list More...
 

Detailed Description

this class is used to implement a vector of values in one tlv value field

Definition at line 296 of file wimax-tlv.h.

Member Typedef Documentation

◆ Iterator

typedef std::vector<Tlv*>::const_iterator ns3::VectorTlvValue::Iterator

TLV vector iterator typedef.

Definition at line 300 of file wimax-tlv.h.

Constructor & Destructor Documentation

◆ VectorTlvValue()

ns3::VectorTlvValue::VectorTlvValue ( )

Definition at line 235 of file wimax-tlv.cc.

References m_tlvList.

◆ ~VectorTlvValue()

ns3::VectorTlvValue::~VectorTlvValue ( )
override

Definition at line 240 of file wimax-tlv.cc.

References m_tlvList.

Member Function Documentation

◆ Add()

void ns3::VectorTlvValue::Add ( const Tlv val)

Add a TLV.

Parameters
valthe TLV value

Definition at line 284 of file wimax-tlv.cc.

References ns3::Tlv::Copy(), and m_tlvList.

Referenced by ns3::SfVectorTlvValue::Deserialize(), ns3::CsParamVectorTlvValue::Deserialize(), ns3::ClassificationRuleVectorTlvValue::Deserialize(), Ns3WimaxCsParamTlvTestCase::DoRun(), ns3::CsParameters::ToTlv(), ns3::IpcsClassifierRecord::ToTlv(), and ns3::ServiceFlow::ToTlv().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Begin()

VectorTlvValue::Iterator ns3::VectorTlvValue::Begin ( void  ) const

◆ Copy()

VectorTlvValue* ns3::VectorTlvValue::Copy ( ) const
overridepure virtual

Copy.

Returns
the vector TLV value

Implements ns3::TlvValue.

Implemented in ns3::ClassificationRuleVectorTlvValue, ns3::CsParamVectorTlvValue, and ns3::SfVectorTlvValue.

◆ Deserialize()

uint32_t ns3::VectorTlvValue::Deserialize ( Buffer::Iterator  start,
uint64_t  valueLen 
)
overridepure virtual

Deserialize from a buffer.

Parameters
startthe iterator
valueLenthe maximum length of the value
Returns
the

Implements ns3::TlvValue.

Implemented in ns3::ClassificationRuleVectorTlvValue, ns3::CsParamVectorTlvValue, and ns3::SfVectorTlvValue.

◆ End()

VectorTlvValue::Iterator ns3::VectorTlvValue::End ( void  ) const

◆ GetSerializedSize()

uint32_t ns3::VectorTlvValue::GetSerializedSize ( ) const
overridevirtual

Get serialized size in bytes.

Returns
the serialized size

Implements ns3::TlvValue.

Definition at line 251 of file wimax-tlv.cc.

References m_tlvList.

Referenced by ns3::CsParamVectorTlvValue::Deserialize(), Ns3WimaxCsParamTlvTestCase::DoRun(), ns3::CsParameters::ToTlv(), ns3::IpcsClassifierRecord::ToTlv(), and ns3::ServiceFlow::ToTlv().

+ Here is the caller graph for this function:

◆ Serialize()

void ns3::VectorTlvValue::Serialize ( Buffer::Iterator  start) const
overridevirtual

Serialize to a buffer.

Parameters
startthe iterator

Implements ns3::TlvValue.

Definition at line 262 of file wimax-tlv.cc.

References m_tlvList, and ns3::Buffer::Iterator::Next().

+ Here is the call graph for this function:

Member Data Documentation

◆ m_tlvList

std::vector<Tlv*>* ns3::VectorTlvValue::m_tlvList
private

tlv list

Definition at line 328 of file wimax-tlv.h.

Referenced by VectorTlvValue(), ~VectorTlvValue(), Add(), Begin(), End(), GetSerializedSize(), and Serialize().


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