in my simulation there is a mobile node composed by the following components from the inet framework:
Now I am working on the
UdpApp which is
UDPVideoStreamCli.cc which is also given by inet framework as one of example udp application.
Now as you can see from the image I had to access to the lisp module (which is an instance of
LispRouting.cc) because I have to read some values or call some public methods of that class...how can I do that? All I know is that I have to start from
but then I don't know how to go on...can you help?omnet++ inet share | improve this question edited Jul 15 '15 at 10:55 user4786271 924 3 14 asked Jul 15 '15 at 9:02 Lory Lory 1,291 2 20 46 add a comment |
1 Answer 1active oldest votes up vote 4 down vote accepted
will do the trick. Be sure to check if the returned pointer is not null.
Generally this is bad design as it hard-codes the name and the relative position of the LispRouting module. Any change in naming/architecture will cause crashes.
A proper design would be to create a parameter that specifies the name/path of the lisp submodule (with default value) and then use
#include "inet/common/ModuleAccess.h" ... LispRouting *lr = getModuleFromPar<LispRouting>(par("lispModule"), this);
and then add a parameter to the module's NED file:
string lispModule = default("^.lisp");
meaning the default place where you can find the lisp module is: go one level up and then find the submodule named "lisp". This is a much better pattern, because the user can later reconfigure the name/placement of the lisp module without breaking the code.share | improve this answer answered Jul 15 '15 at 9:53 Rudi 1,953 1 8 13 add a comment |
Your Answerdraft saved draft discarded
Sign up or log in
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guestName Email
Post as a guestName Email discard
Not the answer you're looking for? Browse other questions tagged omnet++ inet or ask your own question.