INET Framework for OMNeT++/OMNEST
|
#include <ModuleAccess.h>
Public Member Functions | |
ModuleAccess (const char *n) | |
virtual | ~ModuleAccess () |
virtual T * | get () |
virtual T * | getIfExists () |
Private Attributes | |
const char * | name |
T * | p |
Finds and returns the pointer to a module of type T and name N. Uses findModuleWherever(). See usage e.g. at RoutingTableAccess.
ModuleAccess< T >::ModuleAccess | ( | const char * | n | ) | [inline] |
virtual ModuleAccess< T >::~ModuleAccess | ( | ) | [inline, virtual] |
{}
virtual T* ModuleAccess< T >::get | ( | ) | [inline, virtual] |
Referenced by OSPF::RoutingTableEntry::AddNextHop(), IP::fragmentAndSend(), IP::handlePacketFromNetwork(), WirelessMacBase::initialize(), TED::initialize(), SimpleClassifier::initialize(), RSVP::initialize(), RoutingTable6::initialize(), RoutingTable::initialize(), PPP::initialize(), OSPFRouting::initialize(), NAMTraceWriter::initialize(), MPLS::initialize(), LinkStateRouting::initialize(), LIBTable::initialize(), LDP::initialize(), IPv6NeighbourDiscovery::initialize(), IPv6::initialize(), IP::initialize(), InterfaceTable::initialize(), Ieee80211MgmtSTA::initialize(), Ieee80211MgmtAP::initialize(), Ieee80211AgentSTA::initialize(), BasicModule::initialize(), ARP::initialize(), SCTPAssociation::pmStartPathManagement(), SCTPAssociation::processInitArrived(), UDP::processUndeliverablePacket(), OSPF::Router::RebuildRoutingTable(), PPP::registerInterface(), Mac80211::registerInterface(), ExtInterface::registerInterface(), CSMAMacLayer::registerInterface(), IP::routePacket(), SCTPPathVariables::SCTPPathVariables(), IP::sendDatagramToOutput(), SCTPAssociation::sendInit(), OSPF::Interface::SetIfIndex(), and OSPF::Router::UpdateExternalRoute().
virtual T* ModuleAccess< T >::getIfExists | ( | ) | [inline, virtual] |
Referenced by EtherMACBase::initializeNotificationBoard(), Ieee80211Mac::registerInterface(), and EtherMACBase::registerInterface().
{ if (!p) { cModule *m = findModuleWhereverInNode(name, simulation.getContextModule()); p = dynamic_cast<T*>(m); } return p; }
const char* ModuleAccess< T >::name [private] |
T* ModuleAccess< T >::p [private] |