ModuleAccess< T > Class Template Reference

#include <ModuleAccess.h>

List of all members.


Detailed Description

template<typename T>
class ModuleAccess< T >

Finds and returns the pointer to a module of type T and name N. Uses findModuleWherever(). See usage e.g. at RoutingTableAccess.


Public Member Functions

 ModuleAccess (const char *n)
T * get ()
T * getIfExists ()

Private Attributes

const char * name
T * p


Constructor & Destructor Documentation

template<typename T>
ModuleAccess< T >::ModuleAccess ( const char *  n  )  [inline]

00055 {name = n; p=NULL;}


Member Function Documentation

template<typename T>
T* ModuleAccess< T >::get (  )  [inline]

00057     {
00058         if (!p)
00059         {
00060             cModule *m = findModuleSomewhereUp(name, simulation.contextModule());
00061             if (!m) opp_error("Module (%s)%s not found",opp_typename(typeid(T)),name);
00062             p = check_and_cast<T*>(m);
00063         }
00064         return p;
00065     }

template<typename T>
T* ModuleAccess< T >::getIfExists (  )  [inline]

00068     {
00069         if (!p)
00070         {
00071             cModule *m = findModuleSomewhereUp(name, simulation.contextModule());
00072             p = dynamic_cast<T*>(m);
00073         }
00074         return p;
00075     }


Member Data Documentation

template<typename T>
const char* ModuleAccess< T >::name [private]

template<typename T>
T* ModuleAccess< T >::p [private]


The documentation for this class was generated from the following file:
Generated on Wed Apr 4 13:20:22 2007 for INET Framework for OMNeT++/OMNEST by  doxygen 1.4.7