Hi list,
I am working with Laurent's mw-node patch
(http://www.q2s.ntnu.no/~paquerea/ns.html) and am trying to get my own
routing protocol to work.
Since my routing protocol utilizes several wirelss interfaces it should
be implemented as a WirelessRoutingModule akording to Laurent's
documentation. Unfortunately the constructor for this class seems to be
never called. I assume that is due to the oTcl/C++ duality, which I seem
to be unable to debug.
The code under consideration is in wireless/wireless-rtmodule.cc, lines
84pp:
//! Constructor
/*! Create a new WirelessRoutingModule with an empty routing information
base.*/
WirelessRoutingModule::WirelessRoutingModule()
: RoutingModule(),lastUid_(-1),lastRibEntry_(0)
{
rib_ = new Rib();
init();
}
This C++ class is used as a parent later on
(wireless/wirelss-rtmodule.h, lines 173pp):
class BaseWirelessRoutingModule : public WirelessRoutingModule {
...
}
and BaseWirelssRoutingModule is used in the example provided with the
patch. Unfortunately BaseWirelessRoutingModule does not do anything in
init() (wireless/wireless-rtmodule.cc, lines 488pp)
void
BaseWirelessRoutingModule::init()
{
// nothing to do.
}
Thus it seemes not to matter, that at least using the provided tcl
script it seems never to be called.
Am I doing somthing wrong in gdb?
*How is it possible that the constructor of a used class is never called?*
Has anybody any experience in coding a routing protocol for the MW-node
patch or could point me to a source to look at?
Thanks in advance,
Claus
--
Claus Christmann
Graduate Research Assistant
Georgia Institute of Technology
270 Ferst Drive
Atlanta, GA 30332-0150
http://uav.ae.gatech.edu