instr: merge the TI output in the converted code (WIP)
The TI output is a pimple added at some point to trick the TRACING
infrastructure into generating a Time Independent trace of the
executed MPI application, so that this trace can later be replayed
with smpi_replay.
This was done in pure C, with a large amount of pointers to functions.
This cannot be cleanly ported to C++ without a large amount of
factories so that we can subclass each class of event and pick the
right one at runtime.
Instead, this was converted in a ugly way, with a global defining the
type of output that we want today, and each print() function checking
that global to adapt its code.
The bug that I'm chasing is still there, as the replay does not look
for the file that was actually generated, but it's getting better
already.
We will soon rewrite the whole tracing infrastructure with many signals
that are fired at the places that we want to observe. Then, both the
TRACING and the TI modules will register functions in these signals to
be informed of what's going on in the simulation. But they will not
share any code anymore.
Soon...