class HelloMessage

Representation of a HELLO protocol message. More...

 
LOGO
 Annotated List  Files  Globals  Hierarchy  Index  Top

Public Types

Public Methods

Protected Methods

Protected Members


Detailed Description

typedef multimap<LinkCode, LinkAddrInfo> LinkBag

LinkBag

 HelloMessage ()

HelloMessage

 ~HelloMessage ()

~HelloMessage

Message*  decode (uint8_t* buf, size_t& len)
throw(InvalidMessage)

decode

Reimplemented from Message.

bool  encode (uint8_t* buf, size_t& len)

encode

Reimplemented from Message.

inline size_t  min_length ()

min_length

[const]

size_t  length ()

length

[const]

Reimplemented from Message.

inline const TimeVal  get_htime ()

get_htime

[const]

inline void  set_htime (const TimeVal& htime)

set_htime

inline OlsrTypes::WillType  willingness ()

willingness

[const]

inline void  set_willingness (OlsrTypes::WillType willingness)

set_willingness

inline void  add_link (const LinkCode code, const IPv4& remote_addr)

add_link

size_t  remove_link (const IPv4& remote_addr)

remove_link

Remove a given neighbor interface address from ALL link tuples.

inline void  clear ()

clear

inline const LinkBag&  links ()

links

[const]

string  str ()

str

[const virtual]

Print a HelloMessage as a string.

Reimplemented from Message.

size_t  get_links_length ()

get_links_length

[const virtual]

Calculate the on-wire size of all link state tuples.

inline void  add_link (const LinkCode code, const LinkAddrInfo& lai)

add_link

[protected]

size_t  decode_link_tuple (uint8_t* buf, size_t& len, size_t& skiplen, bool has_lq = false)
throw(InvalidLinkTuple)

decode_link_tuple

[protected virtual]

Decode a single link tuple from the buffer into the HelloMessage.

Parameters:

bufpointer to the buffer to decode.
lenthe number of bytes in the buffer.
skiplenthe number of bytes consumed by this function.
has_lqtrue if this function is being called from derived class EtxHelloMessage to process ETX information, otherwise false.

Returns: the number of bytes consumed in the input stream to produce a decoded link tuple. @throw InvalidLinkTuple if an invalid link tuple was found during message decoding.

inline size_t  link_tuple_header_length ()

link_tuple_header_length

[protected const]

TimeVal _htime

_htime

[protected]

OlsrTypes::WillType _willingness

_willingness

[protected]

LinkBag _links

_links

[protected]


Generated by: pavlin on kobe.xorp.net on Wed Jan 7 19:11:15 2009, using kdoc 2.0a54+XORP.