User Manual, Developers Guide and API Documentation

wimac::UpperConvergence Class Reference

UpperConvergence base class, connecting the DLL-FUN with a Network Layer. More...

#include <UpperConvergence.hpp>

Inheritance diagram for wimac::UpperConvergence:

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

Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual wns::ldk::CommandPoolcreateReply (const wns::ldk::CommandPool *original) const
 Default createReply implementation.
bool doIsAccepting (const wns::ldk::CompoundPtr &compound) const
void doOnData (const wns::ldk::CompoundPtr &compound)
void doSendData (const wns::ldk::CompoundPtr &compound)
void doWakeup ()
virtual void establishFlow (wns::service::tl::FlowID flowID, wns::service::qos::QoSClass qosClass)
 Establish a new flow.
virtual
wns::service::dll::UnicastAddress 
getMACAddress () const
virtual std::string getSubnetIdentifier ()
virtual void onFUNCreated ()
 Resolve inter-FU dependencies.
virtual void registerFlowHandler (wns::service::dll::FlowHandler *)
virtual void registerHandler (wns::service::dll::protocolNumber protocol, wns::service::dll::Handler *_dh)
virtual void registerIRuleControl (wns::service::dll::IRuleControl *)
virtual void releaseFlow (wns::service::tl::FlowID flowID)
 Release an existing flow.
virtual void sendData (const wns::service::dll::UnicastAddress &_peer, const wns::SmartPtr< wns::osi::PDU > &_data, wns::service::dll::protocolNumber protocol, wns::service::dll::FlowID _dllFlowID=0)
virtual void setMACAddress (const wns::service::dll::UnicastAddress &sourceMACAddress)
 UpperConvergence (wns::ldk::fun::FUN *fun, const wns::pyconfig::View &config)

Protected Attributes

wns::service::dll::HandlerdataHandler_
std::map< long int,
ConnectionIdentifier::QoSCategory
flowID2QosClass
wimac::RANGrang_
wns::service::dll::UnicastAddress sourceMACAddress_
wns::service::dll::FlowHandlertlFlowHandler

Static Protected Attributes

static long int dllFlowID


Detailed Description

Each Component has an UpperConvergence FunctionalUnit that accepts compounds from below and IDUs from above respectively and forwards them to the corresponding TCPIP instance and the lower FunctionalUnit respectively.

Definition at line 86 of file UpperConvergence.hpp.


Constructor & Destructor Documentation

wimac::UpperConvergence::UpperConvergence ( wns::ldk::fun::FUN fun,
const wns::pyconfig::View config 
)


Member Function Documentation

virtual wns::ldk::CommandPool* wimac::UpperConvergence::createReply ( const wns::ldk::CommandPool original  )  const [virtual]

The default behaviour is to delegate creation of replies to upper functional units.

Reimplemented from wns::ldk::CommandTypeSpecifier< T >.

bool wimac::UpperConvergence::doIsAccepting ( const wns::ldk::CompoundPtr compound  )  const

void wimac::UpperConvergence::doOnData ( const wns::ldk::CompoundPtr compound  ) 

void wimac::UpperConvergence::doSendData ( const wns::ldk::CompoundPtr compound  ) 

void wimac::UpperConvergence::doWakeup (  ) 

virtual void wimac::UpperConvergence::establishFlow ( wns::service::tl::FlowID  flowID,
wns::service::qos::QoSClass  qosClass 
) [virtual]

Parameters:
[in] _sourcePort Own local port.
[in] _destPort On which port to connect peer.
[in] _peer Own IP address.
[in] _peer On which address to contact peer.

Implements wns::service::dll::FlowEstablishmentAndRelease.

virtual wns::service::dll::UnicastAddress wimac::UpperConvergence::getMACAddress (  )  const [virtual]

virtual std::string wimac::UpperConvergence::getSubnetIdentifier (  )  [inline, virtual]

Definition at line 109 of file UpperConvergence.hpp.

virtual void wimac::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 wimac::UpperConvergence::registerFlowHandler ( wns::service::dll::FlowHandler  )  [virtual]

virtual void wimac::UpperConvergence::registerHandler ( wns::service::dll::protocolNumber  protocol,
wns::service::dll::Handler _dh 
) [virtual]

virtual void wimac::UpperConvergence::registerIRuleControl ( wns::service::dll::IRuleControl  )  [inline, virtual]

Implements wns::service::dll::Notification.

Definition at line 141 of file UpperConvergence.hpp.

virtual void wimac::UpperConvergence::releaseFlow ( wns::service::tl::FlowID  flowID  )  [inline, virtual]

Parameters:
[in] _sourcePort Own local port.
[in] _destPort On which port to connect peer.
[in] _peer Own IP address.
[in] _peer On which address to contact peer.

Implements wns::service::dll::FlowEstablishmentAndRelease.

Definition at line 147 of file UpperConvergence.hpp.

virtual void wimac::UpperConvergence::sendData ( const wns::service::dll::UnicastAddress _peer,
const wns::SmartPtr< wns::osi::PDU > &  _data,
wns::service::dll::protocolNumber  protocol,
wns::service::dll::FlowID  _dllFlowID = 0 
) [virtual]

virtual void wimac::UpperConvergence::setMACAddress ( const wns::service::dll::UnicastAddress sourceMACAddress  )  [virtual]


Member Data Documentation

Definition at line 152 of file UpperConvergence.hpp.

long int wimac::UpperConvergence::dllFlowID [static, protected]

Definition at line 157 of file UpperConvergence.hpp.

Definition at line 155 of file UpperConvergence.hpp.

Definition at line 159 of file UpperConvergence.hpp.

Definition at line 147 of file UpperConvergence.hpp.

Definition at line 153 of file UpperConvergence.hpp.


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

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