In the TicToc tutorial it's stated, talking about statistics generation through signals (and not finish()), that: "As we do not have to save or store anything manually, the finish() method can be deleted. We no longer need it." 5.3 - Statistic collection
I had the idea to apply what I'm reading in the tutorial to the Veins example and guess what I did? I did cancel the finish() method in the TraCIDemo11p.cc source. I got the exit code 127. Could you explain why is this happening?
I'm writing this to understand the cause and for others who might save some time reading this. Also, couldn't find the same question or a similar one suggesting a solution close to this.
I checked the txc16.cc file of the TicToc example of course and there is no finish() method. The main difference I see is that in TicToc we are handling a simple module while in Veins we are defining a more complex one. From the manual I see this pseudocode:
callFinish()
{
if (module is compound)
for (each submodule)
do callFinish() on submodule
call to user-defined finish() function
}
So I imagine that if nobody on top is calling finish() on submodules then, nobody is calling it at all -> runtime error. Am I getting this right? Any explanation on the whole rationale is appreciated.