User Manual, Developers Guide and API Documentation

glue::Routing Class Reference

Determines target address for Compounds to be sent from first Compound received. More...

#include <Routing.hpp>

Inheritance diagram for glue::Routing:

Inheritance graph
[legend]
Collaboration diagram for glue::Routing:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 Routing (wns::ldk::fun::FUN *fun, const wns::pyconfig::View &_config)
virtual ~Routing ()

Private Member Functions

virtual bool doIsAccepting (const wns::ldk::CompoundPtr &compound) const
virtual void doOnData (const wns::ldk::CompoundPtr &compound)
virtual void doSendData (const wns::ldk::CompoundPtr &compound)
virtual void doWakeup ()
virtual void onFUNCreated ()
 Resolve inter-FU dependencies.

Private Attributes

bool allowRouteChange
wns::pyconfig::View config
struct glue::Routing::Friends friends
wns::logger::Logger logger
wns::ldk::CommandPoolroutingCommandPool

Classes

struct  Friends


Detailed Description

This FU will take the first source address it sees from an incoming Compound and set this address as targetAddress. Every Compound that has no target address set will be tagged by this FU with the targetAddress.

Note:
This FU is rather a hack. We (msg, swen) are currently working on a better solution ...

Definition at line 55 of file Routing.hpp.


Constructor & Destructor Documentation

glue::Routing::Routing ( wns::ldk::fun::FUN fun,
const wns::pyconfig::View _config 
)

virtual glue::Routing::~Routing (  )  [virtual]


Member Function Documentation

virtual bool glue::Routing::doIsAccepting ( const wns::ldk::CompoundPtr compound  )  const [private, virtual]

virtual void glue::Routing::doOnData ( const wns::ldk::CompoundPtr compound  )  [private, virtual]

virtual void glue::Routing::doSendData ( const wns::ldk::CompoundPtr compound  )  [private, virtual]

virtual void glue::Routing::doWakeup (  )  [inline, private, virtual]

Definition at line 83 of file Routing.hpp.

virtual void glue::Routing::onFUNCreated (  )  [private, 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.


Member Data Documentation

Definition at line 88 of file Routing.hpp.

Definition at line 97 of file Routing.hpp.

Definition at line 98 of file Routing.hpp.

Definition at line 90 of file Routing.hpp.


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

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