senf::MIHFIdTLVParser Class Reference

Parse a MIHF_ID. More...

#include <senf/Packets/80221Bundle/TLVParser.hh>

Inheritance diagram for senf::MIHFIdTLVParser:
Inheritance graph
[legend]

List of all members.


Detailed Description

Parse a MIHF_ID.

Note that the maximum length of a MIHF_ID is 253 octets (see F.3.11 in 802.21) We could set maxLength in init(), but for the most MIHF_IDs the default maximum length of 128 should be enough.

Note:
you must call maxIdLength( 253) *before* setting MIHF_IDs values longer than 128.
See also:
MIHFId

Definition at line 179 of file TLVParser.hh.


Classes

struct   binaryNAIDecoder
struct   binaryNAIEncoder
struct   ValueEqualsVisitor
struct   ValueSetterVisitor

Public Types

typedef MIHTLVLengthParser  idLength_t

Public Member Functions

MIHTLVLengthParser::value_type  idLength () const
void  dump (std::ostream &os) const
void  maxIdLength (boost::uint8_t maxl) const
void  finalize ()
  shrink size of the TLV length field to minimum

Value setters

void  value (MIHFId const &id)
void  value (std::string const &id)
void  value (senf::MACAddress const &addr)
void  value (senf::INet4Address const &addr)
void  value (senf::INet6Address const &addr)
void  value (senf::EUI64 const &addr)

Value getters

MIHFId  valueAs (MIHFId::Type type) const
std::string  valueAsString () const
senf::MACAddress  valueAsMACAddress () const
senf::INet4Address  valueAsINet4Address () const
senf::INet6Address  valueAsINet6Address () const
senf::EUI64  valueAsEUI64 () const

Value comparisons

bool  valueEquals (MIHFId const &id) const
bool  valueEquals (std::string const &id) const
bool  valueEquals (senf::MACAddress const &addr) const
bool  valueEquals (senf::INet4Address const &addr) const
bool  valueEquals (senf::INet6Address const &addr) const
bool  valueEquals (senf::EUI64 const &addr) const

Protected Member Functions

MIHTLVLengthParser  idLength_ () const

Member Typedef Documentation

typedef MIHTLVLengthParser senf::MIHFIdTLVParser::
idLength_t

Definition at line 183 of file TLVParser.hh.


Member Function Documentation

void senf::MIHFIdTLVParser::
dump ( std::ostream &  os )

Reimplemented in senf::MIHFSrcIdTLVParser, and senf::MIHFDstIdTLVParser.

Definition at line 75 of file TLVParser.cc.

void senf::MIHFIdTLVParser::
finalize ()

shrink size of the TLV length field to minimum

The size of the length field will be decreased to minimum necessary to hold the current length value.

Reimplemented from senf::MIHBaseTLVParser.

Definition at line 86 of file TLVParser.cc.

MIHTLVLengthParser ::value_type senf::MIHFIdTLVParser::
idLength ()

MIHTLVLengthParser senf::MIHFIdTLVParser::
idLength_ ()

void senf::MIHFIdTLVParser::
maxIdLength ( boost::uint8_t  maxl )

Definition at line 93 of file TLVParser.cc.

void senf::MIHFIdTLVParser::
value ( senf::EUI64 const &  addr )

Definition at line 146 of file TLVParser.cc.

void senf::MIHFIdTLVParser::
value ( senf::INet6Address const &  addr )

Definition at line 140 of file TLVParser.cc.

void senf::MIHFIdTLVParser::
value ( senf::INet4Address const &  addr )

Definition at line 134 of file TLVParser.cc.

void senf::MIHFIdTLVParser::
value ( senf::MACAddress const &  addr )

Definition at line 128 of file TLVParser.cc.

void senf::MIHFIdTLVParser::
value ( std::string const &  id )

Definition at line 118 of file TLVParser.cc.

void senf::MIHFIdTLVParser::
value ( MIHFId const &  id )

Definition at line 152 of file TLVParser.cc.

senf::MIHFId senf::MIHFIdTLVParser::
valueAs ( MIHFId::Type  type )

Definition at line 157 of file TLVParser.cc.

senf::EUI64 senf::MIHFIdTLVParser::
valueAsEUI64 ()

Definition at line 99 of file TLVParser.cci.

senf::INet4Address senf::MIHFIdTLVParser::
valueAsINet4Address ()

Definition at line 83 of file TLVParser.cci.

senf::INet6Address senf::MIHFIdTLVParser::
valueAsINet6Address ()

Definition at line 91 of file TLVParser.cci.

senf::MACAddress senf::MIHFIdTLVParser::
valueAsMACAddress ()

Definition at line 75 of file TLVParser.cci.

std::string senf::MIHFIdTLVParser::
valueAsString ()

Definition at line 69 of file TLVParser.cci.

bool senf::MIHFIdTLVParser::
valueEquals ( senf::EUI64 const &  addr )

Definition at line 131 of file TLVParser.cci.

bool senf::MIHFIdTLVParser::
valueEquals ( senf::INet6Address const &  addr )

Definition at line 125 of file TLVParser.cci.

bool senf::MIHFIdTLVParser::
valueEquals ( senf::INet4Address const &  addr )

Definition at line 119 of file TLVParser.cci.

bool senf::MIHFIdTLVParser::
valueEquals ( senf::MACAddress const &  addr )

Definition at line 113 of file TLVParser.cci.

bool senf::MIHFIdTLVParser::
valueEquals ( std::string const &  id )

Definition at line 107 of file TLVParser.cci.

bool senf::MIHFIdTLVParser::
valueEquals ( MIHFId const &  id )

Definition at line 137 of file TLVParser.cci.


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