class OutputBase

Base class for RIP output processing components. More...

Contains pure virtuals
Definition#include <output.hh>
Template formOutputBase<typename A>
Inherited byOutputTable, OutputUpdates
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Types

Public Methods

Protected Methods

Protected Members


Detailed Description

RIP output processing components generate periodic trains of RIP response packets. This class and it's children are intended to generate the packet trains from RIP output processing. Each packet within the train is temporally separated from it's neighbouring packets. Timers elsewhere schedule the start of each packet train.

typedef A Addr

Addr

typedef IPNet<A> Net

Net

 OutputBase (EventLoop& e, Port<A>& port, PacketQueue<A>& pkt_queue, const A& ip_addr, uint16_t ip_port)

OutputBase

 ~OutputBase ()

~OutputBase

[virtual]

inline const A&  ip_addr ()

ip_addr

[const]

Accessor for destination IP address applied to output packets.

inline uint16_t  ip_port ()

ip_port

[const]

Accessor for destination IP port applied to output packets.

inline bool  running ()

running

[const]

Returns: true if output process is generating packets.

inline void  run ()

run

Start packet train if sufficient data is available. This instance will remain in "running" so long as data is available and will continue to generate packets until the data is exhausted.

inline uint32_t  interpacket_gap_ms ()

interpacket_gap_ms

[protected const]

Accessor for the inter-packet gap the output process should when generating packet trains.

void  output_packet ()

output_packet

[protected pure virtual]

Output packet if suitable data is available, and place it in the PacketQueue associated with this instance. Should data still be available after packet is generated then implementations of this method should reschedule a call to output_packet after interpacket_gap_ms milliseconds.

EventLoop& _e

_e

[protected]

Port<A>& _port

_port

[protected]

PacketQueue<A>& _pkt_queue

_pkt_queue

[protected]

const A _ip_addr

_ip_addr

[protected]

const uint16_t _ip_port

_ip_port

[protected]

XorpTimer _op_timer

_op_timer

[protected]

template <typename A>  OutputBase (EventLoop& e, Port<A>& port, PacketQueue<A>& pkt_queue, const A& ip_addr, uint16_t ip_port)

OutputBase

[protected]

template <typename A> inline bool  running ()

running

[protected const]

template <typename A> inline void  run ()

run

[protected]

template <typename A> inline uint32_t  interpacket_gap_ms ()

interpacket_gap_ms

[protected const]


Generated by: pavlin on possum.icir.org on Thu Nov 6 23:47:08 2003, using kdoc 2.0a54+XORP.