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


Public Member Functions | |
| LongTrainingFieldGenerator (wns::ldk::fun::FUN *fun, const wns::pyconfig::View &config) | |
| virtual | ~LongTrainingFieldGenerator () |
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 wifimac::draftn::LongTrainingFieldGenerator::Friends | friends |
| wns::logger::Logger | logger |
| const wns::simulator::Time | ltfDuration |
| const std::string | managerName |
| int | numLTFsToSend |
| wns::ldk::CompoundPtr | pendingCompound |
| const std::string | phyUserName |
| wifimac::management::ProtocolCalculator * | protocolCalculator |
| const std::string | protocolCalculatorName |
| const bool | reducePreambleByDuration |
| wifimac::draftn::SINRwithMIMOInformationBase * | sinrMIB |
| const std::string | sinrMIBServiceName |
| const std::string | txDurationSetterName |
Classes | |
| struct | Friends |
Definition at line 63 of file LongTrainingFieldGenerator.hpp.
| LongTrainingFieldGenerator::LongTrainingFieldGenerator | ( | wns::ldk::fun::FUN * | fun, | |
| const wns::pyconfig::View & | config | |||
| ) |
Definition at line 41 of file LongTrainingFieldGenerator.cpp.
| LongTrainingFieldGenerator::~LongTrainingFieldGenerator | ( | ) | [virtual] |
Definition at line 61 of file LongTrainingFieldGenerator.cpp.
| void LongTrainingFieldGenerator::calculateSizes | ( | const wns::ldk::CommandPool * | commandPool, | |
| Bit & | commandPoolSize, | |||
| Bit & | dataSize | |||
| ) | const [private, virtual] |
Implements wns::ldk::CommandTypeSpecifierInterface.
Definition at line 198 of file LongTrainingFieldGenerator.cpp.
| wns::ldk::CompoundPtr LongTrainingFieldGenerator::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.
Definition at line 160 of file LongTrainingFieldGenerator.cpp.
| bool LongTrainingFieldGenerator::hasCapacity | ( | ) | const [private, virtual] |
While hasCapacity returns false, processIncoming will never be called.
Implements wns::ldk::DelayedInterface.
Definition at line 192 of file LongTrainingFieldGenerator.cpp.
| const wns::ldk::CompoundPtr LongTrainingFieldGenerator::hasSomethingToSend | ( | ) | const [private, virtual] |
Implements wns::ldk::DelayedInterface.
Definition at line 154 of file LongTrainingFieldGenerator.cpp.
| void LongTrainingFieldGenerator::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.
Definition at line 67 of file LongTrainingFieldGenerator.cpp.
| void LongTrainingFieldGenerator::processIncoming | ( | const wns::ldk::CompoundPtr & | compound | ) | [private, virtual] |
Implements wns::ldk::DelayedInterface.
Definition at line 80 of file LongTrainingFieldGenerator.cpp.
| void LongTrainingFieldGenerator::processOutgoing | ( | const wns::ldk::CompoundPtr & | ) | [private, virtual] |
Override this method to handle outgoing compounds.
Implements wns::ldk::DelayedInterface.
Definition at line 115 of file LongTrainingFieldGenerator.cpp.
struct wifimac::draftn::LongTrainingFieldGenerator::Friends wifimac::draftn::LongTrainingFieldGenerator::friends [private] |
Definition at line 99 of file LongTrainingFieldGenerator.hpp.
Definition at line 94 of file LongTrainingFieldGenerator.hpp.
const std::string wifimac::draftn::LongTrainingFieldGenerator::managerName [private] |
Definition at line 90 of file LongTrainingFieldGenerator.hpp.
Definition at line 97 of file LongTrainingFieldGenerator.hpp.
Definition at line 101 of file LongTrainingFieldGenerator.hpp.
const std::string wifimac::draftn::LongTrainingFieldGenerator::phyUserName [private] |
Definition at line 88 of file LongTrainingFieldGenerator.hpp.
wifimac::management::ProtocolCalculator* wifimac::draftn::LongTrainingFieldGenerator::protocolCalculator [private] |
Definition at line 102 of file LongTrainingFieldGenerator.hpp.
const std::string wifimac::draftn::LongTrainingFieldGenerator::protocolCalculatorName [private] |
Definition at line 89 of file LongTrainingFieldGenerator.hpp.
Definition at line 95 of file LongTrainingFieldGenerator.hpp.
wifimac::draftn::SINRwithMIMOInformationBase* wifimac::draftn::LongTrainingFieldGenerator::sinrMIB [private] |
Definition at line 111 of file LongTrainingFieldGenerator.hpp.
const std::string wifimac::draftn::LongTrainingFieldGenerator::sinrMIBServiceName [private] |
Definition at line 92 of file LongTrainingFieldGenerator.hpp.
const std::string wifimac::draftn::LongTrainingFieldGenerator::txDurationSetterName [private] |
Definition at line 91 of file LongTrainingFieldGenerator.hpp.
1.5.5