User Manual, Developers Guide and API Documentation

ip::UpperConvergence Class Reference

Convergence to upper layers that use the IPv4 Service interface. More...

#include <UpperConvergence.hpp>

Inheritance diagram for ip::UpperConvergence:

Inheritance graph
[legend]
Collaboration diagram for ip::UpperConvergence:

Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual const
wns::service::nl::Address
getAddress () const
 Retrieve IP Address of this service.
virtual void onFUNCreated ()
 Resolve inter-FU dependencies.
virtual void processIncoming (const wns::ldk::CompoundPtr &compound)
 Process incoming compounds. Here the forwarding to the upper layer is done.
virtual void registerHandler (wns::service::nl::protocolNumber _protocol, wns::service::nl::DataHandler *dh)
 Register DataHandler of upper layer.
virtual void sendData (const wns::service::nl::Address &_source, const wns::service::nl::Address &_peer, const wns::osi::PDUPtr &_sdu, wns::service::nl::protocolNumber _protocol, wns::service::dll::FlowID _dllFlowID=0)
 Deliver data to another peer component.
void setSourceAddress (wns::service::nl::Address src)
 UpperConvergence (wns::ldk::fun::FUN *fun, const wns::pyconfig::View &_pyco)
 The service provided by the component takes the component and a pyconfig::View for initialization.

Private Types

typedef wns::service::nl::Address Address
typedef
wns::container::Registry
< wns::service::nl::protocolNumber,
wns::service::nl::DataHandler * > 
DataHandlerContainer
 The DataHandlerContainer type.

Private Attributes

DataHandlerContainer handlerRegistry
 The DataHandler registry for upper layers.
IPHeaderipHeaderFU
wns::ldk::CommandReaderInterfaceipHeaderReader
wns::logger::Logger log
 The logger for this component.
wns::pyconfig::View pyco
 Configuration for this component.
Address sourceAddress
 The component's IP address. It's needed for creating new packets.


Detailed Description

Configuration Class:
ip.Component.UpperConvergence

Definition at line 54 of file UpperConvergence.hpp.


Member Typedef Documentation

Definition at line 64 of file UpperConvergence.hpp.

Definition at line 135 of file UpperConvergence.hpp.


Constructor & Destructor Documentation

ip::UpperConvergence::UpperConvergence ( wns::ldk::fun::FUN fun,
const wns::pyconfig::View _pyco 
)

Parameters:
[in] _component The corresponding component
[in] _pyco Configuration for this component.


Member Function Documentation

virtual const wns::service::nl::Address& ip::UpperConvergence::getAddress (  )  const [virtual]

virtual void ip::UpperConvergence::onFUNCreated (  )  [virtual]

Often FunctionalUnits require the collaboration with other FunctionalUnits to accomplish their task. For the collaboration between FunctionalUnits we coined the term "friendship".

The onFUNCreated method is a hook being called after the complete FUN has been set up. FunctionalUnits requiring the collaboration with other FunctionalUnits should resolve these dependencies by implementing this hook accordingly.

Finding friends is usually done calling wns::ldk::fun::FUN::findFriend.

When building reconfigurable FUNs, this method may get called multiple times (e.g., after each FUN reconfiguration). Keep that in mind when allocating resources in your onFUNCreated implementation.

Reimplemented from wns::ldk::FunctionalUnit.

virtual void ip::UpperConvergence::processIncoming ( const wns::ldk::CompoundPtr compound  )  [virtual]

Reimplemented from wns::ldk::Forwarding< USER >.

virtual void ip::UpperConvergence::registerHandler ( wns::service::nl::protocolNumber  _protocol,
wns::service::nl::DataHandler dh 
) [virtual]

virtual void ip::UpperConvergence::sendData ( const wns::service::nl::Address _source,
const wns::service::nl::Address _peer,
const wns::osi::PDUPtr _sdu,
wns::service::nl::protocolNumber  _protocol,
wns::service::dll::FlowID  _dllFlowID = 0 
) [virtual]

Parameters:
[in] _peer Destination component where data is to be delivered.
[in] _sdu Protocal Data Unit that is to be transported.
[in] _protocol Upper layers must indicate their protocol number when sending data.

Implements wns::service::nl::Service.

void ip::UpperConvergence::setSourceAddress ( wns::service::nl::Address  src  ) 


Member Data Documentation

Definition at line 140 of file UpperConvergence.hpp.

Definition at line 144 of file UpperConvergence.hpp.

Definition at line 142 of file UpperConvergence.hpp.

Definition at line 124 of file UpperConvergence.hpp.

Definition at line 119 of file UpperConvergence.hpp.

Definition at line 130 of file UpperConvergence.hpp.


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

Generated on Sat May 26 03:32:31 2012 for openWNS by  doxygen 1.5.5