![]() |
User Manual, Developers Guide and API Documentation |
![]() |
#include <convergence/PreambleGenerator.hpp>


Public Member Functions | |
| PreambleGenerator (wns::ldk::fun::FUN *fun, const wns::pyconfig::View &config) | |
| virtual | ~PreambleGenerator () |
Private Member Functions | |
| void | calculateSizes (const wns::ldk::CommandPool *commandPool, Bit &commandPoolSize, Bit &dataSize) const |
| SDU and PCI size calculation for preambles -> no size! | |
| wns::ldk::CompoundPtr | getSomethingToSend () |
| Return the PDU that is ready to be sent. | |
| bool | hasCapacity () const |
| Return true, if the FunctionalUnit is still accepting compounds. | |
| const wns::ldk::CompoundPtr | hasSomethingToSend () const |
| Return a PDU that is ready to be sent or NULL, if none available. | |
| void | onFUNCreated () |
| Resolve inter-FU dependencies. | |
| void | processIncoming (const wns::ldk::CompoundPtr &compound) |
| Delayed Interface. | |
| void | processOutgoing (const wns::ldk::CompoundPtr &compound) |
| Process compounds on downlink. | |
Private Attributes | |
| struct wimemac::convergence::PreambleGenerator::Friends | friends |
| wimemac::CompoundType | lastReceivedCompoundType |
| wns::logger::Logger | logger |
| const std::string | managerName |
| wns::ldk::CompoundPtr | pendingCompound |
| wns::ldk::CompoundPtr | pendingPreamble |
| const std::string | phyUserName |
Classes | |
| struct | Friends |
Definition at line 74 of file PreambleGenerator.hpp.
| wimemac::convergence::PreambleGenerator::PreambleGenerator | ( | wns::ldk::fun::FUN * | fun, | |
| const wns::pyconfig::View & | config | |||
| ) |
| virtual wimemac::convergence::PreambleGenerator::~PreambleGenerator | ( | ) | [virtual] |
| void wimemac::convergence::PreambleGenerator::calculateSizes | ( | const wns::ldk::CommandPool * | commandPool, | |
| Bit & | commandPoolSize, | |||
| Bit & | dataSize | |||
| ) | const [private, virtual] |
Implements wns::ldk::CommandTypeSpecifierInterface.
| wns::ldk::CompoundPtr wimemac::convergence::PreambleGenerator::getSomethingToSend | ( | ) | [private, virtual] |
This method must never return NULL. This method will only be called after a call to hasSomethingToSend returned a non-null value. The FunctionalUnit must return the same PDU as returned by hasSomethingToSend.
Implements wns::ldk::DelayedInterface.
| bool wimemac::convergence::PreambleGenerator::hasCapacity | ( | ) | const [private, virtual] |
While hasCapacity returns false, processIncoming will never be called.
Implements wns::ldk::DelayedInterface.
| const wns::ldk::CompoundPtr wimemac::convergence::PreambleGenerator::hasSomethingToSend | ( | ) | const [private, virtual] |
Implements wns::ldk::DelayedInterface.
| void wimemac::convergence::PreambleGenerator::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.
| void wimemac::convergence::PreambleGenerator::processIncoming | ( | const wns::ldk::CompoundPtr & | compound | ) | [private, virtual] |
Implements wns::ldk::DelayedInterface.
| void wimemac::convergence::PreambleGenerator::processOutgoing | ( | const wns::ldk::CompoundPtr & | ) | [private, virtual] |
Override this method to handle outgoing compounds.
Implements wns::ldk::DelayedInterface.
struct wimemac::convergence::PreambleGenerator::Friends wimemac::convergence::PreambleGenerator::friends [private] |
Definition at line 101 of file PreambleGenerator.hpp.
Definition at line 100 of file PreambleGenerator.hpp.
const std::string wimemac::convergence::PreambleGenerator::managerName [private] |
Definition at line 98 of file PreambleGenerator.hpp.
Definition at line 103 of file PreambleGenerator.hpp.
Definition at line 104 of file PreambleGenerator.hpp.
const std::string wimemac::convergence::PreambleGenerator::phyUserName [private] |
Definition at line 97 of file PreambleGenerator.hpp.
1.5.5